@unbrained/pm-cli 2026.8.9 → 2026.8.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +2 -2
- package/CHANGELOG.md +142 -80
- package/dist/cli/commander-usage.js +94 -17
- package/dist/cli/error-guidance.d.ts +10 -0
- package/dist/cli/error-guidance.js +76 -25
- package/dist/cli/help-json-payload.js +51 -16
- package/dist/cli/main.js +11 -6
- package/dist/cli/register-assurance.d.ts +8 -0
- package/dist/cli/register-assurance.js +52 -0
- package/dist/cli/register-files-lookup.js +14 -3
- package/dist/cli/register-mutation.js +30 -9
- package/dist/cli/register-operations.js +16 -11
- package/dist/cli-bundle/bundle-manifest.json +163 -163
- package/dist/cli-bundle/chunks/{chunk-RJC7TPF4.js → chunk-2OOU2AFH.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-2RA2YTHJ.js +33 -0
- package/dist/cli-bundle/chunks/chunk-A2SJGHSI.js +3 -0
- package/dist/cli-bundle/chunks/chunk-DSKYD4LG.js +13 -0
- package/dist/cli-bundle/chunks/chunk-HC3GM6YY.js +194 -0
- package/dist/cli-bundle/chunks/chunk-IUNRVDAI.js +2 -0
- package/dist/cli-bundle/chunks/chunk-W7CPZGSB.js +2 -0
- package/dist/cli-bundle/chunks/{chunk-YC3UF2IO.js → chunk-WMEZHCFI.js} +66 -60
- package/dist/cli-bundle/chunks/{chunk-GMX5YOI3.js → chunk-ZU34C3LH.js} +48 -48
- package/dist/cli-bundle/chunks/chunk-ZXOC6HG5.js +5 -0
- package/dist/cli-bundle/chunks/{register-list-query-BUE7PTCU.js → register-list-query-HAUXVUPY.js} +8 -8
- package/dist/cli-bundle/chunks/register-mutation-7Y5U7ABT.js +20 -0
- package/dist/cli-bundle/chunks/register-operations-EQX3DLAZ.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-UQDTNTLJ.js → register-setup-NOCOOWQY.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-KNEHLPBF.js → chunk-23FTGO3W.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-6DO4YQWZ.js → chunk-2DL3MRTD.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-3AYKXMYX.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-4AHEC74N.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-MRWVJ3ZG.js → chunk-4H5IA6AV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-4SV3ZKG3.js +16 -0
- package/dist/cli-bundle/focused-chunks/chunk-55BIB6DV.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-6JW6Z2P5.js +8 -0
- package/dist/cli-bundle/focused-chunks/chunk-BKPIY34S.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-D4PIWE6D.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-DPO7TEFX.js +31 -0
- package/dist/cli-bundle/focused-chunks/{chunk-3WVHTUAW.js → chunk-E3KCL7AY.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-ERAAFLPS.js +153 -0
- package/dist/cli-bundle/focused-chunks/chunk-F6E4JZKG.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-FPSYO5ZG.js +18 -0
- package/dist/cli-bundle/focused-chunks/{chunk-73FIJONU.js → chunk-J5EKAIVD.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-KDH5OX3D.js +4 -0
- package/dist/cli-bundle/focused-chunks/chunk-OJ3LVVIS.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-TL5M2PAY.js +3 -0
- package/dist/cli-bundle/focused-chunks/chunk-UDAZWT25.js +6 -0
- package/dist/cli-bundle/focused-chunks/chunk-VABB4L5Y.js +17 -0
- package/dist/cli-bundle/main.js +13 -13
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +1 -1
- package/dist/cli-bundle/sdk-core.js +41 -39
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +1 -1
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +2 -2
- package/dist/core/diagnostics/remediation.js +9 -9
- package/dist/core/fs/fs-utils.d.ts +10 -0
- package/dist/core/fs/fs-utils.js +16 -4
- package/dist/core/item/item-format.js +3 -32
- package/dist/core/schema/fields-file.d.ts +1 -2
- package/dist/core/schema/fields-file.js +4 -11
- package/dist/core/schema/runtime-schema.js +3 -10
- package/dist/core/schema/status-defs-file.d.ts +1 -2
- package/dist/core/schema/status-defs-file.js +4 -32
- package/dist/core/schema/status-token.d.ts +2 -0
- package/dist/core/schema/status-token.js +32 -0
- package/dist/core/schema/type-workflows.d.ts +1 -2
- package/dist/core/schema/type-workflows.js +4 -11
- package/dist/core/session/session-state.d.ts +47 -0
- package/dist/core/session/session-state.js +207 -6
- package/dist/core/shared/author.d.ts +8 -2
- package/dist/core/shared/author.js +85 -52
- package/dist/core/shared/errors.d.ts +12 -0
- package/dist/core/shared/errors.js +2 -2
- package/dist/core/shared/text-normalization.d.ts +1 -1
- package/dist/core/shared/text-normalization.js +2 -2
- package/dist/sdk/agent/command-recovery.d.ts +4 -0
- package/dist/sdk/agent/command-recovery.js +52 -0
- package/dist/sdk/agent/command-suggestions.d.ts +4 -0
- package/dist/sdk/agent/command-suggestions.js +67 -0
- package/dist/sdk/agent/create-option-policy.d.ts +12 -0
- package/dist/sdk/agent/create-option-policy.js +32 -0
- package/dist/sdk/agent/item-addressing.d.ts +19 -0
- package/dist/sdk/agent/item-addressing.js +208 -0
- package/dist/sdk/agent/refusal-reachability.d.ts +40 -0
- package/dist/sdk/agent/refusal-reachability.js +72 -0
- package/dist/sdk/agent/subcommand-recovery.d.ts +40 -0
- package/dist/sdk/agent/subcommand-recovery.js +84 -0
- package/dist/sdk/cli-bootstrap.d.ts +9 -1
- package/dist/sdk/cli-bootstrap.js +25 -10
- package/dist/sdk/cli-contracts/commander-mutation-options.js +16 -4
- package/dist/sdk/cli-contracts/completeness.js +13 -3
- package/dist/sdk/cli-contracts/enum-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts/enum-contracts.js +3 -2
- package/dist/sdk/cli-contracts/flag-contracts.d.ts +2 -0
- package/dist/sdk/cli-contracts/flag-contracts.js +77 -21
- package/dist/sdk/cli-contracts/registration-helpers.js +10 -2
- package/dist/sdk/cli-contracts/runtime-contracts.js +6 -3
- package/dist/sdk/cli-contracts/schemas/assurance-definition.d.ts +513 -0
- package/dist/sdk/cli-contracts/schemas/assurance-definition.js +251 -0
- package/dist/sdk/cli-contracts/tool-option-contracts.d.ts +6 -0
- package/dist/sdk/cli-contracts/tool-option-contracts.js +4 -2
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +96 -4
- package/dist/sdk/cli-contracts/tool-schema.d.ts +2 -2
- package/dist/sdk/cli-contracts/tool-schema.js +49 -6
- package/dist/sdk/cli-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts.js +3 -3
- package/dist/sdk/completion.js +9 -3
- package/dist/sdk/config.js +9 -3
- package/dist/sdk/context/semantic-session-attribution.d.ts +32 -0
- package/dist/sdk/context/semantic-session-attribution.js +83 -0
- package/dist/sdk/context-intent-runtime.js +8 -5
- package/dist/sdk/context-signal-store.d.ts +34 -0
- package/dist/sdk/context-signal-store.js +24 -2
- package/dist/sdk/core-governance.d.ts +3 -1
- package/dist/sdk/core-governance.js +5 -3
- package/dist/sdk/core.d.ts +1 -1
- package/dist/sdk/core.js +2 -2
- package/dist/sdk/dependency-flag-validation.d.ts +15 -1
- package/dist/sdk/dependency-flag-validation.js +54 -2
- package/dist/sdk/error-code-catalog.d.ts +13 -0
- package/dist/sdk/error-code-catalog.js +35 -2
- package/dist/sdk/extension.js +18 -17
- package/dist/sdk/files.d.ts +11 -0
- package/dist/sdk/files.js +82 -24
- package/dist/sdk/generated-error-code-catalog.js +104 -13
- package/dist/sdk/governance/assurance-action-contracts.d.ts +7 -0
- package/dist/sdk/governance/assurance-action-contracts.js +5 -0
- package/dist/sdk/governance/assurance-action.d.ts +70 -0
- package/dist/sdk/governance/assurance-action.js +198 -0
- package/dist/sdk/governance/assurance-limits.d.ts +7 -0
- package/dist/sdk/governance/assurance-limits.js +11 -0
- package/dist/sdk/governance/assurance-runtime.d.ts +20 -0
- package/dist/sdk/governance/assurance-runtime.js +131 -0
- package/dist/sdk/governance/assurance.d.ts +432 -0
- package/dist/sdk/governance/assurance.js +689 -0
- package/dist/sdk/governance/health.js +14 -7
- package/dist/sdk/governance/provenance-health.d.ts +13 -0
- package/dist/sdk/governance/provenance-health.js +63 -17
- package/dist/sdk/governance/validate-item-reader.d.ts +13 -0
- package/dist/sdk/governance/validate-item-reader.js +18 -0
- package/dist/sdk/governance/validate.d.ts +2 -2
- package/dist/sdk/governance/validate.js +15 -6
- package/dist/sdk/graph/run.js +8 -3
- package/dist/sdk/index.d.ts +10 -1
- package/dist/sdk/index.js +12 -3
- package/dist/sdk/lifecycle/claim.js +18 -3
- package/dist/sdk/lifecycle/close.js +17 -14
- package/dist/sdk/lifecycle/create.d.ts +2 -0
- package/dist/sdk/lifecycle/create.js +62 -9
- package/dist/sdk/lifecycle/focus.js +13 -3
- package/dist/sdk/lifecycle/plan.js +8 -3
- package/dist/sdk/lifecycle/update-many.js +39 -27
- package/dist/sdk/lifecycle/update.d.ts +6 -1
- package/dist/sdk/lifecycle/update.js +47 -10
- package/dist/sdk/merge/index.d.ts +1 -1
- package/dist/sdk/merge/index.js +3 -3
- package/dist/sdk/merge/install.d.ts +4 -0
- package/dist/sdk/merge/install.js +28 -16
- package/dist/sdk/merge/receipts.d.ts +3 -0
- package/dist/sdk/merge/receipts.js +81 -17
- package/dist/sdk/output-projection.js +24 -4
- package/dist/sdk/provenance.d.ts +38 -0
- package/dist/sdk/provenance.js +64 -2
- package/dist/sdk/query/context.d.ts +2 -0
- package/dist/sdk/query/context.js +24 -10
- package/dist/sdk/query/light-metadata.d.ts +3 -0
- package/dist/sdk/query/light-metadata.js +19 -0
- package/dist/sdk/runtime-extended-actions.js +22 -5
- package/dist/sdk/runtime-primitives.d.ts +2 -0
- package/dist/sdk/runtime-primitives.js +4 -2
- package/dist/sdk/runtime.d.ts +8 -1
- package/dist/sdk/runtime.js +37 -28
- package/dist/sdk/schema-migration.js +7 -9
- package/dist/sdk/similarity-scoring.d.ts +1 -2
- package/dist/sdk/similarity-scoring.js +4 -16
- package/dist/sdk/telemetry.js +7 -4
- package/dist/sdk/traceability/runtime-files-lookup.d.ts +8 -0
- package/dist/sdk/traceability/runtime-files-lookup.js +33 -0
- package/dist/sdk/traceability/source-traceability.d.ts +102 -0
- package/dist/sdk/traceability/source-traceability.js +293 -0
- package/dist/sdk/workspace-snapshot.d.ts +4 -0
- package/dist/sdk/workspace-snapshot.js +24 -11
- package/dist/types.d.ts +8 -2
- package/dist/types.js +2 -2
- package/docs/AGENT_GUIDE.md +3 -1
- package/docs/ASSURANCE.md +132 -0
- package/docs/COMMANDS.md +8 -5
- package/docs/MERGE_SAFETY.md +7 -5
- package/docs/README.md +3 -5
- package/docs/READ_OUTPUT_CONTRACTS.md +2 -2
- package/docs/RELEASING.md +9 -5
- package/docs/SDK.md +44 -8
- package/docs/SDK_AGENT_SESSION_CONTEXT.md +43 -6
- package/docs/SDK_CONTEXT.md +97 -0
- package/docs/SDK_CONTEXT_INTEGRITY.md +18 -3
- package/docs/SDK_EVIDENCE_TRACEABILITY.md +39 -1
- package/docs/SDK_RUNTIME_BOUNDARIES.md +36 -1
- package/docs/TESTING.md +12 -9
- package/docs/agent-task-token-baseline.json +2 -2
- package/docs/generated/AGENT_COMMAND_SURFACE.md +1 -0
- package/marketplace.json +2 -2
- package/package.json +7 -6
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/extensions/templates/index.ts +9 -3
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/sdk/public-surface.json +1028 -48
- package/dist/cli-bundle/chunks/chunk-2DTCZXSD.js +0 -13
- package/dist/cli-bundle/chunks/chunk-5JO6R4BS.js +0 -3
- package/dist/cli-bundle/chunks/chunk-5KN4DZYV.js +0 -194
- package/dist/cli-bundle/chunks/chunk-EF43KODO.js +0 -2
- package/dist/cli-bundle/chunks/chunk-HUV2Z7IS.js +0 -28
- package/dist/cli-bundle/chunks/chunk-MHBVCUF2.js +0 -2
- package/dist/cli-bundle/chunks/chunk-PYO5GZU6.js +0 -5
- package/dist/cli-bundle/chunks/register-mutation-FC3XLVIK.js +0 -20
- package/dist/cli-bundle/chunks/register-operations-YH2WAOXU.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-2VVP5RAA.js +0 -153
- package/dist/cli-bundle/focused-chunks/chunk-3GSFUDAI.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-4H6MVCK3.js +0 -16
- package/dist/cli-bundle/focused-chunks/chunk-54TZJ4BM.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-5NK5TJ5D.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-C3GCHDSQ.js +0 -31
- package/dist/cli-bundle/focused-chunks/chunk-JGRSQZJT.js +0 -18
- package/dist/cli-bundle/focused-chunks/chunk-NL57J7BZ.js +0 -4
- package/dist/cli-bundle/focused-chunks/chunk-P6BBIQRG.js +0 -6
- package/dist/cli-bundle/focused-chunks/chunk-PZAGVQNN.js +0 -3
- package/dist/cli-bundle/focused-chunks/chunk-QDAO3XEK.js +0 -14
- package/dist/cli-bundle/focused-chunks/chunk-T4IGQCSY.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-U46GQJNY.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-VRXJSGIT.js +0 -8
- package/dist/cli-bundle/focused-chunks/chunk-XC2ZW3CJ.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-ZG54B4XG.js +0 -2
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
var ww=Object.defineProperty;var C$=(e,t)=>{for(var n in t)ww(e,n,{get:t[n],enumerable:!0})};import*as K from"node:fs/promises";import lo from"node:path";import Ew from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="5aef9dc6-948a-5c82-9e3c-2f85fef46beb")}catch{}})();var Tw=[10,25,50,100];async function co(e){await K.mkdir(e,{recursive:!0})}async function Y(e){try{return await K.access(e),!0}catch{return!1}}function lu(e){return $t(e,"ENOENT")||$t(e,"ENOTDIR")}async function W(e){try{return await K.readFile(e,"utf8")}catch(t){if(lu(t))return null;throw t}}async function P(e,t){let n=lo.dirname(e);await co(n);let r=lo.join(n,`.${lo.basename(e)}.${process.pid}.${Date.now()}.${Ew.randomBytes(4).toString("hex")}.tmp`);await K.writeFile(r,t,"utf8");try{await K.rename(r,e)}catch(o){if(process.platform==="win32"&&($t(o,"EPERM")||$t(o,"EBUSY"))){let i=o;for(let s of Tw){await new Promise(a=>setTimeout(a,s));try{await K.rename(r,e);return}catch(a){if(i=a,!$t(a,"EPERM")&&!$t(a,"EBUSY"))break}}try{await K.unlink(r)}catch{}throw i}if($t(o,"EXDEV")){try{await K.copyFile(r,e)}finally{try{await K.unlink(r)}catch{}}return}try{await K.unlink(r)}catch{}throw o}}async function ut(e,t){let n=lo.dirname(e);await co(n);let r=await K.open(e,"a");try{await r.writeFile(`${t}
|
|
2
|
+
`,"utf8")}finally{await r.close()}}async function er(e){try{await K.unlink(e)}catch(t){if(!lu(t))throw t}}function $t(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="50ad61f1-6719-541c-b4e0-4a88468725cf")}catch{}})();var qe=["commands","renderers","hooks","schema","importers","search","parser","preflight","services"],uo=2,Us=Object.freeze({migration:"schema",validation:"schema"}),D$=Object.freeze({version:uo,capabilities:[...qe],legacy_aliases:{...Us}}),fo=["off","warn","enforce"],po=["off","warn","enforce"],mo=["none","restricted","strict"],cu=["block","warn"],go=["commands.override","commands.handler","hooks.beforecommand","hooks.beforemutation","hooks.aftercommand","hooks.onwrite","hooks.onread","hooks.onindex","schema.flags","schema.itemfields","schema.itemtypes","schema.relationshipkinds","schema.migrations","schema.profiles","parser.override","preflight.override","services.override","renderers.override","importers.importer","importers.exporter","search.provider","search.vectorstore"],tr=["output_format","error_format","help_format","lock_acquire","lock_release","history_append","item_store_write","item_store_delete","context_relevance","command_result"];function _o(){return{mode:"off",trust_mode:"off",require_provenance:!1,trusted_extensions:[],default_sandbox_profile:"none",allowed_extensions:[],blocked_extensions:[],allowed_capabilities:[],blocked_capabilities:[],allowed_surfaces:[],blocked_surfaces:[],allowed_commands:[],blocked_commands:[],allowed_actions:[],blocked_actions:[],allowed_services:[],blocked_services:[],extension_overrides:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="36b908f0-ea19-5adc-8ccd-320ad3c3b1fe")}catch{}})();var qs=Object.freeze([{id:"draft",roles:["draft"]},{id:"open",roles:["active","default_open"]},{id:"in_progress",aliases:["in-progress"],roles:["active"]},{id:"blocked",roles:["blocked"]},{id:"closed",roles:["terminal","terminal_done","default_close"]},{id:"canceled",aliases:["cancelled"],roles:["terminal","terminal_canceled","default_cancel"]}]),Gs=Object.freeze({draft_status:"draft",open_status:"open",in_progress_status:"in_progress",blocked_status:"blocked",close_status:"closed",canceled_status:"canceled"}),yo=".agents/pm",ho="settings.json",vw="Closed at creation via pm create",Aw=["","epics","features","tasks","chores","issues","schema","history","search","extensions","locks"],Sw=["decisions","events","reminders","milestones","meetings","plans"],M$=[...Aw,...Sw],se={Epic:"epics",Feature:"features",Task:"tasks",Chore:"chores",Issue:"issues",Decision:"decisions",Event:"events",Reminder:"reminders",Milestone:"milestones",Meeting:"meetings",Plan:"plans"},kw=["goal","objective","value","impact","outcome","why_now","parent","reviewer","risk","confidence","sprint","release","blocked_by","blocked_reason","unblock_note","reporter","severity","environment","repro_steps","resolution","expected_result","actual_result"],Me=["id","title","description","type","pm_format_version","source_type","type_options","status","priority","tags","created_at","updated_at","deadline","reminders","events","closed_at","completed_at","assignee","claim_principal","source_owner","author","estimated_minutes","acceptance_criteria","design","external_ref","definition_of_ready","order",...kw,"affected_version","fixed_version","component","regression","customer_impact","dependencies","comments","notes","learnings","files","tests","test_runs","docs","close_reason","duplicate_of","plan_mode","plan_scope","plan_harness","plan_resume_context","plan_validation","plan_decisions","plan_discoveries","plan_steps"],Vs={minimal:{ownership_enforcement:"none",create_mode_default:"progressive",close_validation_default:"off",require_close_reason:!0,parent_reference:"strict_error",metadata_profile:"core",force_required_for_stale_lock:!1,duplicate_detection_mode:"off",duplicate_detection_threshold:.8,duplicate_detection_limit:3},default:{ownership_enforcement:"warn",create_mode_default:"progressive",close_validation_default:"warn",require_close_reason:!0,parent_reference:"strict_error",metadata_profile:"core",force_required_for_stale_lock:!0,duplicate_detection_mode:"strict",duplicate_detection_threshold:.8,duplicate_detection_limit:3},strict:{ownership_enforcement:"strict",create_mode_default:"strict",close_validation_default:"strict",require_close_reason:!0,parent_reference:"strict_error",metadata_profile:"strict",force_required_for_stale_lock:!0,duplicate_detection_mode:"strict",duplicate_detection_threshold:.8,duplicate_detection_limit:3}},xw=["no active blocker","ready for planned execution sequencing","work completed","work is closed"],zs={blocked_reason:["no active blocker because work is closed","work is closed"],resolution:["closed with implementation evidence","closed with verification evidence","work completed and recorded","work is closed"],actual_result:["closed and recorded","work completed","work completed and recorded"]};function du(e){return e?[...e]:void 0}var S={version:1,id_prefix:"pm-",ids:{token_length:4},author_default:"",agent_identity:{probes_enabled:!0,identity_vocabulary:{version:1,aliases:{}},harness_signals:[]},mutation_guard:{require_attributed_author:!1,secret_guard:"advise",stale_in_progress_hours:72},item_format:"toon",locks:{ttl_seconds:1800,wait_ms:3e3},checkpoints:{retention_days:14},output:{default_format:"toon"},history:{missing_stream:"auto_create",compact_policy:{enabled:!1,max_entries:500,trigger:"health_warn"}},validation:{sprint_release_format:"warn",parent_reference:"warn",metadata_profile:"core",metadata_required_fields:[],lifecycle_stale_blocker_reason_patterns:[...xw],lifecycle_closure_like_blocked_reason_patterns:[...zs.blocked_reason],lifecycle_closure_like_resolution_patterns:[...zs.resolution],lifecycle_closure_like_actual_result_patterns:[...zs.actual_result],estimate_defaults_by_type:{}},governance:{preset:"minimal",...Vs.minimal},workflow:{definition_of_done:[]},testing:{record_results_to_items:!1},telemetry:{enabled:!0,first_run_prompt_completed:!1,capture_level:"redacted",endpoint:"https://pm-cli.unbrained.dev/v1/events",installation_id:"",retention_days:365},agent_guidance:{prompt_completed:!1,declined:!1,declined_at:"",template_version:1,last_checked_files:[]},item_types:{definitions:[]},schema:{version:1,files:{types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"},statuses:qs.map(e=>({...e,aliases:du(e.aliases),roles:du(e.roles)})),fields:[],workflow:{...Gs},unknown_field_policy:"allow"},extensions:{enabled:[],disabled:[],policy:_o()},search:{score_threshold:0,hybrid_semantic_weight:.7,max_results:50,embedding_model:"",embedding_batch_size:32,embedding_timeout_ms:3e4,scanner_max_batch_retries:3,provider:"",mutation_refresh_policy:"semantic_configured",query_expansion:{enabled:!1,provider:""},rerank:{enabled:!1,model:"",top_k:20}},providers:{openai:{base_url:"",api_key:"",model:""},ollama:{base_url:"",model:""}},context:{default_depth:"brief",activity_limit:10,stale_threshold_days:7,sections:{hierarchy:!0,activity:!0,progress:!0,recently_created:!0,unparented:!0,blockers:!0,files:!0,workload:!0,staleness:!0,tests:!0}},vector_store:{adapter:"",collection_name:"pm_items",qdrant:{url:"",api_key:""},lancedb:{path:""}}},nr={metadata:{},body:""},_={SUCCESS:0,GENERIC_FAILURE:1,USAGE:2,NOT_FOUND:3,CONFLICT:4,DEPENDENCY_FAILED:5,NO_EFFECT:6,PARTIAL_EFFECT:7},Cw=Object.freeze({unknown_command:"usage",unknown_option:"usage",missing_required_option:"usage",missing_required_argument:"usage",invalid_command_usage:"usage",linked_test_value_not_quoted:"usage",invalid_argument_value:"validation",health_findings:"validation",validation_findings:"validation",close_through_update:"validation",no_update_fields:"validation",unsupported_update_option:"validation",tracker_not_initialized:"validation",item_not_found:"validation",ownership_conflict:"conflict",lock_conflict:"conflict",terminal_state_conflict:"conflict",dependency_failed:"runtime",init_gitignore_unwritable:"runtime",merge_git_config_unwritable:"runtime",command_failed:"runtime",unknown_error:"runtime"});function bo(e){let t=(e??"").trim().toLowerCase();if(t.length===0)return"unknown";let n=Cw[t];return typeof n=="string"?n:t.includes("conflict")||t.includes("locked")?"conflict":t.startsWith("unknown_")||t.startsWith("missing_required_")?"usage":t.startsWith("invalid_")||t.endsWith("_not_found")||t.includes("validation")?"validation":t.endsWith("_error")||t.endsWith("_failed")?"runtime":"unknown"}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="df6f6758-f972-5bf4-aaa8-b16dd9a247f3")}catch{}})();var b=class extends Error{exitCode;code;context;constructor(t,n,r={}){super(t),this.name="PmCliError",this.exitCode=n,this.context=r,this.code=r.code}};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c29511ab-8c01-57f2-b353-cbc72900cb90")}catch{}})();function L(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function Ow(e){return L(e)??void 0}function rr(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t-=1;return t===e.length?e:e.slice(0,t)}function pn(e){return Array.isArray(e)&&e.every(t=>typeof t=="number"&&Number.isFinite(t))}function $(e){if(e instanceof Error){let t=e.message.trim();return t.length>0?t:e.name}return String(e)}function wo(e){let t=typeof e=="number"?e:typeof e=="string"&&e.trim().length>0?Number(e.trim()):Number.NaN;return Number.isFinite(t)?t:null}function fu(e){let t=wo(e);return t===null||t<=0||!Number.isInteger(t)?null:t}function j$(e,t,n){let r=wo(e);return r===null||r<t||r>n?null:r}function Iw(e){return typeof e!="object"||e===null||Array.isArray(e)?null:e}function mn(e){return typeof e!="object"||e===null?null:e}function uu(e){return typeof e!="object"&&typeof e!="function"||e===null?null:e}function pu(e){let t=uu(e);if(!t)return null;if(typeof t.activate=="function")return t;let n=uu(t.default);return typeof n?.activate=="function"?n:null}function Rw(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e}:{}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b2649352-0afa-5972-8c48-b999f86d5522")}catch{}})();function gn(e){let t=Math.ceil(e.size/2);for(let n of e.keys()){if(t===0)return;e.delete(n),t-=1}}import Nw from"node:crypto";import{AsyncLocalStorage as Dw}from"node:async_hooks";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="cc84ae55-6dc4-57d4-b7de-c43ae1fb4603")}catch{}})();var Bs=new Dw,mu=1024;function Lw(e){let t=Date.parse(e.clock);if(!Number.isFinite(t))throw new Error(`Invalid reproducible workspace clock: ${e.clock}`);if(!Number.isSafeInteger(e.tickMs)||e.tickMs<0)throw new Error("Reproducible workspace tickMs must be a non-negative integer");if(e.seed.length===0)throw new Error("Reproducible workspace seed must not be empty");return{...e,clock:new Date(t).toISOString()}}async function V$(e,t){let n=Lw(e);return Bs.run({...n,clockReads:0,tokenReads:0},t)}function gu(){let e=Bs.getStore();if(e===void 0)return;let t=new Date(Date.parse(e.clock)+e.clockReads*e.tickMs).toISOString();return e.clockReads+=1,t}function _u(e){let t=Bs.getStore();if(t===void 0)return;if(!Number.isSafeInteger(e)||e<0||e>mu)throw new Error(`Reproducible token length must be an integer between 0 and ${mu}`);let n="";for(;n.length<e;){let r=Nw.createHash("sha256").update(`${t.seed}\0${t.tokenReads}`).digest();t.tokenReads+=1;for(let o of r)if(n+=(o%36).toString(36),n.length===e)break}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]="6be1497f-a0d5-518b-bf6a-e549b18fad8a")}catch{}})();var Pw=/^([+-]?)(\d+)([hdwm])$/i,Mw=/^[+-]?\d+[hdwm](?:[+-]\d+[hdwm])+$/i,Fw=/^(\d{4})(\d{2})(\d{2})$/,$w=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,jw=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})-(\d{2})(?:-(\d{2}))?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,Uw=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i;function X(){return gu()??new Date().toISOString()}function ft(e){return Number.isFinite(Date.parse(e))}var zw=1e4,Eo=new Map;function yu(e){let t=Eo.get(e);if(t!==void 0)return t;let n=Date.parse(e);return Eo.size>=zw&&gn(Eo),Eo.set(e,n),n}function ne(e,t){let n=yu(e),r=yu(t);return Number.isFinite(n)&&Number.isFinite(r)&&n!==r?n-r:e.localeCompare(t)}function X$(e,t){return!(t.deadlineBefore&&(!e.deadline||ne(e.deadline,t.deadlineBefore)>0)||t.deadlineAfter&&(!e.deadline||ne(e.deadline,t.deadlineAfter)<0)||t.updatedAfter&&ne(e.updated_at,t.updatedAfter)<0||t.updatedBefore&&ne(e.updated_at,t.updatedBefore)>0||t.createdAfter&&ne(e.created_at,t.createdAfter)<0||t.createdBefore&&ne(e.created_at,t.createdBefore)>0)}function Hs(e){return e?`.${e.slice(1).padEnd(3,"0").slice(0,3)}`:""}function Ws(e){if(!e)return"";if(e.toUpperCase()==="Z")return"Z";let t=/^([+-]\d{2})(\d{2})$/.exec(e);return t?`${t[1]}:${t[2]}`:e}function qw(e,t,n){n&&n!==t&&(e.includes(n)||e.push(n))}function Gw(e){let t=[],n=c=>qw(t,e,c),r=Fw.exec(e);if(r){let[,c,d,u]=r;n(`${c}-${d}-${u}`)}let o=$w.exec(e);if(o){let[,c,d,u,p,f,y,g,h]=o,E=y?`:${y}`:"";n(`${c}-${d}-${u}T${p}:${f}${E}${Hs(g)}${Ws(h)}`)}let i=jw.exec(e);if(i){let[,c,d,u,p,f,y]=i,g=p?`:${p}`:"";n(`${c}T${d}:${u}${g}${Hs(f)}${Ws(y)}`)}let s=Uw.exec(e);if(s){let[,c,d,u,p,f,y]=s,g=p?`:${p}`:"";n(`${c}T${d}:${u}${g}${Hs(f)}${Ws(y)}`)}let a=10,l=e.slice(0,a);if(Bw(l)){let c=a;for(;c<e.length&&Hw(e[c]);)c+=1;c<e.length&&n(`${l}T${e.slice(c)}`)}return t}function Vw(e){let t=Date.parse(e);if(Number.isFinite(t))return t;for(let n of Gw(e)){let r=Date.parse(n);if(Number.isFinite(r))return r}return Number.NaN}function Bw(e){if(e.length!==10)return!1;for(let t=0;t<e.length;t+=1){let n=e[t];if(t===4||t===7){if(n!=="-")return!1;continue}let r=n.charCodeAt(0);if(r<48||r>57)return!1}return!0}function Hw(e){return e?e===" "||e===" "||e===`
|
|
3
|
+
`||e==="\r"||e==="\f"||e==="\v":!1}function hu(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}var Ww=["January","February","March","April","May","June","July","August","September","October","November","December"],Kw=/^(\d{4})-(\d{2})-(\d{2})/,Yw=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/;function Xw(e,t,n){let r=Kw.exec(t)??Yw.exec(t);if(!r)return;let o=Number.parseInt(r[1],10),i=Number.parseInt(r[2],10),s=Number.parseInt(r[3],10),a=n?.trim()||"deadline";if(i<1||i>12)throw new b(`Invalid ${a} value "${e}". Month "${r[2]}" is out of range \u2014 use a month between 01 and 12.`,_.USAGE);let l=hu(o,i-1);if(s<1||s>l)throw new b(`Invalid ${a} value "${e}". ${Ww[i-1]} ${o} has ${l} days, so day "${r[3]}" does not exist. Use a real YYYY-MM-DD calendar date.`,_.USAGE)}function Jw(e,t){let n=new Date(e.getTime()),r=n.getUTCDate(),o=n.getUTCMonth()+t,i=n.getUTCFullYear()+Math.floor(o/12),s=(o%12+12)%12,a=Math.min(r,hu(i,s));return n.setUTCFullYear(i,s,a),n}function Qw(e,t=new Date,n="deadline"){let r=e.trim();if(r.toLowerCase()==="now")return t.toISOString();let o=Pw.exec(r);if(o){let s=o[1]==="-"?-1:1,a=Number.parseInt(o[2],10)*s,l=o[3].toLowerCase();if(l==="m")return Jw(t,a).toISOString();let c=l==="h"?3600*1e3:l==="d"?1440*60*1e3:10080*60*1e3;return new Date(t.getTime()+a*c).toISOString()}Xw(e,r,n);let i=Vw(r);if(!Number.isFinite(i)){let s=n.trim().length>0?n.trim():"deadline",a=Mw.test(r)?"Compound relative expressions like +3d+1h are not supported; use a single relative token (for example +3d) or an ISO/date string.":'Use ISO/date string input, "now", or relative +6h/-6h/+1d/-1d/+2w/-2w/+6m/-6m.';throw new b(`Invalid ${s} value "${e}". ${a}`,_.USAGE)}return new Date(i).toISOString()}import{mkdir as Zw,readFile as eE}from"node:fs/promises";import bu from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="71a8cd89-54fc-5f8a-b93b-9e4a79bb34b6")}catch{}})();function tE(e){let t=e.trim();if(!t)throw new b("--rollback requires a non-empty checkpoint ID",_.USAGE);if(!/^[a-zA-Z0-9._-]+$/.test(t))throw new b("--rollback checkpoint ID must match [a-zA-Z0-9._-]+",_.USAGE);return t}function nE(e,t){let n=t.replace(/[-:.TZ]/g,"").slice(0,14),r=Math.random().toString(36).slice(2,8);return`${e}-${n}-${r}`}function wu(e,t){return bu.join(e,"checkpoints",t)}function Eu(e,t,n){return bu.join(wu(e,t),`${n}.json`)}async function rE(e,t,n,r){let o=wu(e,t);await Zw(o,{recursive:!0});let i=Eu(e,t,n);return await P(i,`${JSON.stringify(r,null,2)}
|
|
4
|
+
`),i}function oE(e,t){if(!Array.isArray(e.items))throw new b(`Checkpoint ${t} is missing items`,_.GENERIC_FAILURE);return e.items.map(n=>{if(!n||typeof n!="object")throw new b(`Checkpoint ${t} contains an invalid item entry`,_.GENERIC_FAILURE);let r=n;if(typeof r.id!="string"||r.id.trim().length===0)throw new b(`Checkpoint ${t} contains an item entry without ID`,_.GENERIC_FAILURE);if(typeof r.target_updated_at!="string"||r.target_updated_at.trim().length===0)throw new b(`Checkpoint ${t} contains an item entry without target_updated_at`,_.GENERIC_FAILURE);return{id:r.id.trim(),target_updated_at:r.target_updated_at.trim()}})}async function iE(e,t,n,r){let o=tE(n),i=Eu(e,t,o);if(!await Y(i))throw new b(`Checkpoint ${o} not found`,_.NOT_FOUND);let s=await eE(i,"utf8"),a;try{a=JSON.parse(s)}catch(d){throw new b(`Checkpoint ${o} contains invalid JSON: ${$(d)}`,_.GENERIC_FAILURE)}if(!a||typeof a!="object")throw new b(`Checkpoint ${o} is invalid`,_.GENERIC_FAILURE);let l=a;if(l.schema_version!==r)throw new b(`Checkpoint ${o} has unsupported schema version`,_.GENERIC_FAILURE);let c=oE(l,o);return{record:l,items:c,path:i,id:typeof l.id=="string"?l.id:o,created_at:typeof l.created_at=="string"?l.created_at:X(),author:typeof l.author=="string"?l.author:"unknown"}}async function sE(e,t){let n=[],r=[];for(let o of e)try{let i=await t(o.id,o.target_updated_at);n.push({id:o.id,status:"restored",changed_fields:i.changed_fields,warnings:i.warnings}),r.push(o.id)}catch(i){n.push({id:o.id,status:"failed",error:$(i)})}return{rows:n,restored_ids:r,failed_count:n.filter(o=>o.status==="failed").length}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8a7dca67-8f1e-5451-b45c-4a75b1117d72")}catch{}})();var aE=Object.freeze({string:"string",number:"number",int:"number",integer:"number",float:"number",boolean:"boolean",bool:"boolean"});function Ks(e){return typeof e!="string"?null:aE[e.trim().toLowerCase()]??null}function Ys(e){let t=[],n=r=>{if(Array.isArray(r)){for(let o of r)n(o);return}if(typeof r=="string"){for(let o of r.split(",")){let i=o.trim();i.length>0&&t.push(i)}return}r!=null&&t.push(r)};return n(e),t}function Tu(e,t){return t==="string"?!0:t==="number"?typeof e=="number"?Number.isFinite(e):typeof e=="string"&&e.trim().length>0&&Number.isFinite(Number(e)):typeof e=="boolean"?!0:typeof e=="string"&&["true","false","1","0"].includes(e.trim().toLowerCase())}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="294d43fb-b6e8-5a5f-91fe-73ba21075bf5")}catch{}})();function Fe(e,t,n){if(e===t)return 0;if(Math.abs(e.length-t.length)>n)return null;let r=t.length+1,o=new Array(r),i=new Array(r),s=new Array(r);for(let l=0;l<r;l+=1)o[l]=0,i[l]=l;for(let l=1;l<=e.length;l+=1){s[0]=l;let c=s[0];for(let d=1;d<=t.length;d+=1){let u=e[l-1]===t[d-1]?0:1,p=i[d-1]+u,f=s[d-1]+1,y=i[d]+1,g=Math.min(p,f,y);l>1&&d>1&&e[l-1]===t[d-2]&&e[l-2]===t[d-1]&&(g=Math.min(g,o[d-2]+1)),s[d]=g,g<c&&(c=g)}if(c>n)return null;for(let d=0;d<r;d+=1)o[d]=i[d],i[d]=s[d]}let a=i[t.length];return a<=n?a:null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a9b23a46-0bba-5174-8793-dfc37016d1fb")}catch{}})();var uj=[{code:"unknown_lifecycle_action"}];function lE(e,t){let n=e.trim().toLowerCase();if(n.length===0)return;let r=Math.floor(n.length/3);return t.map(o=>({candidate:o,distance:Fe(n,o.toLowerCase(),r)??Number.POSITIVE_INFINITY})).filter(({distance:o})=>Number.isFinite(o)).sort((o,i)=>o.distance!==i.distance?o.distance-i.distance:o.candidate.localeCompare(i.candidate))[0]?.candidate}function vu(e){return["pm",...e].map(t=>/^[A-Za-z0-9_./:@=-]+$/u.test(t)?t:JSON.stringify(t)).join(" ")}function cE(e){let t=e.command_path.trim().replaceAll(/\s+/gu," "),n=e.token.trim(),r=n.length===0?"<empty>":n,o=[...new Set(e.allowed.map(p=>p.trim()))].filter(Boolean).sort((p,f)=>p.localeCompare(f));if(t.length===0||r.length===0||o.length===0)throw new TypeError("Unknown-subcommand contracts require a path, token, and allowed set");let i=t.split(" "),s=e.trailing_args??[],a=e.display_name??`pm ${t}`,l=e.token_kind??"subcommand",c=e.retry_command?void 0:lE(r,o),d=vu([...i,r,...s]),u=e.retry_command??(c?vu([...i,c,...s]):void 0);return new b(`Unknown ${a} ${l} "${r}". Allowed: ${o.join(", ")}${e.message_suffix??""}`,e.exit_code??_.USAGE,{code:"unknown_subcommand",reason:"unknown_positional_token",examples:[...u?[u]:[],...e.examples??[],`pm ${t} --help`],nextSteps:u?[`Retry with the suggested command: ${u}`]:["Choose one value from recovery.allowed_values."],recovery:{attempted_command:d,allowed_values:o,suggested_retry:u,fallback_candidates:e.fallback_candidates}})}import _n from"node:fs";import tt from"node:path";import{fileURLToPath as dE}from"node:url";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="dffcc28d-16a3-53d4-ba02-5298ae7a6d63")}catch{}})();var uE="@unbrained/pm-cli";function fE(e){try{return JSON.parse(_n.readFileSync(e,"utf8")).name===uE}catch{return!1}}function pE(e){let t=_n.existsSync(e)&&_n.statSync(e).isDirectory()?tt.resolve(e):tt.dirname(tt.resolve(e));for(;;){let n=tt.join(t,"package.json");if(_n.existsSync(n)&&fE(n))return t;let r=tt.dirname(t);if(r===t)return;t=r}}function nt(e,t=[]){let n=dE(e),r=pE(n);return r||tt.resolve(tt.dirname(n),...t)}function Xs(e,t=[]){try{let n=tt.join(nt(e,t),"package.json");if(!_n.existsSync(n))return;let r=JSON.parse(_n.readFileSync(n,"utf8"));return typeof r.version=="string"&&r.version.trim().length>0?r.version:void 0}catch{return}}function mE(e=process.env,t="PM_CLI_PACKAGE_ROOT",n,r=[]){let o=e[t];return typeof o=="string"&&o.trim().length>0?tt.resolve(o.trim()):n?nt(n,r):process.cwd()}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="605cf12e-6106-563a-abc0-38d648d4aa43")}catch{}})();var yn=["Epic","Feature","Task","Chore","Issue","Decision","Event","Reminder","Milestone","Meeting","Plan"],Au=yn,hn=["draft","open","in_progress","blocked","closed","canceled"],To=["draft","active","blocked","terminal","terminal_done","terminal_canceled","default_open","default_close","default_cancel"],bn=["string","number","boolean","string_array","array","object"],vo=["create","update","update_many","list","search","calendar","context"],Ao=["allow","warn","reject"],yj=["blocks","parent","child","parent_child","child_of","related","related_to","discovered_from","blocked_by","incident_from","epic","implements","supersedes","task","verifies"],hj=["project","global"],bj=["low","medium","high","critical"],So=["low","medium","high","critical"],ko=["low","medium","high"];var Su=["minimal","default","strict","custom"],wj=["none","warn","strict"],Ej=["progressive","strict"],Tj=["off","warn","strict"],vj=["off","warn","strict"];var xo=["daily","weekly","monthly","yearly"],or=["mon","tue","wed","thu","fri","sat","sun"];function Js(e){return or.indexOf(e)}var ku=["draft","research","review","approved","executing","paused","completed","superseded"],Co=["pending","in_progress","completed","blocked","skipped","superseded"],xu=["codex","claude-code","cursor","generic"],Cu=["related","blocks","blocked_by","depends_on","discovered_from","implements","verifies","supersedes"],Aj=["brief","standard","deep","full"],Sj=["hierarchy","activity","progress","recently_created","unparented","blockers","files","workload","staleness","tests"];(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f6e82c93-54e8-53a7-94df-10a573aae933")}catch{}})();import bE 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]="815165a9-27a7-5933-adae-c7e55330c8e4")}catch{}})();function pt(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function gE(e){let t=e.key.trim();if(t.length===0)return null;let n=pt(e.aliases),r=e.description?.trim();return{key:t,values:pt(e.values),required:e.required===!0?!0:void 0,aliases:n.length>0?n:void 0,description:r&&r.length>0?r:void 0}}var _E=e=>e,Iu=e=>{let t=e.trim().toLowerCase();return t==="create"||t==="update"?t:null};function yE(e,t){let n=t(e.command);if(n===null)return null;let r=e.option.trim();return r.length===0?null:{command:n,option:r,required:e.required,visible:e.visible,enabled:e.enabled}}function hE(e,t){let n=new Map;for(let r of e??[]){let o=yE(r,t);o&&n.set(`${o.command}:${o.option.toLowerCase()}`,o)}return[...n.values()].sort((r,o)=>r.command===o.command?r.option.localeCompare(o.option):r.command.localeCompare(o.command))}function Ou(e,t){return t?pt(e):void 0}function Qs(e){let t=e?.trim();return t&&t.length>0?t:void 0}function Oo(e,t={}){let n=t.resolvePolicyCommand??_E,r=e.name.trim();if(r.length===0)return null;let o=e.required_create_fields!==void 0,i=e.required_create_repeatables!==void 0,s=e.options!==void 0,a=e.command_option_policies!==void 0,l=pt(e.aliases),c=(e.options??[]).map(u=>gE(u)).filter(u=>u!==null).sort((u,p)=>u.key.localeCompare(p.key)),d=hE(e.command_option_policies,n);return{name:r,description:Qs(e.description),default_status:Qs(e.default_status),folder:Qs(e.folder),aliases:l.length>0?l:void 0,required_create_fields:Ou(e.required_create_fields,o),required_create_repeatables:Ou(e.required_create_repeatables,i),options:s?c:void 0,command_option_policies:a?d:void 0}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="88b2ed4e-b5fd-5014-abf1-c163db033abf")}catch{}})();var wE=["title","description","status","priority","tags","body","deadline","estimatedMinutes","acceptanceCriteria","author","message","assignee"],EE=["dep","comment","note","learning","file","test","doc"],ea=["deadline","estimatedMinutes","acceptanceCriteria","definitionOfReady","order","goal","objective","value","impact","outcome","whyNow","assignee","parent","reviewer","risk","confidence","sprint","release","blockedBy","blockedReason","unblockNote","reporter","severity","environment","reproSteps","resolution","expectedResult","actualResult","affectedVersion","fixedVersion","component","regression","customerImpact"],TE=["title","description","type","status","priority","tags","body",...ea,"author","message","dep","comment","note","learning","file","test","doc","reminder","event","typeOption","field"],vE=["title","description","body","status","closeReason","priority","type","tags",...ea,"author","message","comment","note","learning","file","test","doc","reminder","event","typeOption","field","ownershipMetadataBypass","ownershipDependencyBypass","force"],Nu={"close-reason":"closeReason",close_reason:"closeReason","estimated-minutes":"estimatedMinutes",estimated_minutes:"estimatedMinutes",estimate:"estimatedMinutes","acceptance-criteria":"acceptanceCriteria",acceptance_criteria:"acceptanceCriteria",ac:"acceptanceCriteria","definition-of-ready":"definitionOfReady",definition_of_ready:"definitionOfReady",rank:"order","why-now":"whyNow",why_now:"whyNow","blocked-by":"blockedBy",blocked_by:"blockedBy","blocked-reason":"blockedReason",blocked_reason:"blockedReason","unblock-note":"unblockNote",unblock_note:"unblockNote","repro-steps":"reproSteps",repro_steps:"reproSteps","expected-result":"expectedResult",expected_result:"expectedResult","actual-result":"actualResult",actual_result:"actualResult","affected-version":"affectedVersion",affected_version:"affectedVersion","fixed-version":"fixedVersion",fixed_version:"fixedVersion","customer-impact":"customerImpact",customer_impact:"customerImpact","type-option":"typeOption",type_option:"typeOption",type_options:"typeOption"},AE={...Nu},SE={...Nu},Du=[["deadline","--deadline"],["estimatedMinutes","--estimate/--estimated-minutes"],["acceptanceCriteria","--acceptance-criteria/--ac"],["definitionOfReady","--definition-of-ready"],["order","--order/--rank"],["goal","--goal"],["objective","--objective"],["value","--value"],["impact","--impact"],["outcome","--outcome"],["whyNow","--why-now"],["assignee","--assignee"],["parent","--parent"],["reviewer","--reviewer"],["risk","--risk"],["confidence","--confidence"],["sprint","--sprint"],["release","--release"],["blockedBy","--blocked-by"],["blockedReason","--blocked-reason"],["unblockNote","--unblock-note"],["reporter","--reporter"],["severity","--severity"],["environment","--environment"],["reproSteps","--repro-steps"],["resolution","--resolution"],["expectedResult","--expected-result"],["actualResult","--actual-result"],["affectedVersion","--affected-version"],["fixedVersion","--fixed-version"],["component","--component"],["regression","--regression"],["customerImpact","--customer-impact"]],Lu=[["comment","--comment"],["note","--note"],["learning","--learning"],["file","--file"],["test","--test"],["doc","--doc"],["reminder","--reminder"],["event","--event"],["typeOption","--type-option"]];function Pu(e){return Object.fromEntries(e)}var kE=Pu([["title","--title"],["description","--description"],["type","--type"],["status","--status"],["priority","--priority"],["tags","--tags"],["body","--body"],...Du,["author","--author"],["message","--message"],["dep","--dep"],...Lu]),xE=Pu([["title","--title"],["description","--description"],["body","--body"],["status","--status"],["closeReason","--close-reason"],["priority","--priority"],["type","--type"],["tags","--tags"],...Du,...Lu,["author","--author"],["message","--message"],["force","--force"]]);function CE(e){return e.trim().replace(/^--+/,"").toLowerCase()}function OE(e){return e==="create"?TE:vE}function IE(e){return e==="create"?AE:SE}function ta(e,t){let n=CE(t);if(n.length===0)return;let r=IE(e)[n];return r||OE(e).find(o=>o.toLowerCase()===n)}function RE(e,t){return(e==="create"?kE:xE)[t]??`--${t.replace(/([A-Z])/g,"-$1").toLowerCase()}`}function sr(e){let t=NE(e);return t.length===0?"items":t.endsWith("s")?t:`${t}s`}function Io(e){let t=e.trim(),r=t.replaceAll("\\","/").replace(/^\/+/,""),o=bE.posix.normalize(r);if(t.includes("\0")||/^[A-Za-z]:/.test(o)||o==="."||o===".."||o.startsWith("../"))throw new Error(`Item type folder "${e}" must stay inside the pm tracker root.`);return o}function NE(e){let t=e.trim().toLowerCase(),n="",r=!1;for(let o of t){let i=o.charCodeAt(0),s=i>=97&&i<=122,a=i>=48&&i<=57;if(s||a){r&&n.length>0&&(n+="-"),n+=o,r=!1;continue}n.length>0&&(r=!0)}return n}function DE(e){return Oo(e,{resolvePolicyCommand:Iu})}function ir(e,t){let n=e[t];return Array.isArray(n)?n.filter(r=>typeof r=="string"):void 0}function LE(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e;return typeof t.key!="string"?null:{key:t.key,values:ir(t,"values")??[],required:t.required===void 0?void 0:!!t.required,aliases:ir(t,"aliases"),description:typeof t.description=="string"?t.description:void 0}}function PE(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e;if(typeof t.command!="string"||typeof t.option!="string")return null;let n=t.command.trim().toLowerCase();return n!=="create"&&n!=="update"?null:{command:n,option:t.option,required:t.required===void 0?void 0:!!t.required,visible:t.visible===void 0?void 0:!!t.visible,enabled:t.enabled===void 0?void 0:!!t.enabled}}function ME(e){if(Array.isArray(e.options))return e.options.map(t=>LE(t)).filter(t=>t!==null)}function FE(e){if(Array.isArray(e.command_option_policies))return e.command_option_policies.map(t=>PE(t)).filter(t=>t!==null)}function $E(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e,n=typeof t.name=="string"?t.name:"";if(n.trim().length===0)return null;let r=typeof t.folder=="string"?t.folder:void 0,o=typeof t.description=="string"?t.description:void 0,i=typeof t.default_status=="string"?t.default_status:void 0;return{name:n,description:o,default_status:i,folder:r,aliases:ir(t,"aliases"),required_create_fields:ir(t,"required_create_fields"),required_create_repeatables:ir(t,"required_create_repeatables"),options:ME(t),command_option_policies:FE(t)}}function jE(e,t){return e.required_create_fields?pt(e.required_create_fields):t?.required_create_fields??[]}function UE(e,t){return e.required_create_repeatables?pt(e.required_create_repeatables):t?.required_create_repeatables??[]}function zE(e,t){return e.options?e.options:t?.options?[...t.options]:[]}function qE(e,t){return e.command_option_policies?e.command_option_policies:t?.command_option_policies?[...t.command_option_policies]:[]}function GE(e,t){let n=t?.name??e.name,r=e.description??t?.description,o=e.default_status??t?.default_status,i=Io(e.folder??t?.folder??sr(n)),s={name:n,folder:i,aliases:pt([...t?.aliases??[],...e.aliases??[]]),required_create_fields:jE(e,t),required_create_repeatables:UE(e,t),options:zE(e,t),command_option_policies:qE(e,t)};return r&&(s.description=r),o&&(s.default_status=o),s}function Ru(e,t){for(let n of e){let r=DE(n);if(!r)continue;let o=r.name.toLowerCase(),i=t.get(o);t.set(o,GE(r,i))}}function VE(e){if(!e)return[];let t=[];for(let n of e.item_types??[]){let r=n.types;if(Array.isArray(r))for(let o of r){let i=$E(o);i&&t.push(i)}}return t}function ar(e,t=null){let n=new Map;for(let l of Au)n.set(l.toLowerCase(),{name:l,folder:se[l],aliases:[],required_create_fields:[...wE],required_create_repeatables:[...EE],options:[],command_option_policies:[]});Ru(e.item_types?.definitions??[],n),Ru(VE(t),n);let r=[...n.values()].sort((l,c)=>l.name.localeCompare(c.name)),o={},i={},s={};for(let l of r){o[l.name]=l,s[l.name]=l.folder,i[l.name.toLowerCase()]=l.name;for(let c of l.aliases)i[c.toLowerCase()]=l.name}let a=[...new Set(r.map(l=>l.folder))].sort((l,c)=>l.localeCompare(c));return{types:r.map(l=>l.name),folders:a,type_to_folder:s,by_type:o,alias_to_type:i}}function Mu(e,t){if(e!==void 0)return t.alias_to_type[e.trim().toLowerCase()]}function Fu(e,t){let n=Mu(e,t);if(n)return t.by_type[n]}function BE(e,t,n,r){for(let o of r){let i=ta(n,o);if(i){e.required.add(i);continue}e.errors.push(`Unsupported base required option "${o}" for command "${n}" on type "${t.name}"`)}}function Zs(e,t,n){if(n){e.add(t);return}e.delete(t)}function HE(e,t,n,r){let o=ta(n,r.option);if(!o){e.errors.push(`Unsupported command_option_policies option "${r.option}" for command "${n}" on type "${t.name}"`);return}r.required!==void 0&&Zs(e.required,o,r.required),r.visible!==void 0&&Zs(e.hidden,o,!r.visible),r.enabled!==void 0&&Zs(e.disabled,o,!r.enabled)}function WE(e,t,n){for(let r of t.command_option_policies)r.command===n&&HE(e,t,n,r)}function KE(e,t,n){for(let r of e.required)e.disabled.has(r)&&e.errors.push(`Option "${r}" cannot be both required and disabled for command "${n}" on type "${t.name}"`)}function YE(e,t,n){let r=[],o=new Set,i=new Set,s=new Set,a={required:o,hidden:i,disabled:s,errors:r};return BE(a,e,t,n),WE(a,e,t),KE(a,e,t),{required:[...o],hidden:[...i].sort((l,c)=>l.localeCompare(c)),disabled:[...s].sort((l,c)=>l.localeCompare(c)),errors:r}}function XE(e){let t=new Map;for(let n of e.options){t.set(n.key.toLowerCase(),n);for(let r of n.aliases??[])t.set(r.toLowerCase(),n)}return t}function JE(e,t,n){let r=e.values;if(r.length===0)return t;let i=new Map(r.map(s=>[s.toLowerCase(),s])).get(t.toLowerCase());if(!i){n.push(`Invalid value "${t}" for type option "${e.key}". Allowed: ${r.join(", ")}`);return}return i}function QE(e,t,n){let r=Fu(e,n);if(!r)return{normalized:void 0,errors:[`Unknown type "${e}"`]};let o=[],i=XE(r),s={};for(let[l,c]of Object.entries(t??{})){let d=l.trim(),u=c.trim();if(d.length===0){o.push("type option keys must not be empty");continue}if(u.length===0){o.push(`type option "${d}" must not be empty`);continue}let p=i.get(d.toLowerCase());if(!p){let y=r.options.map(g=>g.key).join(", ");o.push(r.options.length>0?`Unknown type option "${d}" for type "${r.name}". Allowed: ${y}`:`Type "${r.name}" does not define any configurable type options`);continue}let f=JE(p,u,o);f!==void 0&&(s[p.key]=f)}for(let l of r.options)l.required&&!(l.key in s)&&o.push(`Missing required type option "${l.key}" for type "${r.name}"`);let a=Object.keys(s).sort((l,c)=>l.localeCompare(c));return a.length===0?{normalized:void 0,errors:o}:{normalized:Object.fromEntries(a.map(l=>[l,s[l]])),errors:o}}import{readFileSync as ZE,readdirSync as eT,statSync as tT}from"node:fs";import nT from"node:os";import I 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]="c155ccd1-cf4c-57fd-9d0e-5274eb29a764")}catch{}})();var rT={json_markdown:".md",toon:".toon"},oT={".md":"json_markdown",".toon":"toon"},iT=new Set([".git","coverage","dist","node_modules"]),Ro=[".md",".toon"];function lr(e){try{return tT(e),!0}catch{return!1}}function $u(e){try{let t=JSON.parse(ZE(e,"utf8"));return typeof t!="object"||t===null||Array.isArray(t)?!1:"id_prefix"in t||"item_format"in t}catch{return!1}}function sT(e){let t=I.resolve(e);for(;;){let n=I.join(t,yo),r=I.join(n,ho);if(lr(r))return n;let o=I.join(t,ho);if(lr(o)&&$u(o))return t;let i=I.dirname(t);if(i===t)return;t=i}}function ju(e){return sT(e)??I.resolve(e,yo)}function Uj(e,t){let n=t?I.resolve(t):void 0;try{return eT(I.resolve(e),{withFileTypes:!0}).filter(r=>r.isDirectory()&&!iT.has(r.name)).map(r=>I.join(I.resolve(e),r.name)).filter(r=>r!==n).filter(r=>lr(ye(r))).filter(r=>$u(ye(r))).sort((r,o)=>r.localeCompare(o))[0]}catch{return}}function cr(e,t){let n=process.env.PM_PATH,r=t?.trim()||n?.trim();if(r){let o=I.resolve(e,r);if(!lr(ye(o))){let i=I.join(o,yo);if(lr(ye(i)))return i}return o}return ju(e)}function zj(e){let t=I.resolve(e),n=I.dirname(t);return I.basename(t)==="pm"&&I.basename(n)===".agents"?I.dirname(n):t}function mt(e){let t=process.env.PM_GLOBAL_PATH?.trim(),n=t&&t.length>0?t:I.join(nT.homedir(),".pm-cli");return I.resolve(e,n)}function ye(e){return I.join(e,ho)}function aT(e,t,n=se){let r=n[t]??sr(t);return I.join(e,r)}function wn(e,t,n,r="toon",o=se){return I.join(aT(e,t,o),`${n}${rT[r]}`)}function dr(e){let t=e.replaceAll("\\","/"),n=I.posix.extname(t).toLowerCase();return oT[n]??null}function En(e,t){return I.join(e,"history",`${t}.jsonl`)}function Uu(e,t){return I.join(e,"locks",`${t}.lock`)}function na(e){return I.join(e,"runtime")}function No(e){return I.join(na(e),"test-runs")}function lT(e){return I.join(No(e),"runs")}function qj(e,t){return I.join(lT(e),`${t}.json`)}function cT(e){return I.join(No(e),"stdout")}function dT(e){return I.join(No(e),"stderr")}function Gj(e,t){return I.join(cT(e),`${t}.log`)}function Vj(e,t){return I.join(dT(e),`${t}.log`)}function uT(e){return I.join(No(e),"results")}function Bj(e,t){return I.join(uT(e),`${t}.json`)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="49a83ce3-4c55-5b3f-b061-bc21b716d498")}catch{}})();var ra=[{kind:"blocked_by",direction:"directed",inverse:"blocks",ordering:!0,precedence:"target_before_source",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["depends_on"],compatibilityVersion:1,allowSelf:!1},{kind:"blocks",direction:"directed",inverse:"blocked_by",ordering:!0,precedence:"source_before_target",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"parent",direction:"directed",inverse:"child",ordering:!1,hierarchy:!0,hierarchyDirection:"target_parent",outgoing:"one",incoming:"many",lifecycle:"supersedable",aliases:["child_of","epic"],compatibilityVersion:1,allowSelf:!1},{kind:"child",direction:"directed",inverse:"parent",ordering:!1,hierarchy:!0,hierarchyDirection:"source_parent",outgoing:"many",incoming:"one",lifecycle:"supersedable",aliases:["parent_child","task"],compatibilityVersion:1,allowSelf:!1},{kind:"related",direction:"undirected",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["related_to"],compatibilityVersion:1,allowSelf:!1},{kind:"discovered_from",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"incident_from",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"implements",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"verifies",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"supersedes",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"supersedable",compatibilityVersion:1,allowSelf:!1}];(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="05e01593-acb6-5e28-a5ac-8c8f74359c62")}catch{}})();function Po(e){return e.trim().toLowerCase().replaceAll("-","_")}function fT(e){if(e===void 0)return;let t=Po(e);if(!/^[a-z][a-z0-9_]*$/.test(t))throw new TypeError(`Invalid inverse relationship kind: ${e}`);return t}function ia(e,t=new Set){if(e===null||typeof e!="object"||t.has(e))return e;if(t.add(e),Array.isArray(e)){for(let n of e)ia(n,t);return Object.freeze(e)}for(let n of Object.values(e))ia(n,t);return Object.freeze(e)}function pT(e,t){if(e.precedence!==void 0&&e.precedence!=="source_before_target"&&e.precedence!=="target_before_source")throw new TypeError(`Invalid relationship precedence for ${t}`);if(!e.ordering&&e.precedence!==void 0)throw new TypeError(`Non-ordering relationship kind cannot declare precedence: ${t}`)}function mT(e,t){if(e.hierarchyDirection!==void 0&&e.hierarchyDirection!=="source_parent"&&e.hierarchyDirection!=="target_parent")throw new TypeError(`Invalid relationship hierarchy direction for ${t}`);if(!e.hierarchy&&e.hierarchyDirection!==void 0)throw new TypeError(`Non-hierarchy relationship kind cannot declare hierarchy direction: ${t}`)}function gT(e){if(typeof e!="object"||e===null)throw new TypeError("Relationship kind definition requires an object");if(typeof e.kind!="string")throw new TypeError("Relationship kind requires a string identifier");let t=Po(e.kind);if(!/^[a-z][a-z0-9_]*$/.test(t))throw new TypeError(`Invalid relationship kind: ${e.kind}`);if(!Number.isInteger(e.compatibilityVersion)||e.compatibilityVersion<1)throw new TypeError(`Invalid compatibility version for ${t}`);return t}function _T(e,t){if(!["directed","undirected"].includes(e.direction))throw new TypeError(`Invalid relationship direction for ${t}`);if(typeof e.ordering!="boolean")throw new TypeError(`Invalid relationship ordering flag for ${t}`);if(![void 0,!0,!1].includes(e.hierarchy))throw new TypeError(`Invalid relationship hierarchy flag for ${t}`);if(!["one","many"].includes(e.outgoing))throw new TypeError(`Invalid outgoing relationship cardinality for ${t}`);if(!["one","many"].includes(e.incoming))throw new TypeError(`Invalid incoming relationship cardinality for ${t}`);if(!["persistent","supersedable","ephemeral"].includes(e.lifecycle))throw new TypeError(`Invalid relationship lifecycle for ${t}`);if(typeof e.allowSelf!="boolean")throw new TypeError(`Invalid relationship self-edge flag for ${t}`)}function yT(e,t){if(e.payloadSchema!==void 0&&(typeof e.payloadSchema!="object"||e.payloadSchema===null||Array.isArray(e.payloadSchema)))throw new TypeError(`Invalid relationship payload schema for ${t}`);if(e.aliases!==void 0&&(!Array.isArray(e.aliases)||e.aliases.some(n=>typeof n!="string")))throw new TypeError(`Invalid relationship aliases for ${t}`)}var sa=class{#e=new Map;#n=new Map;constructor(t=ra){for(let n of t)this.register(n)}register(t){let n=gT(t);if(_T(t,n),yT(t,n),pT(t,n),mT(t,n),this.#e.has(n)||this.#n.has(n))throw new TypeError(`Relationship kind already registered: ${n}`);let r=fT(t.inverse),o=[...new Set((t.aliases??[]).map(Po))].sort();for(let s of o){if(!/^[a-z][a-z0-9_]*$/.test(s))throw new TypeError(`Invalid relationship alias: ${s}`);if(s===n||this.#e.has(s)||this.#n.has(s))throw new TypeError(`Relationship alias already registered: ${s}`)}let i=Object.freeze({...t,kind:n,hierarchy:t.hierarchy??!1,inverse:r,aliases:Object.freeze(o),payloadSchema:t.payloadSchema?ia(structuredClone(t.payloadSchema)):void 0});this.#e.set(n,i);for(let s of o)this.#n.set(s,n);return this}resolve(t){if(typeof t!="string")return;let n=Po(t);return this.#e.get(this.#n.get(n)??n)}require(t){let n=this.resolve(t);if(!n)throw new TypeError(`Unknown relationship kind: ${t}`);return n}list(){return Object.freeze([...this.#e.values()].sort((t,n)=>t.kind.localeCompare(n.kind)))}};function aa(){return new sa}var jt=aa();function Yj(e){return jt.require(e).kind}function Xj(e){return jt.resolve(e)?.kind}function Jj(e,t=jt){return t.resolve(e)?.ordering===!0}function hT(e,t,n,r=jt){let o=ur(e),i=ur(t);if(!o||!i)throw new TypeError("Relationship endpoint must not be empty");let s=r.require(n);if(o===i&&!s.allowSelf)throw new TypeError(`Self relationship is not allowed for ${s.kind}`);return s}function Do(e,t){return e.source.localeCompare(t.source)||e.target.localeCompare(t.target)||e.kind.localeCompare(t.kind)}function bT(e,t,n){let r=typeof e.source=="string"?e.source.trim():"",o=typeof e.target=="string"?e.target.trim():"";if(!t.has(r)||!t.has(o))throw new TypeError(`Relationship endpoint not found: ${r} -> ${o}`);let i=hT(r,o,e.kind,n),s=Object.freeze({...e,source:r,target:o,kind:i.kind}),a=i.direction==="undirected"?[r,o].sort().join("\0"):`${r}\0${o}`;return{edge:s,identity:`${i.kind}\0${a}`}}function Lo(e,t,n){let r=e.get(t);r?r.push(n):e.set(t,[n])}function ur(e){return typeof e=="string"?e.trim():""}function oa(e,t){let n=ur(e);return n&&t.has(n)?n:void 0}function wT(e,t,n){let r=[t],o=t;for(;o!==e;)o=n.get(o),r.push(o);return r.reverse()}var zu=class e{#e;#n;#o;#r;#s=new Map;#a=new Map;constructor(t,n,r=jt){this.#e=r,this.#n=new Set([...t].filter(i=>typeof i=="string").map(i=>i.trim()).filter(Boolean)),this.#o=Object.freeze([...this.#n].sort());let o=new Map;for(let i of n){let{edge:s,identity:a}=bT(i,this.#n,r);o.set(a,s)}this.#r=Object.freeze([...o.values()].sort(Do));for(let i of this.#r)Lo(this.#s,i.source,i),Lo(this.#a,i.target,i),r.require(i.kind).direction==="undirected"&&(Lo(this.#s,i.target,i),Lo(this.#a,i.source,i))}static fromItems(t,n=jt){let r=new Set(t.map(i=>ur(i.id)).filter(Boolean)),o=[];for(let i of t){let s=ur(i.id);if(!s)continue;let a=oa(i.parent,r);a&&o.push({source:s,target:a,kind:"parent"});let l=oa(i.blocked_by,r);l&&o.push({source:s,target:l,kind:"blocked_by"});for(let c of i.dependencies??[]){let d=oa(c.id,r);d&&n.resolve(c.kind)&&o.push({source:s,target:d,kind:c.kind,createdAt:c.created_at,author:c.author})}}return new e(r,o,n)}edges(){return this.#r}incidentEdges(t){this.#i(t);let n=this.#s.get(t)??[],r=this.#a.get(t)??[];if(n.length===0)return Object.freeze([...r]);if(r.length===0)return Object.freeze([...n]);let o=[],i=0,s=0;for(;i<n.length||s<r.length;){let a=n[i],l=r[s],c=a===void 0?l:l===void 0||Do(a,l)<=0?a:l;o.at(-1)!==c&&o.push(c),a===c&&(i+=1),l===c&&(s+=1)}return Object.freeze(o)}nodes(){return this.#o}hasNode(t){return this.#n.has(t)}registry(){return this.#e}#i(t){if(!this.#n.has(t))throw new TypeError(`Relationship node not found: ${t}`)}#l(t,n){if(!n)return!0;let r=this.#e.require(t.kind);return n.has(t.kind)||r.inverse!==void 0&&n.has(r.inverse)}#t(t,n,r){let o=[...n==="incoming"?[]:this.#s.get(t)??[],...n==="outgoing"?[]:this.#a.get(t)??[]];return[...new Set(o)].filter(i=>this.#l(i,r)).map(i=>({id:i.source===t?i.target:i.source,edge:i})).sort((i,s)=>i.id.localeCompare(s.id)||Do(i.edge,s.edge))}adjacency(t,n={}){this.#i(t),n.signal?.throwIfAborted();let r=n.kinds?new Set(n.kinds.map(l=>this.#e.require(l).kind)):void 0,o=this.#t(t,n.direction??"outgoing",r),i=n.limit??Number.POSITIVE_INFINITY,s=[...new Set(o.map(l=>l.id))],a=s.slice(0,i);return{value:a,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:a.length<s.length,nextCursor:a.at(-1)}}}neighborEdges(t,n={}){this.#i(t),n.signal?.throwIfAborted();let r=n.kinds?new Set(n.kinds.map(a=>this.#e.require(a).kind)):void 0,o=this.#t(t,n.direction??"outgoing",r),i=n.limit??Number.POSITIVE_INFINITY,s=o.slice(0,i);return{value:s,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:s.length<o.length,nextCursor:s.at(-1)?.id}}}closure(t,n={}){this.#i(t);let r=n.kinds?new Set(n.kinds.map(f=>this.#e.require(f).kind)):void 0,o=n.direction??"outgoing",i=n.limit??Number.POSITIVE_INFINITY,s=n.maxDepth??Number.POSITIVE_INFINITY,a=new Set([t]),l=[],c=[{id:t,depth:0}],d=0,u=0,p=!1;e:for(let f=0;f<c.length;f+=1){n.signal?.throwIfAborted();let y=c[f];d+=1;let g=this.#t(y.id,o,r);if(u+=g.length,y.depth>=s){g.some(h=>!a.has(h.id))&&(p=!0);continue}for(let h of g)if(!a.has(h.id)){if(l.length>=i){p=!0;break e}a.add(h.id),l.push(h.id),c.push({id:h.id,depth:y.depth+1})}}return{value:l,meta:{visitedNodes:d,inspectedEdges:u,truncated:p,nextCursor:l.at(-1)}}}shortestPath(t,n,r={}){if(this.#i(t),this.#i(n),t===n)return{value:[t],meta:{visitedNodes:1,inspectedEdges:0,truncated:!1}};let o=r.kinds?new Set(r.kinds.map(f=>this.#e.require(f).kind)):void 0,i=r.direction??"outgoing",s=r.maxDepth??Number.POSITIVE_INFINITY,a=[{id:t,depth:0}],l=new Map,c=new Set([t]),d=0,u=0,p=!1;for(let f=0;f<a.length;f+=1){r.signal?.throwIfAborted();let y=a[f];d+=1;let g=this.#t(y.id,i,o);if(u+=g.length,y.depth>=s){g.some(h=>!c.has(h.id))&&(p=!0);continue}for(let h of g)if(!c.has(h.id)){if(l.set(h.id,y.id),h.id===n)return{value:wT(t,n,l),meta:{visitedNodes:d,inspectedEdges:u,truncated:!1}};c.add(h.id),a.push({id:h.id,depth:y.depth+1})}}return{value:[],meta:{visitedNodes:d,inspectedEdges:u,truncated:p}}}subgraph(t,n={}){let r=this.closure(t,n),o=[t,...r.value].sort(),i=new Set(o),s=n.kinds?new Set(n.kinds.map(l=>this.#e.require(l).kind)):void 0,a=new Set;for(let l of o)for(let c of this.#s.get(l)??[])i.has(c.source)&&i.has(c.target)&&this.#l(c,s)&&a.add(c);return{value:{nodes:o,edges:[...a].sort(Do)},meta:r.meta}}};function Qj(e,t,n=jt){return{source:e,target:t.id,kind:n.require(t.kind).kind,createdAt:t.created_at,author:t.author}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3225f4de-aa48-55b7-a704-d93ccb3ee0f4")}catch{}})();function fr(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function gt(e){return qe.includes(e)}function qu(e){let t=e.trim().toLowerCase();return gt(t)?t:null}function Gu(e){return e.filter(t=>!gt(t))}function la(e){let t=e.trim().toLowerCase();return t.length===0?null:Us[t]??null}function Vu(e){let t=fr([...e].map(i=>i.toLowerCase())),n=[],r=[];for(let i of t){let s=la(i);if(s){n.push(s),r.push({alias:i,target:s});continue}n.push(i)}let o=[...new Map(r.map(i=>[`${i.alias}>${i.target}`,i])).values()].sort((i,s)=>i.alias.localeCompare(s.alias));return{capabilities:fr(n),legacy_aliases:o}}function ET(e){let t=e.trim().toLowerCase();if(t.length===0)return null;let n=la(t);if(n)return n;let r=Math.max(1,Math.floor(t.length*.34)),o=null,i=Number.POSITIVE_INFINITY;for(let s of qe){let a=Fe(t,s,r);a!==null&&a<i&&(i=a,o=s)}return o}function Bu(e,t,n){let r=qe.join(","),o=ET(n)??"none";return`extension_capability_unknown:${e}:${t}:${n}:allowed=${r}:suggested=${o}`}function Hu(e,t,n){let r=n.map(o=>`${o.alias}>${o.target}`).join(",");return`extension_capability_legacy_alias:${e}:${t}:aliases=${r}`}function TT(e){let t=/^extension_capability_unknown:(global|project):([^:]+):([^:]+):allowed=([^:]+):suggested=([^:]+)$/.exec(e.trim());if(!t)return null;let[,n,r,o,i,s]=t,a=n,l=i.split(",").map(f=>f.trim()).filter(f=>f.length>0),c=la(o),u=(s==="none"?void 0:s)??c??void 0;return{layer:a,name:r,capability:o,allowed_capabilities:l,capability_contract_version:uo,suggested_capability:u,suggestion_source:u?c===u?"legacy_alias":"nearest_match":void 0,legacy_alias_target:c??void 0}}function vT(e){let t=/^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(e.trim());if(!t)return[];let[,n,r,o]=t,i=n,s=[...qe],a=[];for(let l of o.split(",")){let[c,d]=l.split(">"),u=c?.trim(),p=d?.trim().toLowerCase();!u||!p||!gt(p)||a.push({layer:i,name:r,capability:u,allowed_capabilities:s,capability_contract_version:uo,suggested_capability:p,suggestion_source:"legacy_alias",legacy_alias_target:p})}return a}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="baa8b608-7f1e-5382-abe3-b1af79e46da4")}catch{}})();function pr(){return{beforeCommand:[],beforeMutation:[],afterCommand:[],onWrite:[],onRead:[],onIndex:[]}}function ca(){return{overrides:[],handlers:[]}}function da(){return{overrides:[]}}function ua(){return{overrides:[]}}function fa(){return{overrides:[]}}function pa(){return{overrides:[]}}function Mo(){return{commands:[],flags:[],item_fields:[],item_types:[],relationship_kinds:[],migrations:[],profiles:[],importers:[],exporters:[],search_providers:[],vector_store_adapters:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2f268c53-f096-5eed-9ddb-01fed4839ae5")}catch{}})();function V(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function AT(){return{json:!1,quiet:!1,noExtensions:!1,profile:!1}}function he(e){return e?R(e):{}}function be(e){return e?R(e):AT()}function R(e){return structuredClone(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2c4e3831-6644-5db3-a28b-1c6a131da2e1")}catch{}})();var ST=new Set(["commands","command_overrides","command_handlers","flag_commands","parser_overrides"]),kT=["commands","command_overrides","command_handlers","hooks","flag_commands","item_types","item_fields","relationship_kinds","migrations","profiles","importers","exporters","search_providers","vector_store_adapters","parser_overrides","service_overrides","renderer_overrides"];function xT(e,t){for(let n of kT){let r=e[n];if(r===void 0)continue;if(!Array.isArray(r)||r.some(i=>typeof i!="string"))return!1;let o=r.map(i=>ST.has(n)?V(i):i.trim()).filter(i=>i.length>0);t[n]=[...new Set(o)].sort((i,s)=>i.localeCompare(s))}return!0}function CT(e){if(!Array.isArray(e))return null;let t=[];for(let n of e){if(typeof n!="object"||n===null)return null;let r=n;if(r.format!=="json"&&r.format!=="toon"||!Array.isArray(r.commands)||r.commands.some(o=>typeof o!="string")||typeof r.result_discriminator!="boolean")return null;t.push({format:r.format,commands:[...new Set(r.commands.map(o=>V(o)))].sort((o,i)=>o.localeCompare(i)),result_discriminator:r.result_discriminator})}return t.sort((n,r)=>n.format.localeCompare(r.format))}function OT(e){if(!Array.isArray(e))return null;let t=[];for(let n of e){if(typeof n!="object"||n===null)return null;let r=n.commands;if(!Array.isArray(r)||r.some(o=>typeof o!="string"))return null;t.push({commands:[...new Set(r.map(o=>V(o)))].filter(o=>o.length>0).sort((o,i)=>o.localeCompare(i))})}return t}function ma(e){if(e==null)return;if(typeof e!="object"||Array.isArray(e))return null;let t=e;if(t.schema_version!==1)return null;let n={schema_version:1};if(!xT(t,n))return null;let r=t.preflight_overrides;if(r!==void 0&&(!Number.isInteger(r)||r<0))return null;typeof r=="number"&&(n.preflight_overrides=r);let o=t.renderer_ownership;if(o!==void 0){let s=CT(o);if(s===null)return null;n.renderer_ownership=s}let i=t.preflight_ownership;if(i!==void 0){let s=OT(i);if(s===null)return null;n.preflight_ownership=s}return n}function a1(e){return{schema_version:1,commands:e.commands,command_overrides:e.command_overrides,command_handlers:e.command_handlers,hooks:e.hooks,flag_commands:e.flag_commands,item_types:e.item_types,item_fields:e.item_fields,...e.relationship_kinds?{relationship_kinds:e.relationship_kinds}:{},migrations:e.migrations,profiles:e.profiles,importers:e.importers,exporters:e.exporters,search_providers:e.search_providers,vector_store_adapters:e.vector_store_adapters,parser_overrides:e.parser_overrides,service_overrides:e.service_overrides,renderer_overrides:e.renderer_overrides,...e.renderer_ownership?{renderer_ownership:e.renderer_ownership}:{},preflight_overrides:e.preflight_overrides,...e.preflight_ownership?{preflight_ownership:e.preflight_ownership}:{}}}import IT from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="83232698-197a-5aef-be7c-aa37f3c56822")}catch{}})();function RT(e){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return e.toString();if(e===void 0)return"undefined";if(typeof e=="symbol")return e.toString();if(typeof e=="function")return`[function:${e.name||"anonymous"}]`}function NT(e){let t=Object.keys(e).sort(),n={};for(let r of t){let o=e[r];o!==void 0&&(n[r]=Fo(o))}return n}function Fo(e){let t=RT(e);if(t!==void 0)return t;if(Array.isArray(e))return e.map(r=>Fo(r));if(e instanceof Date)return e.toISOString();let n=e;if(typeof n.toJSON=="function"){let r=n.toJSON();if(r!==e)return Fo(r)}return NT(e)}function we(e){return JSON.stringify(Fo(e))}function Wu(e,t,n,r){for(let o=0;o<t.length;o+=1)if(!n.has(o)&&r(e,t[o]))return n.add(o),!0;return!1}function DT(e,t){if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.toString()===t.toString()}function LT(e,t){if(e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime()}function PT(e,t){if(!(e instanceof Set||t instanceof Set))return;if(!(e instanceof Set&&t instanceof Set)||e.size!==t.size)return!1;let n=[...t],r=new Set;for(let o of e)if(!Wu(o,n,r,re))return!1;return!0}function MT(e,t){if(!(e instanceof Map||t instanceof Map))return;if(!(e instanceof Map&&t instanceof Map)||e.size!==t.size)return!1;let n=[...t.entries()],r=new Set;for(let[o,i]of e.entries())if(!Wu([o,i],n,r,([a,l],[c,d])=>re(a,c)&&re(l,d)))return!1;return!0}function FT(e,t){if(Array.isArray(e)||Array.isArray(t))return!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length?!1:e.every((n,r)=>re(n,t[r]))}function $T(e,t){let n=Object.keys(e).sort((o,i)=>o.localeCompare(i)),r=Object.keys(t).sort((o,i)=>o.localeCompare(i));if(n.length!==r.length)return!1;for(let o=0;o<n.length;o+=1){let i=n[o];if(i!==r[o]||!re(e[i],t[i]))return!1}return!0}var jT=[DT,LT,PT,MT,FT];function re(e,t){if(Object.is(e,t))return!0;if(e===null||t===null||typeof e!="object"||typeof t!="object")return!1;for(let n of jT){let r=n(e,t);if(r!==void 0)return r}return $T(e,t)}function Ut(e){return IT.createHash("sha256").update(e,"utf8").digest("hex")}function x(e,t){let n={};for(let o of t){let i=e[o];i!==void 0&&(n[o]=i)}let r=Object.keys(e).filter(o=>!t.includes(o)).sort((o,i)=>o.localeCompare(i));for(let o of r){let i=e[o];i!==void 0&&(n[o]=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]="ac377139-8ce2-58ad-8005-0ac907a9baed")}catch{}})();var UT=5e3;async function mr(e,t,n){let r=[];for(let o of e)try{await o.run(R(n))}catch{r.push(`extension_hook_failed:${o.layer}:${o.name}:${t}`)}return r}async function Ku(e,t){return mr(e.beforeCommand,"beforeCommand",t)}function zT(e,t,n){if(e===void 0)return;if(typeof e!="object"||e===null||!("allow"in e)||e.allow!==!0&&e.allow!==!1)throw new b(`Extension mutation guard ${t.name} returned an invalid decision.`,_.CONFLICT,{code:"extension_mutation_guard_invalid_decision",reason:`${t.layer}:${t.name}`,nextSteps:["Return { allow: true } or a structured denial from the guard."]});if(e.allow)return;let r=e,o=typeof r.code=="string"?r.code.trim():"",i=typeof r.remediation=="string"?r.remediation.trim():"";if(o.length===0||i.length===0)throw new b(`Extension mutation guard ${t.name} returned an invalid denial.`,_.CONFLICT,{code:"extension_mutation_guard_invalid_denial",reason:`${t.layer}:${t.name}`,nextSteps:["Return non-empty code and remediation fields from the guard."]});let s=typeof r.message=="string"?r.message.trim():"";throw new b(s||`Extension mutation guard ${t.name} denied ${n}.`,_.CONFLICT,{code:o,reason:`${t.layer}:${t.name}`,nextSteps:[i]})}async function ga(e,t){for(let n of e.beforeMutation??[]){let r,o;try{let i=Promise.resolve().then(()=>n.run({pm_root:t.pm_root,operation:t.operation,before:t.before===null?null:R(t.before),after:t.after===null?null:R(t.after),changed_fields:[...t.changed_fields],sdk:t.sdk}));i.catch(()=>{}),r=await Promise.race([i,new Promise((s,a)=>{o=setTimeout(()=>{a(new b(`Extension mutation guard ${n.name} timed out before ${t.operation}.`,_.CONFLICT,{code:"extension_mutation_guard_timed_out",reason:`${n.layer}:${n.name}`,nextSteps:["Fix or disable the stalled extension guard, then retry the mutation."]}))},UT),o.unref?.()})])}catch(i){throw i instanceof b?i:new b(`Extension mutation guard ${n.name} failed before ${t.operation}.`,_.CONFLICT,{code:"extension_mutation_guard_failed",reason:`${n.layer}:${n.name}`,nextSteps:["Fix or disable the failing extension guard, then retry the mutation."]})}finally{clearTimeout(o)}zT(r,n,t.operation)}}async function Yu(e,t){return mr(e.afterCommand,"afterCommand",t)}async function _a(e,t){return mr(e.onWrite,"onWrite",t)}async function ya(e,t){return mr(e.onRead,"onRead",t)}async function ha(e,t){return mr(e.onIndex,"onIndex",t)}function qT(e){let t="";e instanceof Error&&typeof e.message=="string"?t=e.message:typeof e=="string"?t=e:typeof e=="object"&&e!==null&&typeof e.message=="string"&&(t=e.message);let n=t.replace(/\s+/gu," ").trim();if(n.length===0)return"";let r=300;return n.length>r?`${n.slice(0,r-1)}\u2026`:n}function $o(e,t){if(typeof e!="object"||e===null||typeof e[t]!="string")return;let n=String(e[t]).replace(/\s+/gu," ").trim();return n.length>0?n.slice(0,300):void 0}function GT(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"exit_code"))return;let t=e.exit_code;if(typeof t!="number"||!Number.isInteger(t)||t<1||t>255)throw new TypeError("Extension command result exit_code must be an integer from 1 to 255.");return t}async function ba(e,t){let n=V(t.command);if(n.length===0)return{handled:!1,result:null,warnings:[]};let r=[...e.handlers].reverse().find(o=>o.command===n);if(!r)return{handled:!1,result:null,warnings:[]};try{let o=await r.run({command:n,args:R(t.args),options:R(t.options),global:R(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel,...t.sdk===void 0?{}:{sdk:t.sdk}});return{handled:!0,result:o,warnings:[],...Object.fromEntries([["exitCode",GT(o)],["errorCode",$o(o,"code")],["remediation",$o(o,"remediation")]].filter(i=>i[1]!==void 0))}}catch(o){let i=typeof o=="object"&&o!==null&&"exitCode"in o?o.exitCode:void 0;if(typeof i=="number"&&Number.isFinite(i))throw o;return{handled:!1,result:null,warnings:[`extension_command_handler_failed:${r.layer}:${r.name}:${r.command}`],errorMessage:qT(o),...Object.fromEntries([["errorCode",$o(o,"code")],["remediation",$o(o,"remediation")]].filter(s=>s[1]!==void 0))}}}async function wa(e,t){let n=V(t.command);if(n.length===0)return{overridden:!1,context:{command:n,args:R(t.args),options:he(t.options),global:be(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[]};let r=[...e.overrides].reverse().find(o=>o.command===n);if(!r)return{overridden:!1,context:{command:n,args:R(t.args),options:he(t.options),global:be(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[]};try{let o=await Promise.resolve(r.run({command:n,args:R(t.args),options:he(t.options),global:be(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel}))??{},i=Array.isArray(o.args)?R(o.args):R(t.args),s=o.options?he(o.options):he(t.options),a=o.global?be(o.global):be(t.global);return{overridden:!0,context:{command:n,args:i,options:s,global:a,pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[]}}catch{return{overridden:!1,context:{command:n,args:R(t.args),options:he(t.options),global:be(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[`extension_parser_override_failed:${r.layer}:${r.name}:${r.command}`]}}}async function Ea(e,t){let n={command:V(t.command),args:R(t.args),options:he(t.options),global:be(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},r=R(t.decision),o=[...e.overrides].reverse().find(i=>!i.commands?.length||i.commands.includes(n.command));if(!o)return{overridden:!1,context:n,decision:r,warnings:[]};try{let i=await Promise.resolve(o.run({command:n.command,args:R(n.args),options:he(n.options),global:be(n.global),pm_root:n.pm_root,source_workspace_root:n.source_workspace_root,repo_root:n.repo_root,pm_root_rel:n.pm_root_rel,decision:R(r)}))??{},s={command:n.command,args:Array.isArray(i.args)?R(i.args):n.args,options:i.options?he(i.options):n.options,global:i.global?be(i.global):n.global,pm_root:n.pm_root,source_workspace_root:n.source_workspace_root,repo_root:n.repo_root,pm_root_rel:n.pm_root_rel},a={enforce_item_format_gate:typeof i.enforce_item_format_gate=="boolean"?i.enforce_item_format_gate:r.enforce_item_format_gate,run_preflight_item_format_sync:typeof i.run_preflight_item_format_sync=="boolean"?i.run_preflight_item_format_sync:r.run_preflight_item_format_sync,run_extension_migrations:typeof i.run_extension_migrations=="boolean"?i.run_extension_migrations:r.run_extension_migrations,enforce_mandatory_migration_gate:typeof i.enforce_mandatory_migration_gate=="boolean"?i.enforce_mandatory_migration_gate:r.enforce_mandatory_migration_gate};return{overridden:!0,context:s,decision:a,warnings:[]}}catch{return{overridden:!1,context:n,decision:r,warnings:[`extension_preflight_override_failed:${o.layer}:${o.name}`]}}}function Xu(e){return{handled:!1,result:e.payload,warnings:[]}}function Ju(e,t){return[...e.overrides].reverse().filter(n=>n.service===t)}function Qu(e){return{service:e.service,command:e.command?V(e.command):void 0,args:e.args?R(e.args):void 0,options:e.options?he(e.options):void 0,global:e.global?be(e.global):void 0,pm_root:e.pm_root,source_workspace_root:e.source_workspace_root,repo_root:e.repo_root,pm_root_rel:e.pm_root_rel,payload:R(e.payload)}}function VT(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"handled"))return!1;let t=e.handled;return t===!0?Object.hasOwn(e,"result"):t===!1&&Reflect.ownKeys(e).length===1}function Zu(e,t){return VT(e)?e.handled?{handled:!0,result:e.result}:{handled:!1,result:t.payload}:t.service==="output_format"&&e==null?{handled:!1,result:t.payload}:{handled:!0,result:e}}function ef(e,t,n){return t.service==="output_format"&&typeof e=="object"&&e!==null&&re(e,n.payload)}function Ta(e,t){let n=Ju(e,t.service);if(n.length===0)return Xu(t);let r=[];for(let o of n)try{let i=Qu(t),s=o.run(i);if(s instanceof Promise){r.push(`extension_service_override_async_unsupported:${o.layer}:${o.name}:${o.service}`);continue}if(ef(s,t,i)){r.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Zu(s,t);if(!a.handled)continue;return{handled:!0,result:a.result,warnings:r}}catch{r.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:t.payload,warnings:r}}async function va(e,t){let n=Ju(e,t.service);if(n.length===0)return Xu(t);let r=[];for(let o of n)try{let i=Qu(t),s=await Promise.resolve(o.run(i));if(ef(s,t,i)){r.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Zu(s,t);if(!a.handled)continue;return{handled:!0,result:a.result,warnings:r}}catch{r.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:t.payload,warnings:r}}function Aa(e,t){let n=V(t.command);if(n.length===0)return{overridden:!1,result:t.result,warnings:[]};let r=[...e.overrides].reverse().find(o=>o.command===n);if(!r)return{overridden:!1,result:t.result,warnings:[]};try{let o=he(t.options),i=be(t.global),s=r.run({command:n,args:R(t.args),options:o,global:i,pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel,result:R(t.result)});return s instanceof Promise?{overridden:!1,result:t.result,warnings:[`extension_command_override_async_unsupported:${r.layer}:${r.name}:${r.command}`]}:{overridden:!0,result:s,warnings:[]}}catch{return{overridden:!1,result:t.result,warnings:[`extension_command_override_failed:${r.layer}:${r.name}:${r.command}`]}}}function BT(e,t,n){if((e.commands?.length??0)>0&&!e.commands?.includes(t))return!1;if(e.resultDiscriminator===void 0)return!0;try{return e.resultDiscriminator(R(n))}catch{return!1}}function Sa(e,t){let n=typeof t.command=="string"?V(t.command):"",r=[...e.overrides].reverse().find(o=>o.format===t.format&&BT(o,n,t.result));if(!r)return{overridden:!1,rendered:null,warnings:[]};try{let o=Array.isArray(t.args)?R(t.args):[],i=he(t.options),s=be(t.global),a=typeof t.pm_root=="string"?t.pm_root:"",l=r.run({format:t.format,command:n,args:o,options:i,global:s,pm_root:a,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel,result:R(t.result)});return l==null?{overridden:!1,rendered:null,warnings:[]}:typeof l!="string"?{overridden:!1,rendered:null,warnings:[`extension_renderer_invalid_result:${r.layer}:${r.name}:${r.format}`]}:{overridden:!0,rendered:l,warnings:[]}}catch{return{overridden:!1,rendered:null,warnings:[`extension_renderer_failed:${r.layer}:${r.name}:${r.format}`]}}}import Vt from"node:fs/promises";import Gt from"node:path";import{pathToFileURL as lv}from"node:url";import tf from"path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="624aced5-552c-5354-9e34-b96e267d34d1")}catch{}})();function ka(e,t){let n=tf.relative(e,t);return n.length===0?!0:!n.startsWith("..")&&!tf.isAbsolute(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]="f6ec614c-2e47-5ce0-bbf6-8dde97ffb99e")}catch{}})();var jo=bn;function Uo(e){let t=e.trim().toLowerCase();return jo.includes(t)?t:null}function nf(e){let t=e.trim().toLowerCase();if(t.length===0)return null;let n=Math.max(1,Math.floor(t.length*.34));for(let r of jo)if(Fe(t,r,n)!==null)return r;return null}import HT 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]="e81790e9-3de2-5639-a84d-2c4714afbbf4")}catch{}})();async function rf(e,t){let n=gr.dirname(t.manifest_path),r=gr.relative(n,t.entry_path);if(r.startsWith("..")||gr.isAbsolute(r))throw new Error(`Cannot snapshot extension entry outside its package directory: ${t.entry_path}`);let o=gr.join(e,`${t.layer}-${t.directory.replace(/[^a-zA-Z0-9._-]/gu,"_")}`);return await HT.cp(n,o,{recursive:!0,force:!0}),gr.join(o,r)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1558713a-91ea-5eef-8426-d910e0b77045")}catch{}})();function of(e){let t={beforeCommand:e.hooks.beforeCommand.length,beforeMutation:e.hooks.beforeMutation.length,afterCommand:e.hooks.afterCommand.length,onWrite:e.hooks.onWrite.length,onRead:e.hooks.onRead.length,onIndex:e.hooks.onIndex.length,commandOverrides:e.commands.overrides.length,commandHandlers:e.commands.handlers.length,parserOverrides:e.parsers.overrides.length,preflightOverrides:e.preflight.overrides.length,serviceOverrides:e.services.overrides.length,rendererOverrides:e.renderers.overrides.length,registrations:Object.fromEntries(Object.entries(e.registrations).map(([n,r])=>[n,r.length]))};return()=>{e.hooks.beforeCommand.length=t.beforeCommand,e.hooks.beforeMutation.length=t.beforeMutation,e.hooks.afterCommand.length=t.afterCommand,e.hooks.onWrite.length=t.onWrite,e.hooks.onRead.length=t.onRead,e.hooks.onIndex.length=t.onIndex,e.commands.overrides.length=t.commandOverrides,e.commands.handlers.length=t.commandHandlers,e.parsers.overrides.length=t.parserOverrides,e.preflight.overrides.length=t.preflightOverrides,e.services.overrides.length=t.serviceOverrides,e.renderers.overrides.length=t.rendererOverrides;for(let[n,r]of Object.entries(t.registrations))e.registrations[n].length=r}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="065f61c6-2123-5a6d-984a-569bb14d6911")}catch{}})();function sf(e){let t=typeof e=="function"?e:e.run;if(typeof t!="function")throw new TypeError("registerPreflight override requires a function handler");let n=[...new Set((typeof e=="function"?[]:e.commands??[]).map(r=>{if(typeof r!="string"||r.trim().length===0)throw new TypeError("registerPreflight ownership.commands must contain non-empty command paths");return V(r)}))];return{run:t,...n.length>0?{commands:n}:{}}}function af(e){let t=[];for(let n=1;n<e.overrides.length;n+=1){let r=e.overrides[n];for(let o of e.overrides.slice(0,n))r.commands?.length&&o.commands?.length&&!o.commands.some(i=>r.commands.includes(i))||t.push(`extension_preflight_override_collision:${r.layer}:${r.name}:${o.layer}:${o.name}`)}return t}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="dc9a3977-a78a-501e-b600-45e7031dcebd")}catch{}})();function rt(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return t}function ue(e,t){if(t!==void 0&&typeof t!="boolean")throw new TypeError(`${e} must be a boolean when provided`)}function ae(e,t){if(t!==void 0&&(typeof t!="string"||t.trim().length===0))throw new TypeError(`${e} must be a non-empty string when provided`)}function lf(e,t){if(t===void 0)return;let n=r=>typeof r=="string"||typeof r=="number"||typeof r=="boolean";if(Array.isArray(t)){for(let[r,o]of t.entries())if(!n(o))throw new TypeError(`${e}[${r}] must be a string, number, or boolean`);return}if(!n(t))throw new TypeError(`${e} must be a string, number, or boolean, or an array of these when provided`)}function zt(e,t){if(t!==void 0){if(!Array.isArray(t))throw new TypeError(`${e} must be an array of non-empty strings when provided`);for(let[n,r]of t.entries())if(typeof r!="string"||r.trim().length===0)throw new TypeError(`${e}[${n}] must be a non-empty string`)}}function _r(e,t){if(zt(e,t),!Array.isArray(t))return[];let n=[],r=new Set;for(let o of t){let i=o.trim();i.length===0||r.has(i)||(r.add(i),n.push(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]="45d00ef3-870c-5f3f-89c1-6abd54c518fe")}catch{}})();function cf(e){ae("registerCommand definition.action",e.action),ae("registerCommand definition.description",e.description),ae("registerCommand definition.intent",e.intent),ae("registerCommand definition.tier",e.tier);let t=e.tier;if(t!==void 0&&t!=="core"&&t!=="standard"&&t!=="full"&&t!=="internal")throw new Error("registerCommand definition.tier must be core, standard, full, or internal")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="47bfb287-bdd9-5984-9db4-cb996845d98c")}catch{}})();var xa=Object.freeze([{flag:"--json"},{flag:"--lean"},{flag:"--token-accounting"},{flag:"--output-include",value_name:"fields"},{flag:"--output-limit",value_name:"count"},{flag:"--output-budget",value_name:"tokens"},{flag:"--output-format",value_name:"toon|json"},{flag:"--output-session",value_name:"state"},{flag:"--quiet"},{flag:"--no-changed-fields"},{flag:"--full-changed-fields"},{flag:"--id-only"},{flag:"--pm-path",aliases:["--path"]},{flag:"--no-extensions"},{flag:"--no-pager"},{flag:"--profile"},{flag:"--help"},{flag:"--author",value_name:"id"}]),Ca=new Set(xa.flatMap(e=>[e.flag,...e.aliases??[]]));(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4eccf02f-7401-539f-b843-f55b63ed878c")}catch{}})();var WT=/^--[a-z0-9][a-z0-9_-]*(?:[ =](?:<[^<>]+>|\[[^[\]]+\]))?$/;function KT(e){if(typeof e!="string")return null;let t=e.trim(),n=t.split(/[ =]/,1)[0];return Ca.has(n)?"host_owned_flag_collision":WT.test(t)?null:"malformed_long_flag"}function df(e,t){let n=[e,t].find(i=>typeof i=="string"&&Ca.has(i.trim().split(/[ =]/,1)[0]));if(typeof n=="string")return{token:n.trim().split(/[ =]/,1)[0],failure:"host_owned_flag_collision"};if(typeof e!="string")return null;let r=e.trim(),o=KT(r);return o===null?null:{token:r,failure:o}}function uf(e,t){return t==="host_owned_flag_collision"?`cannot shadow host-owned global flag "${e}"; read it from context.global instead`:`long flag "${e}" must start with a double-dash name such as "--my-flag" or "--my-flag <value>"`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="849502d0-2616-500c-96de-228c0759459d")}catch{}})();function ff(e){return typeof e=="string"?e:String(e)}function yr(e){let n=e.trim().replace(/^>=\s*/,"").replace(/^v/i,"").split(/[+-]/,1)[0];return/^\d+(?:[.-]\d+)*$/.test(n)?n.split(/[.-]/).map(r=>Number(r)):null}function Oa(e,t){let n=yr(e),r=yr(t);if(!n||!r)return null;let o=Math.max(n.length,r.length);for(let i=0;i<o;i+=1){let s=n[i]??0,a=r[i]??0;if(s>a)return 1;if(s<a)return-1}return 0}function pf(e,t){if(e==null)return{kind:"pm_min_version",status:"absent",allowed:!0,required:"",current:t};let n=ff(e);if(typeof e!="string"||n.trim().length===0)return{kind:"pm_min_version",status:"invalid",allowed:!1,required:n,current:t};if(!yr(n))return{kind:"pm_min_version",status:"invalid",allowed:!1,required:n,current:t};if(t===null)return{kind:"pm_min_version",status:"unchecked",allowed:!0,required:n,current:null};let r=Oa(t,n);return r===null?{kind:"pm_min_version",status:"unchecked",allowed:!0,required:n,current:t}:r<0?{kind:"pm_min_version",status:"unmet",allowed:!1,required:n,current:t}:{kind:"pm_min_version",status:"ok",allowed:!0,required:n,current:t}}function mf(e,t,n){if(e==null)return{kind:"pm_max_version",status:"absent",allowed:!0,required:"",current:t};let r=ff(e);if(typeof e!="string"||r.trim().length===0)return{kind:"pm_max_version",status:"invalid",allowed:!1,required:r,current:t};if(/^[<>=~^]/.test(r.trim())||!yr(r))return{kind:"pm_max_version",status:"invalid",allowed:!1,required:r,current:t};if(t===null)return{kind:"pm_max_version",status:"unchecked",allowed:!0,required:r,current:null};let o=Oa(t,r);return o===null?{kind:"pm_max_version",status:"unchecked",allowed:!0,required:r,current:t}:o>0?n==="warn"?{kind:"pm_max_version",status:"exceeded_warn",allowed:!0,required:r,current:t}:{kind:"pm_max_version",status:"exceeded",allowed:!1,required:r,current:t}:{kind:"pm_max_version",status:"ok",allowed:!0,required:r,current:t}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="24383c0a-592e-5105-84a3-a6cfb7801281")}catch{}})();function xe(e){return typeof e!="string"?"":e.trim().toLowerCase()}function M(e){return new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))}function YT(e){let t=e.trim().toLowerCase();if(t.length===0)return"";let n=t.split(/[.:/]/).map(r=>r.replace(/[\s_-]+/g,"")).filter(r=>r.length>0);return n.length===0?"":n.length===1?n[0]:`${n[0]}.${n.slice(1).join("")}`}function Tn(e){return new Set((e??[]).map(t=>YT(t)).filter(t=>t.length>0))}function gf(e){let t=xe(e);return fo.includes(t)?t:"off"}function _f(e){let t=xe(e);return po.includes(t)?t:"off"}function hr(e){let t=xe(e);return mo.includes(t)?t:"none"}function Ia(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return cu.includes(t)?t:void 0}function yf(e){if(typeof e=="string"){let t=Ia(e)??"block";return{global:t,project:t}}return typeof e=="object"&&e!==null&&!Array.isArray(e)?{global:Ia(e.global)??"block",project:Ia(e.project)??"block"}:{global:"block",project:"block"}}function XT(e){return e.global===e.project?e.global:{global:e.global,project:e.project}}function q(e){return[...new Set(e)].sort((t,n)=>t.localeCompare(n))}function JT(e){let t=xe(e.name);return t.length===0?null:{name:t,normalized:{name:t,disabled:e.disabled===!0,requireTrusted:e.require_trusted===!0,requireProvenance:e.require_provenance===!0,sandboxProfile:e.sandbox_profile!==void 0?hr(e.sandbox_profile):void 0,allowedCapabilities:M(e.allowed_capabilities),blockedCapabilities:M(e.blocked_capabilities),allowedSurfaces:Tn(e.allowed_surfaces),blockedSurfaces:Tn(e.blocked_surfaces),allowedCommands:M(e.allowed_commands),blockedCommands:M(e.blocked_commands),allowedActions:M(e.allowed_actions),blockedActions:M(e.blocked_actions),allowedServices:M(e.allowed_services),blockedServices:M(e.blocked_services)}}}function hf(e){let t=new Map;for(let n of e??[]){let r=JT(n);r&&t.set(r.name,r.normalized)}return t}function QT(e){let t=[],n=[...e.overridesByName.values()].sort((o,i)=>o.name.localeCompare(i.name));for(let o of q([...e.allowedCapabilities,...e.blockedCapabilities]))gt(o)||t.push(`extension_policy_unknown_capability:${o}`);for(let o of n)for(let i of q([...o.allowedCapabilities,...o.blockedCapabilities]))gt(i)||t.push(`extension_policy_unknown_capability:${o.name}:${i}`);let r=new Set(go);for(let o of q([...e.allowedSurfaces,...e.blockedSurfaces]))r.has(o)||t.push(`extension_policy_unknown_surface:${o}`);for(let o of n)for(let i of q([...o.allowedSurfaces,...o.blockedSurfaces]))r.has(i)||t.push(`extension_policy_unknown_surface:${o.name}:${i}`);return[...new Set(t)].sort((o,i)=>o.localeCompare(i))}function bf(e){let t=e.extensions?.policy??{},n=M(t.allowed_capabilities),r=M(t.blocked_capabilities),o=Tn(t.allowed_surfaces),i=Tn(t.blocked_surfaces),s=hf(t.extension_overrides);return{mode:gf(t.mode),trustMode:_f(t.trust_mode),pmMaxVersionExceededMode:yf(t.pm_max_version_exceeded_mode),requireProvenance:t.require_provenance===!0,trustedExtensions:M(t.trusted_extensions),defaultSandboxProfile:hr(t.default_sandbox_profile),allowedExtensions:M(t.allowed_extensions),blockedExtensions:M(t.blocked_extensions),allowedCapabilities:n,blockedCapabilities:r,allowedSurfaces:o,blockedSurfaces:i,allowedCommands:M(t.allowed_commands),blockedCommands:M(t.blocked_commands),allowedActions:M(t.allowed_actions),blockedActions:M(t.blocked_actions),allowedServices:M(t.allowed_services),blockedServices:M(t.blocked_services),overridesByName:s,warnings:QT({allowedCapabilities:n,blockedCapabilities:r,allowedSurfaces:o,blockedSurfaces:i,overridesByName:s})}}function wf(e){let t=[...e.overridesByName.values()].sort((n,r)=>n.name.localeCompare(r.name)).map(n=>({name:n.name,...n.disabled?{disabled:!0}:{},...n.requireTrusted?{require_trusted:!0}:{},...n.requireProvenance?{require_provenance:!0}:{},...n.sandboxProfile?{sandbox_profile:n.sandboxProfile}:{},...n.allowedCapabilities.size>0?{allowed_capabilities:q(n.allowedCapabilities)}:{},...n.blockedCapabilities.size>0?{blocked_capabilities:q(n.blockedCapabilities)}:{},...n.allowedSurfaces.size>0?{allowed_surfaces:q(n.allowedSurfaces)}:{},...n.blockedSurfaces.size>0?{blocked_surfaces:q(n.blockedSurfaces)}:{},...n.allowedCommands.size>0?{allowed_commands:q(n.allowedCommands)}:{},...n.blockedCommands.size>0?{blocked_commands:q(n.blockedCommands)}:{},...n.allowedActions.size>0?{allowed_actions:q(n.allowedActions)}:{},...n.blockedActions.size>0?{blocked_actions:q(n.blockedActions)}:{},...n.allowedServices.size>0?{allowed_services:q(n.allowedServices)}:{},...n.blockedServices.size>0?{blocked_services:q(n.blockedServices)}:{}}));return{mode:e.mode,trust_mode:e.trustMode,pm_max_version_exceeded_mode:XT(e.pmMaxVersionExceededMode),require_provenance:e.requireProvenance,trusted_extensions:q(e.trustedExtensions),default_sandbox_profile:e.defaultSandboxProfile,allowed_extensions:q(e.allowedExtensions),blocked_extensions:q(e.blockedExtensions),allowed_capabilities:q(e.allowedCapabilities),blocked_capabilities:q(e.blockedCapabilities),allowed_surfaces:q(e.allowedSurfaces),blocked_surfaces:q(e.blockedSurfaces),allowed_commands:q(e.allowedCommands),blocked_commands:q(e.blockedCommands),allowed_actions:q(e.allowedActions),blocked_actions:q(e.blockedActions),allowed_services:q(e.allowedServices),blocked_services:q(e.blockedServices),extension_overrides:t}}function Ef(e){let t=hf(e.extension_overrides);return{mode:gf(e.mode),trustMode:_f(e.trust_mode),pmMaxVersionExceededMode:yf(e.pm_max_version_exceeded_mode),requireProvenance:e.require_provenance===!0,trustedExtensions:M(e.trusted_extensions),defaultSandboxProfile:hr(e.default_sandbox_profile),allowedExtensions:M(e.allowed_extensions),blockedExtensions:M(e.blocked_extensions),allowedCapabilities:M(e.allowed_capabilities),blockedCapabilities:M(e.blocked_capabilities),allowedSurfaces:Tn(e.allowed_surfaces),blockedSurfaces:Tn(e.blocked_surfaces),allowedCommands:M(e.allowed_commands),blockedCommands:M(e.blocked_commands),allowedActions:M(e.allowed_actions),blockedActions:M(e.blocked_actions),allowedServices:M(e.allowed_services),blockedServices:M(e.blocked_services),overridesByName:t,warnings:[]}}function _t(e,t){return e.overridesByName.get(xe(t))??null}function vn(e,t,n,r,o){return t.has(n)?o:e.size>0&&!e.has(n)?r:null}function Tf(e,t,n){let r=n.trim().toLowerCase(),o=_t(e,t.name),i=o&&o.allowedCapabilities.size>0?o.allowedCapabilities:e.allowedCapabilities,s=new Set([...e.blockedCapabilities,...o?o.blockedCapabilities:[]]);return vn(i,s,r,"capability_not_allowlisted","capability_blocked")}function ZT(e,t,n){let r=_t(e,t.name),o=r&&r.allowedSurfaces.size>0?r.allowedSurfaces:e.allowedSurfaces,i=new Set([...e.blockedSurfaces,...r?r.blockedSurfaces:[]]);return vn(o,i,n,"surface_not_allowlisted","surface_blocked")}function ev(e,t,n){let r=V(n);if(r.length===0)return null;let o=_t(e,t.name),i=o&&o.allowedCommands.size>0?o.allowedCommands:e.allowedCommands,s=new Set([...e.blockedCommands,...o?o.blockedCommands:[]]);return vn(i,s,r,"command_not_allowlisted","command_blocked")}function tv(e,t,n){let r=xe(n).replace(/\s+/g,"-");if(r.length===0)return null;let o=_t(e,t.name),i=o&&o.allowedActions.size>0?o.allowedActions:e.allowedActions,s=new Set([...e.blockedActions,...o?o.blockedActions:[]]);return vn(i,s,r,"action_not_allowlisted","action_blocked")}function nv(e,t,n){let r=xe(n);if(r.length===0)return null;let o=_t(e,t.name),i=o&&o.allowedServices.size>0?o.allowedServices:e.allowedServices,s=new Set([...e.blockedServices,...o?o.blockedServices:[]]);return vn(i,s,r,"service_not_allowlisted","service_blocked")}function rv(e,t){let n=xe(t.name);return _t(e,t.name)?.disabled===!0?"extension_override_disabled":vn(e.allowedExtensions,e.blockedExtensions,n,"extension_not_allowlisted","extension_blocked")}function ov(e,t){if(e.trustMode==="off")return null;let n=_t(e,t.name),r=xe(t.name),o=t.trusted===!0,i=t.provenanceVerified===!0;return e.trustedExtensions.size>0&&!e.trustedExtensions.has(r)?"extension_not_trusted":(n?.requireTrusted===!0||e.trustMode==="warn"||e.trustMode==="enforce")&&!o?"extension_untrusted":(e.requireProvenance||n?.requireProvenance===!0)&&!i?"provenance_missing_or_unverified":null}function iv(e,t){if(e.mode==="off")return null;let r=_t(e,t.name)?.sandboxProfile??t.sandboxProfile??e.defaultSandboxProfile;if(r==="none")return null;let o=t.permissions;if(!o)return"sandbox_permissions_missing";let i=s=>o[s]===!0;return r==="restricted"?i("process_spawn")?"sandbox_restricted_disallows_process_spawn":i("env_write")?"sandbox_restricted_disallows_env_write":null:i("process_spawn")?"sandbox_strict_disallows_process_spawn":i("network")?"sandbox_strict_disallows_network":i("fs_write")?"sandbox_strict_disallows_fs_write":i("env_write")?"sandbox_strict_disallows_env_write":null}function zo(e,t,n,r,o={}){let i=Object.entries(o).sort((a,l)=>a[0].localeCompare(l[0])).map(([a,l])=>`${a}=${l}`).join(":"),s=i.length>0?`:${i}`:"";return`extension_policy_${e}_${t}:${n.layer}:${n.name}:reason=${r}${s}`}function vf(e,t){if(e.mode==="off"&&e.trustMode==="off")return{allowed:!0,warning:null};let n=[],r=rv(e,t);r&&n.push({reason:r,scope:"extension",mode:e.mode});let o=ov(e,t);o&&n.push({reason:o,scope:"trust",mode:e.trustMode});let i=iv(e,t);i&&n.push({reason:i,scope:"extension",mode:e.mode});let s=n.find(l=>l.mode==="enforce");if(s)return{allowed:!1,warning:zo("blocked",s.scope,t,s.reason)};let a=n.find(l=>l.mode==="warn");return a?{allowed:!0,warning:zo("violation",a.scope,t,a.reason)}:{allowed:!0,warning:null}}function Af(e,t,n){if(e.mode==="off")return{allowed:!0,warning:null};let r=Tf(e,t,n);return r?{allowed:e.mode==="warn",warning:zo(e.mode==="warn"?"violation":"blocked","capability",t,r,{capability:n.trim().toLowerCase()})}:{allowed:!0,warning:null}}function sv(e,t,n,r,o){let i=typeof r=="string"?Tf(e,t,r):null,s=ZT(e,t,n),a=o.command?ev(e,t,o.command):null,l=o.action?tv(e,t,o.action):null,c=o.service?nv(e,t,o.service):null;return i??s??a??l??c}function av(e,t,n,r){let o={method:xe(e).replace(/\s+/g,"_"),surface:t};return n&&(o.capability=n),r.command&&(o.command=V(r.command)),r.action&&(o.action=xe(r.action).replace(/\s+/g,"-")),r.service&&(o.service=xe(r.service)),o}function Sf(e,t,n,r,o,i){if(e.mode==="off")return{allowed:!0,warning:null};let s=i??{},a=sv(e,t,n,o,s);if(!a)return{allowed:!0,warning:null};let l=zo(e.mode==="warn"?"violation":"blocked","registration",t,a,av(r,n,o,s));return{allowed:e.mode==="warn",warning:l}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8725b7dd-ec6f-5c71-897a-7a84ce93f5f0")}catch{}})();function kf(e){return!e.extensionReady||!e.enabledForLoad?null:{layer:e.layer,directory:e.directory,manifest_path:e.manifestPath,entry_path:e.entryPath,manifest:e.manifest,source_package:e.sourceIdentity?.package_name,source_aliases:e.sourceIdentity?.aliases,contributions:e.sourceIdentity?.contributions}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3d5208e5-0ea5-54a5-82a8-50294b4a0655")}catch{}})();var cv=100,xf=null,dv=Object.freeze(_o()),Cf=0;function uv(e=Date.now()){return Cf+=1,`${Cf}-${e}`}function Of(e,t){let n=e[t];if(n!=null)return typeof n!="string"||n.trim().length===0?null:n.trim()}function fv(e){if(e==null)return;let t=mn(e);if(!t)return null;let n={};for(let r of Object.keys(t).sort((o,i)=>o.localeCompare(i))){if(r.trim().length===0)return null;let o=t[r];if(typeof o!="string"||o.trim().length===0)return null;n[r.trim()]=o.trim()}return Object.keys(n).length>0?n:void 0}function Ra(e,t){let n=e[t];return typeof n!="string"||n.trim().length===0?null:n.trim()}function Uf(e){if(e!=null)return typeof e!="number"||!Number.isInteger(e)?null:e}function qt(e){if(e!=null)return typeof e!="boolean"?null:e}function pv(e){let t=Uf(e.priority);return t===void 0?cv:t}function mv(e){let t=e.sandbox_profile;if(t==null)return;if(typeof t!="string")return null;let n=hr(t);return n!==t.trim().toLowerCase()?null:n}function Na(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}function gv(e){if(e==null)return;let t=mn(e);if(!t)return null;let n=Na(t.source),r=Na(t.signature),o=Na(t.attestation),i=t.verified===void 0||t.verified===null?void 0:typeof t.verified=="boolean"?t.verified:null;return i===null?null:{...n?{source:n}:{},...r?{signature:r}:{},...o?{attestation:o}:{},...typeof i=="boolean"?{verified:i}:{}}}function _v(e){if(e==null)return;let t=mn(e);if(!t)return null;let n=qt(t.fs_read),r=qt(t.fs_write),o=qt(t.network),i=qt(t.env_read),s=qt(t.env_write),a=qt(t.process_spawn);return[n,r,o,i,s,a].includes(null)?null:{...typeof n=="boolean"?{fs_read:n}:{},...typeof r=="boolean"?{fs_write:r}:{},...typeof o=="boolean"?{network:o}:{},...typeof i=="boolean"?{env_read:i}:{},...typeof s=="boolean"?{env_write:s}:{},...typeof a=="boolean"?{process_spawn:a}:{}}}function yv(e){if(e==null)return{capabilities:[],legacy_aliases:[]};if(!Array.isArray(e)||e.some(n=>typeof n!="string"))return null;let t=Vu(e);return{capabilities:t.capabilities,legacy_aliases:t.legacy_aliases}}function hv(e){if(e==null)return;let t=mn(e);if(!t)return null;let n=t.commands;if(n==null)return;if(!Array.isArray(n)||n.some(o=>typeof o!="string"))return null;let r=[...new Set(n.map(o=>V(o)).filter(o=>o.length>0))].sort((o,i)=>o.localeCompare(i));return r.length>0?{commands:r}:void 0}function bv(e){let t=Uf(e.manifest_version);if(t===null)return null;let n=Of(e,"pm_min_version");if(n===null)return null;let r=Of(e,"pm_max_version");if(r===null)return null;let o=fv(e.engines);if(o===null)return null;let i=qt(e.trusted);if(i===null)return null;let s=mv(e);if(s===null)return null;let a=gv(e.provenance);if(a===null)return null;let l=_v(e.permissions);if(l===null)return null;let c=yv(e.capabilities);if(c===null)return null;let d=hv(e.activation);if(d===null)return null;let u=ma(e.contributions);return u===null?null:{manifest_version:t,pm_min_version:n,pm_max_version:r,engines:o,trusted:i,sandbox_profile:s,provenance:a,permissions:l,capabilities:c.capabilities,legacy_capability_aliases:c.legacy_aliases,activation:d,contributions:u}}function wv(e){if(typeof e!="object"||e===null)return null;let t=e,n=Ra(t,"name");if(n===null)return null;let r=Ra(t,"version");if(r===null)return null;let o=Ra(t,"entry");if(o===null)return null;let i=pv(t);if(i===null)return null;let s=bv(t);return s===null?null:{name:n,version:r,entry:o,priority:i,manifest_version:s.manifest_version,pm_min_version:s.pm_min_version,pm_max_version:s.pm_max_version,engines:s.engines,trusted:s.trusted,provenance:s.provenance,sandbox_profile:s.sandbox_profile,permissions:s.permissions,activation:s.activation,contributions:s.contributions,capabilities:s.capabilities,legacy_capability_aliases:s.legacy_capability_aliases.length>0?s.legacy_capability_aliases:void 0}}function Ev(e,t,n){return n.has(e)?!1:t.size===0?!0:t.has(e)}async function Tv(e,t){let[n,r]=await Promise.all([Vt.realpath(e),Vt.realpath(t)]);return ka(n,r)}function zf(e,t=process.cwd()){return{global:Gt.join(mt(t),"extensions"),project:Gt.join(e,"extensions")}}async function vv(e){try{return(await Vt.readdir(e,{withFileTypes:!0})).filter(n=>n.isDirectory()).map(n=>n.name).sort((n,r)=>n.localeCompare(r))}catch{return[]}}function Av(e){let t={layer:e.layer,directory:e.directory,manifest_path:e.manifest_path,name:e.manifest.name,version:e.manifest.version,entry:e.manifest.entry,priority:e.manifest.priority,entry_path:e.entry_path,manifest_version:e.manifest.manifest_version,pm_min_version:e.manifest.pm_min_version,pm_max_version:e.manifest.pm_max_version,engines:e.manifest.engines,trusted:e.manifest.trusted,provenance:e.manifest.provenance,sandbox_profile:e.manifest.sandbox_profile,permissions:e.manifest.permissions,capabilities:[...e.manifest.capabilities],activation:e.manifest.activation?{commands:[...e.manifest.activation.commands]}:void 0,contributions:e.manifest.contributions??e.contributions};return e.source_package&&(t.source_package=e.source_package),e.source_aliases&&(t.source_aliases=[...e.source_aliases]),t}function If(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}async function Sv(e){let t=new Map;try{let n=JSON.parse(await Vt.readFile(Gt.join(e,".managed-extensions.json"),"utf8")),o=mn(n)?.entries;if(!Array.isArray(o))return t;for(let i of o){if(typeof i!="object"||i===null)continue;let s=i,a=If(s.source?.package),l=[s.source?.input,s.source?.name,a].map(u=>If(u)).filter(u=>u!==void 0),c=ma(s.contributions),d={aliases:[...new Set(l)],...a?{package_name:a}:{},...c?{contributions:c}:{}};typeof s.directory=="string"&&s.directory.trim().length>0&&t.set(`directory:${s.directory.trim()}`,d),typeof s.name=="string"&&s.name.trim().length>0&&t.set(`name:${s.name.trim()}`,d)}}catch{return t}return t}function Rf(e){return[...e].sort((t,n)=>{if(t.manifest.priority!==n.manifest.priority)return t.manifest.priority-n.manifest.priority;let r=t.manifest.name.localeCompare(n.manifest.name);return r!==0?r:t.directory.localeCompare(n.directory)})}function kv(e,t){let n=[...Rf(e),...Rf(t)],r=[];for(let o of n){let i=r.findIndex(s=>s.manifest.name===o.manifest.name);i>=0&&r.splice(i,1),r.push(o)}return r}async function Nf(e,t,n,r,o){let i=[],s=[],a=[],l=await vv(t),c=await Sv(t);for(let d of l){let u=await Ov(e,t,d,n,r,c,o);i.push(u.diagnostic),s.push(...u.warnings),u.candidate&&a.push(u.candidate)}return{diagnostics:i,warnings:s,candidates:a}}function xv(){return{diagnostics:[],warnings:[],candidates:[]}}function Df(e,t,n,r){return{diagnostic:{layer:e,directory:t,manifest_path:n,name:null,version:null,entry:null,priority:null,entry_path:null,enabled:null,status:"warn"},warnings:[r],candidate:null}}function Cv(e,t,n,r,o,i){let s=[];Array.isArray(t.legacy_capability_aliases)&&t.legacy_capability_aliases.length>0&&s.push(Hu(e,t.name,t.legacy_capability_aliases));for(let a of Gu(t.capabilities))s.push(Bu(e,t.name,a));return n?r||s.push(`extension_entry_missing:${e}:${t.name}`):s.push(`extension_entry_outside_extension:${e}:${t.name}`),o.warning&&s.push(o.warning),i.warning&&s.push(i.warning),s}async function Ov(e,t,n,r,o,i,s){let a=Gt.join(t,n),l=Gt.join(a,"manifest.json");if(!await Y(l))return Df(e,n,l,`extension_manifest_missing:${e}:${n}`);let c;try{let z=JSON.parse(await Vt.readFile(l,"utf8"));c=wv(z)}catch{c=null}if(!c)return Df(e,n,l,`extension_manifest_invalid:${e}:${n}`);let d=Gt.resolve(a,c.entry),u=ka(a,d),p=u?await Y(d):!1,f=u&&p?await Tv(a,d):u,y=Ev(c.name,r,o),g=await Rv(e,c),h=await Nv(e,c,s),E=Cv(e,c,f,p,g,h),O=f&&p&&g.allowed&&h.allowed,U=i.get(`directory:${n}`)??i.get(`name:${c.name}`);return{diagnostic:{layer:e,directory:n,manifest_path:l,name:c.name,version:c.version,entry:c.entry,priority:c.priority,entry_path:d,enabled:y,status:O?"ok":"warn"},warnings:E,candidate:kf({layer:e,directory:n,manifestPath:l,entryPath:d,manifest:c,sourceIdentity:U,extensionReady:O,enabledForLoad:y})}}async function qf(e){let t=zf(e.pmRoot,e.cwd??process.cwd()),n=fr(e.settings.extensions.enabled),r=fr(e.settings.extensions.disabled),o=bf(e.settings),i=wf(o);if(e.noExtensions)return{disabled_by_flag:!0,roots:t,configured_enabled:n,configured_disabled:r,discovered:[],effective:[],warnings:[...o.warnings],policy:i};let s=new Set(n),a=new Set(r),l=e.ignoreGlobalExtensions===!0?xv():await Nf("global",t.global,s,a,o.pmMaxVersionExceededMode.global),c=await Nf("project",t.project,s,a,o.pmMaxVersionExceededMode.project),d=[...o.warnings],u=kv(l.candidates,c.candidates),p=[];for(let f of u){let y={layer:f.layer,name:f.manifest.name,trusted:f.manifest.trusted===!0,provenanceVerified:f.manifest.provenance?.verified===!0,sandboxProfile:f.manifest.sandbox_profile,permissions:f.manifest.permissions&&typeof f.manifest.permissions=="object"?{fs_read:f.manifest.permissions.fs_read,fs_write:f.manifest.permissions.fs_write,network:f.manifest.permissions.network,env_read:f.manifest.permissions.env_read,env_write:f.manifest.permissions.env_write,process_spawn:f.manifest.permissions.process_spawn}:void 0},g=vf(o,y);if(g.warning&&d.push(g.warning),!!g.allowed){for(let h of f.manifest.capabilities){let E=Af(o,y,h);E.warning&&d.push(E.warning)}p.push(Av(f))}}return{disabled_by_flag:!1,roots:t,configured_enabled:n,configured_disabled:r,discovered:[...l.diagnostics,...c.diagnostics],effective:p,warnings:[...new Set([...l.warnings,...c.warnings,...d])],policy:i}}function Ho(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}async function Iv(){try{let e=nt(import.meta.url,["../../.."]),t=await Vt.readFile(Gt.join(e,"package.json"),"utf8"),n=JSON.parse(t);return typeof n.version=="string"&&n.version.trim().length>0?n.version.trim():null}catch{return null}}function Gf(){return xf??=Iv(),xf}function Vf(e,t,n){let r=n.current??"unknown";if(n.kind==="pm_min_version")switch(n.status){case"invalid":return`extension_pm_min_version_invalid:${e}:${t.name}:required=${n.required}`;case"unchecked":return`extension_pm_min_version_unchecked:${e}:${t.name}:required=${n.required}:current=${r}`;case"unmet":return`extension_pm_min_version_unmet:${e}:${t.name}:required=${n.required}:current=${r}`;default:return}switch(n.status){case"invalid":return`extension_pm_max_version_invalid:${e}:${t.name}:allowed=${n.required}`;case"unchecked":return`extension_pm_max_version_unchecked:${e}:${t.name}:allowed=${n.required}:current=${r}`;case"exceeded_warn":return`extension_pm_max_version_exceeded_warn:${e}:${t.name}:allowed=${n.required}:current=${r}`;case"exceeded":return`extension_pm_max_version_exceeded:${e}:${t.name}:allowed=${n.required}:current=${r}`;default:return}}async function Rv(e,t){if(t.pm_min_version===void 0)return{allowed:!0};let n=pf(t.pm_min_version,await Gf()),r=Vf(e,t,n);return r?{allowed:n.allowed,warning:r}:{allowed:n.allowed}}async function Nv(e,t,n){if(t.pm_max_version===void 0)return{allowed:!0};let r=mf(t.pm_max_version,await Gf(),n),o=Vf(e,t,r);return o?{allowed:r.allowed,warning:o}:{allowed:r.allowed}}async function Lf(e){try{let t=await Vt.stat(e);return`${Math.trunc(t.mtimeMs)}-${t.size}`}catch{return"missing"}}async function Dv(e,t){let n=e.entry_path;t.module_graph_snapshot_root&&(n=await rf(t.module_graph_snapshot_root,e));let r=new URL(lv(n).href);if(!(t.cache_bust===!0||typeof t.reload_token=="string"))return r.href;let[i,s]=await Promise.all([Lf(e.entry_path),Lf(e.manifest_path)]),a=t.reload_token??uv();return r.searchParams.set("pm_ext_reload",a),r.searchParams.set("pm_ext_entry",i),r.searchParams.set("pm_ext_manifest",s),r.href}async function Lv(e){let t=await qf(e),n=[],r=[],o=[...t.warnings];if(t.disabled_by_flag)return{...t,warnings:o,loaded:n,failed:r};let i=typeof e.extensionFilter=="function"?t.effective.filter(e.extensionFilter):t.effective;for(let s of i)try{let l=await import(await Dv(s,e));n.push({...s,module:l})}catch(a){o.push(`extension_load_failed:${s.layer}:${s.name}`),r.push({layer:s.layer,name:s.name,entry_path:s.entry_path,error:Ho(a)})}return{...t,warnings:o,loaded:n,failed:r}}var Pf=5e3,Pv=2147483647;function Mv(e){let n={activate:e.activate.bind(e)};if(typeof e.deactivate=="function"){let r=e.deactivate;n.deactivate=r.bind(e)}return n}function Bf(e){let t=pu(e);return t?Mv(t):null}async function dU(e,t,n={}){let r=Fv(n?.deactivate_timeout_ms),o=new Set((t?.failed??[]).map(d=>`${d.layer}:${d.name}`)),i=[];for(let d of e.loaded){if(o.has(`${d.layer}:${d.name}`))continue;let u=Bf(d.module);!u||typeof u.deactivate!="function"||i.push({extension:d,deactivate:u.deactivate})}let s=await Promise.all(i.map(async({extension:d,deactivate:u})=>{try{return await $v(u,r),{ok:!0}}catch(p){return{ok:!1,layer:d.layer,name:d.name,error:Ho(p)}}})),a=[],l=[],c=0;for(let d of s){if(d.ok){c+=1;continue}a.push(`extension_deactivate_failed:${d.layer}:${d.name}`),l.push({layer:d.layer,name:d.name,error:d.error})}return{deactivated:c,warnings:a,failed:l}}function Fv(e){return typeof e!="number"||e<0?Pf:e===0||e===1/0?0:Number.isFinite(e)?Math.min(Pv,Math.max(1,Math.floor(e))):Pf}async function $v(e,t){if(t===0){await e();return}let n;try{let r=Promise.resolve().then(()=>e());r.catch(()=>{}),await Promise.race([r,new Promise((o,i)=>{n=setTimeout(()=>{i(new Error(`extension deactivate timed out after ${t}ms`))},t),n.unref?.()})])}finally{clearTimeout(n)}}function jv(e){return e==="toon"||e==="json"}function Uv(e){return tr.includes(e)}function An(e,t){if(typeof t!="function")throw new TypeError(`api.hooks.${e} requires a function handler`)}function Ee(e,t){if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return t.trim()}function qo(e,t){if(typeof t!="function")throw new TypeError(`${e} requires a function handler`)}function Mf(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function Ff(e,t){return V(`${e} ${t}`)}function Vo(e){if(e===null)return null;if(Array.isArray(e))return e.map(t=>Vo(t));if(typeof e=="function")return"[Function]";if(typeof e=="bigint"||typeof e=="symbol")return e.toString();if(typeof e=="object"){let t=e,n={},r=Object.keys(t).sort((o,i)=>o.localeCompare(i));for(let o of r)n[o]=Vo(t[o]);return n}return e}function Bo(e){if(Array.isArray(e))return e.map(t=>Bo(t));if(typeof e=="object"&&e!==null){let t=e,n={};for(let r of Object.keys(t).sort((o,i)=>o.localeCompare(i)))n[r]=Bo(t[r]);return n}return e}var Hf=Symbol("extension_registration_trace");function yt(e,t){let n=new TypeError(e);return Object.defineProperty(n,Hf,{value:t,enumerable:!1,configurable:!1,writable:!1}),n}function zv(e){if(e instanceof Error)return e[Hf]}function Go(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return Vo(t)}function Da(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return Bo(t)}function Fa(e,t){if(!Array.isArray(t))throw new TypeError(`${e} requires an array of object definitions`);return t.map(n=>Go(e,n))}var qv=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","visible"]);function La(e,t){return Fa(e,t).map(n=>(n.repeatable===!0&&(n.list=!0),n))}function Gv(e){return e.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function $f(e,t){if(t===void 0)return e.replace(/\s+/g,"-");if(typeof t!="string"||t.trim().length===0)throw new TypeError("registerCommand definition.action must be a non-empty string when provided");let n=Gv(t);if(n.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return n}function jf(e){if(e===void 0)return[];if(!Array.isArray(e))throw new TypeError("registerCommand definition.arguments must be an array when provided");let t=[];for(let[r,o]of e.entries()){let i=rt(`registerCommand definition.arguments[${r}]`,o),s=Ee(`registerCommand definition.arguments[${r}].name`,i.name);if(ue(`registerCommand definition.arguments[${r}].required`,i.required),ue(`registerCommand definition.arguments[${r}].variadic`,i.variadic),ae(`registerCommand definition.arguments[${r}].description`,i.description),s.includes(" "))throw new TypeError(`registerCommand definition.arguments[${r}].name must not contain spaces`);let a={name:s};i.required===!0&&(a.required=!0),i.variadic===!0&&(a.variadic=!0),typeof i.description=="string"&&(a.description=i.description.trim()),t.push(a)}let n=t.map((r,o)=>r.variadic?o:-1).filter(r=>r>=0);if(n.length>1)throw new TypeError("registerCommand definition.arguments supports at most one variadic argument");if(n.length===1&&n[0]!==t.length-1)throw new TypeError("registerCommand definition.arguments variadic argument must be the final argument");return t}function Pa(e){if(!Array.isArray(e))throw new TypeError("registerFlags flags requires an array of object definitions");for(let[t,n]of e.entries()){let r=rt(`registerFlags flags[${t}]`,n),o=Object.keys(r).filter(l=>!qv.has(l)).sort((l,c)=>l.localeCompare(c));if(o.length>0)throw new TypeError(`registerFlags flags[${t}] contains unknown field(s): ${o.join(", ")}`);let i=r.long,s=r.short;if(i===void 0&&s===void 0)throw new TypeError(`registerFlags flags[${t}] requires at least one of long or short`);ae(`registerFlags flags[${t}].long`,i),ae(`registerFlags flags[${t}].short`,s);let a=df(i,s);if(a!==null)throw new TypeError(`registerFlags flags[${t}] ${uf(a.token,a.failure)}`);if(ae(`registerFlags flags[${t}].value_name`,r.value_name),ae(`registerFlags flags[${t}].description`,r.description),ue(`registerFlags flags[${t}].required`,r.required),ue(`registerFlags flags[${t}].enabled`,r.enabled),ue(`registerFlags flags[${t}].visible`,r.visible),ue(`registerFlags flags[${t}].list`,r.list),ue(`registerFlags flags[${t}].repeatable`,r.repeatable),r.list!==void 0&&r.repeatable!==void 0&&r.list!==r.repeatable)throw new TypeError(`registerFlags flags[${t}].list and repeatable must match when both are provided`);if(lf(`registerFlags flags[${t}].default`,r.default),Array.isArray(r.default)&&r.list!==!0&&r.repeatable!==!0)throw new TypeError(`registerFlags flags[${t}].default cannot be an array unless list is true.`);Vv(`registerFlags flags[${t}]`,r)}}function Vv(e,t){let n=(typeof t.value_type=="string"?t.value_type:void 0)??(typeof t.type=="string"?t.type:void 0);if(n===void 0)return;let r=Ks(n);if(r===null)throw new TypeError(`${e} value_type "${n}" is not a known flag value type (expected one of: string, number, boolean).`);if(t.default===void 0)return;let o=t.list===!0||t.repeatable===!0?Ys(t.default):[t.default];for(let[i,s]of o.entries())if(!Tu(s,r)){let a=o.length>1?`default[${i}]`:"default";throw new TypeError(`${e}.${a} (${JSON.stringify(s)}) is not coercible to ${r}.`)}}function Bv(e){if(!Array.isArray(e))throw new TypeError("registerItemFields fields requires an array of object definitions");for(let[t,n]of e.entries()){let r=rt(`registerItemFields fields[${t}]`,n);Ee(`registerItemFields fields[${t}].name`,r.name);let o=Ee(`registerItemFields fields[${t}].type`,r.type);if(Uo(o)===null){let i=nf(o),s=i?` Did you mean "${i}"?`:"";throw new TypeError(`registerItemFields fields[${t}].type "${o}" is not a known field type (expected one of: ${jo.join(", ")}).${s}`)}ue(`registerItemFields fields[${t}].optional`,r.optional)}}function Hv(e,t){if(t===void 0)return;let n=`registerItemTypes types[${e}].command_option_policies`;if(!Array.isArray(t))throw new TypeError(`${n} must be an array when provided`);for(let[r,o]of t.entries()){let i=`${n}[${r}]`,s=rt(i,o);Ee(`${i}.command`,s.command),Ee(`${i}.option`,s.option),ue(`${i}.enabled`,s.enabled),ue(`${i}.required`,s.required),ue(`${i}.visible`,s.visible)}}function Wv(e,t){if(t===void 0)return;let n=`registerItemTypes types[${e}].options`;if(!Array.isArray(t))throw new TypeError(`${n} must be an array when provided`);for(let[r,o]of t.entries()){let i=`${n}[${r}]`,s=rt(i,o);Ee(`${i}.key`,s.key),zt(`${i}.values`,s.values),ue(`${i}.required`,s.required),zt(`${i}.aliases`,s.aliases)}}function Kv(e){if(!Array.isArray(e))throw new TypeError("registerItemTypes types requires an array of object definitions");for(let[t,n]of e.entries()){let r=`registerItemTypes types[${t}]`,o=rt(r,n);Ee(`${r}.name`,o.name),ae(`${r}.folder`,o.folder),zt(`${r}.aliases`,o.aliases),zt(`${r}.required_create_fields`,o.required_create_fields),zt(`${r}.required_create_repeatables`,o.required_create_repeatables),Hv(t,o.command_option_policies),Wv(t,o.options)}}function Yv(e){let t=rt("registerMigration definition",e);if(t.id!==void 0&&typeof t.id!="string")throw new TypeError("registerMigration definition.id must be a string when provided");if(t.description!==void 0&&typeof t.description!="string")throw new TypeError("registerMigration definition.description must be a string when provided");if(t.status!==void 0&&typeof t.status!="string")throw new TypeError("registerMigration definition.status must be a string when provided");if(ue("registerMigration definition.mandatory",t.mandatory),t.run!==void 0&&typeof t.run!="function")throw new TypeError("registerMigration definition.run must be a function when provided")}var Wf=["types","statuses","fields","workflows","config","templates","packages"],Xv={types:(e,t)=>{if(t.name!==void 0&&typeof t.name!="string")throw new TypeError(`${e}.name must be a string when provided`)},workflows:(e,t)=>{if(typeof t.type!="string")throw new TypeError(`${e}.type must be a string`);if(!Array.isArray(t.allowed_transitions))throw new TypeError(`${e}.allowed_transitions must be an array`);for(let[n,r]of t.allowed_transitions.entries())if(!Array.isArray(r))throw new TypeError(`${e}.allowed_transitions[${n}] must be a [from, to] array`)},templates:(e,t)=>{if(typeof t.name!="string")throw new TypeError(`${e}.name must be a string`);if(typeof t.options!="object"||t.options===null||Array.isArray(t.options))throw new TypeError(`${e}.options must be an object`)},packages:(e,t)=>{if(typeof t.spec!="string")throw new TypeError(`${e}.spec must be a string`)}};function Jv(e){let t=rt("registerProfile profile",e);if(Ee("registerProfile profile.name",t.name),Ee("registerProfile profile.title",t.title),t.summary!==void 0&&typeof t.summary!="string")throw new TypeError("registerProfile profile.summary must be a string when provided");for(let n of Wf){let r=t[n];if(r!==void 0){if(!Array.isArray(r))throw new TypeError(`registerProfile profile.${n} must be an array when provided`);for(let[o,i]of r.entries()){if(typeof i!="object"||i===null||Array.isArray(i))throw new TypeError(`registerProfile profile.${n}[${o}] must be an object`);Xv[n]?.(`registerProfile profile.${n}[${o}]`,i)}}}}function Qv(e){e.summary===void 0&&(e.summary="");for(let t of Wf)e[t]===void 0&&(e[t]=[]);return e}function Ma(e,t){return Object.defineProperty(e,"runtime_definition",{value:t,enumerable:!1,writable:!1,configurable:!1}),e}function Zv(e){if(!Array.isArray(e.capabilities))return null;let t=new Set;for(let n of e.capabilities){let r=n.trim().toLowerCase();gt(r)&&t.add(r)}return t}function H(e,t,n){let r=Zv(e);if(r!==null&&!r.has(t))throw yt(`${n} requires capability '${t}' in extension manifest capabilities`,{method:n,registration_index:-1,capability:t,missing_capability:t,expected_schema:`"capabilities": [..., "${t}"]`,received:e.capabilities,hint:`Add "${t}" to ${e.name} manifest capabilities, or remove the ${n} registration call.`})}function eA(e){return Object.freeze({name:e.name,layer:e.layer,version:e.version,capabilities:Object.freeze((e.capabilities??[]).filter(t=>qe.includes(t))),pm_min_version:e.pm_min_version,pm_max_version:e.pm_max_version,source_package:e.source_package})}function tA(e){return{layer:e.layer,name:e.name,trusted:e.trusted===!0,provenanceVerified:e.provenance?.verified===!0,sandboxProfile:e.sandbox_profile,permissions:e.permissions&&typeof e.permissions=="object"?{fs_read:e.permissions.fs_read,fs_write:e.permissions.fs_write,network:e.permissions.network,env_read:e.permissions.env_read,env_write:e.permissions.env_write,process_spawn:e.permissions.process_spawn}:void 0}}var $a=class{extension;hooks;#e;#n;#o;#r;#s;#a;#i;#l;#t;#c;#d;#u;constructor(t,n,r,o,i,s,a,l,c,d,u){this.#e=t,this.extension=eA(t),this.#n=tA(t),this.#o=n,this.#r=r,this.#s=o,this.#a=i,this.#i=s,this.#l=a,this.#t=l,this.#c=c,this.#d=d,this.#u=u,this.registerCommand=this.registerCommand.bind(this),this.registerParser=this.registerParser.bind(this),this.registerPreflight=this.registerPreflight.bind(this),this.registerService=this.registerService.bind(this),this.registerFlags=this.registerFlags.bind(this),this.registerItemFields=this.registerItemFields.bind(this),this.registerItemTypes=this.registerItemTypes.bind(this),this.registerRelationshipKinds=this.registerRelationshipKinds.bind(this),this.registerMigration=this.registerMigration.bind(this),this.registerProfile=this.registerProfile.bind(this),this.registerRenderer=this.registerRenderer.bind(this),this.registerImporter=this.registerImporter.bind(this),this.registerExporter=this.registerExporter.bind(this),this.registerSearchProvider=this.registerSearchProvider.bind(this),this.registerVectorStoreAdapter=this.registerVectorStoreAdapter.bind(this),this.hooks={beforeCommand:p=>this.registerBeforeCommand(p),beforeMutation:p=>this.registerBeforeMutation(p),afterCommand:p=>this.registerAfterCommand(p),onWrite:p=>this.registerOnWrite(p),onRead:p=>this.registerOnRead(p),onIndex:p=>this.registerOnIndex(p)}}allowRegistration(t,n,r,o){let i=Sf(this.#u,this.#n,t,n,r,o);return i.warning&&this.#c.push(i.warning),i.allowed}registerCommandTrace(t,n,r,o,i){return{method:"registerCommand",registration_index:t==="override"?this.#r.overrides.length:this.#r.handlers.length,command:n,expected_schema:r,received:Vo(o),hint:i}}registerCommandOverride(t,n){let r=V(t);if(r.length===0)throw yt("registerCommand requires a non-empty command name",this.registerCommandTrace("override",t,'registerCommand("<command>", (context) => unknown)',t,"Provide a non-empty command path as the first argument."));if(typeof n!="function"){let o=this.registerCommandTrace("override",r,'registerCommand("<command>", (context) => unknown)',n,"Provide a function as the second registerCommand argument.");throw yt(`registerCommand requires an override function when command name is provided (command="${r}", registration_index=${o.registration_index})`,o)}this.allowRegistration("commands.override","registerCommand","commands",{command:r})&&this.#r.overrides.push({layer:this.#e.layer,name:this.#e.name,command:r,run:n})}resolveCommandDefinitionRunHandler(t,n){let r=typeof t.run=="function"?t.run:void 0,o=typeof t.handler=="function"?t.handler:void 0;return!r&&o&&this.#c.push(`extension_command_definition_legacy_handler_alias:${this.#e.layer}:${this.#e.name}:${n}`),r??o}registerCommandDefinition(t){if(typeof t!="object"||t===null)throw yt("registerCommand requires a command definition object",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",t,'Use registerCommand({ name: "command path", run: (context) => ... }).'));if(typeof t.name!="string")throw yt("registerCommand requires a command definition name",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",t,"Set command definition.name to a non-empty string command path."));let n=V(t.name);if(n.length===0)throw yt("registerCommand requires a non-empty command definition name",this.registerCommandTrace("definition",t.name,"{ name: string; run: (context) => unknown; }",t,"Ensure command definition.name contains a non-empty command path."));let r=this.resolveCommandDefinitionRunHandler(t,n);if(typeof r!="function"){let o=this.registerCommandTrace("definition",n,"{ name: string; run: (context) => unknown; }",r,"Define command definition.run as a function.");throw yt(`registerCommand requires a command definition run handler (command="${n}", registration_index=${o.registration_index})`,o)}try{cf(t);let o=$f(n,t.action);if(!this.allowRegistration("commands.handler","registerCommand","commands",{command:n,action:o}))return;let i=t.description?.trim(),s=t.intent?.trim(),a=_r("registerCommand definition.examples",t.examples),l=_r("registerCommand definition.failure_hints",t.failure_hints),c=jf(t.arguments);t.flags!==void 0&&(H(this.#e,"schema","registerCommand flags"),this.allowRegistration("schema.flags","registerCommand flags","schema")&&(Pa(t.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:n,flags:La("registerCommand definition.flags",t.flags)})));let d={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:n,action:o,examples:a,failure_hints:l,arguments:c,tier:t.tier};i&&(d.description=i),s&&(d.intent=s),this.#t.commands.push(d)}catch(o){let i=Ho(o),s=this.registerCommandTrace("definition",n,"{ name: string; run: (context) => unknown; action?: string; arguments?: object[]; flags?: object[]; }",t,i),a=yt(`registerCommand definition metadata invalid (command="${n}", registration_index=${s.registration_index}): ${i}`,s);this.#c.push(`extension_command_quarantined:${this.#e.layer}:${this.#e.name}:${n}`),this.#d.push({layer:this.#e.layer,name:this.#e.name,entry_path:this.#e.entry_path,error:a.message,trace:s});return}this.#r.handlers.push({layer:this.#e.layer,name:this.#e.name,command:n,run:r})}registerCommand(t,n){if(H(this.#e,"commands","registerCommand"),typeof t=="string"){this.registerCommandOverride(t,n);return}this.registerCommandDefinition(t)}registerParser(t,n){if(H(this.#e,"parser","registerParser"),!this.allowRegistration("parser.override","registerParser","parser"))return;let r=V(Ee("registerParser command",t));qo("registerParser override",n),this.#s.overrides.push({layer:this.#e.layer,name:this.#e.name,command:r,run:n})}registerPreflight(t){if(H(this.#e,"preflight","registerPreflight"),!this.allowRegistration("preflight.override","registerPreflight","preflight"))return;let n=sf(t);this.#a.overrides.push({layer:this.#e.layer,name:this.#e.name,...n})}registerService(t,n){H(this.#e,"services","registerService");let r=String(t).trim().toLowerCase();if(!Uv(r))throw new TypeError(`registerService service must be one of: ${tr.join(", ")}`);this.allowRegistration("services.override","registerService","services",{service:r})&&(qo("registerService override",n),this.#i.overrides.push({layer:this.#e.layer,name:this.#e.name,service:r,run:n}))}registerRenderer(t,n,r={}){if(H(this.#e,"renderers","registerRenderer"),!this.allowRegistration("renderers.override","registerRenderer","renderers"))return;if(typeof n!="function")throw new TypeError("registerRenderer requires a renderer function");let o=String(t).trim().toLowerCase();if(!jv(o))throw new Error(`registerRenderer format must be toon|json, received: ${String(t)}`);if(r.resultDiscriminator!==void 0&&typeof r.resultDiscriminator!="function")throw new TypeError("registerRenderer ownership.resultDiscriminator must be a function when provided");let i=[...new Set((r.commands??[]).map(s=>{if(typeof s!="string"||s.trim().length===0)throw new TypeError("registerRenderer ownership.commands must contain non-empty command paths");return V(s)}))];this.#l.overrides.push({layer:this.#e.layer,name:this.#e.name,format:o,run:n,commands:i,...r.resultDiscriminator?{resultDiscriminator:r.resultDiscriminator}:{}})}registerFlags(t,n){if(H(this.#e,"schema","registerFlags"),!this.allowRegistration("schema.flags","registerFlags","schema"))return;let r=V(Ee("registerFlags targetCommand",t));Pa(n);let o=La("registerFlags flags",n);if(o.length===0)throw new TypeError("registerFlags requires at least one flag definition");this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:o})}registerItemFields(t){if(H(this.#e,"schema","registerItemFields"),!this.allowRegistration("schema.itemfields","registerItemFields","schema"))return;Bv(t);let n=Fa("registerItemFields fields",t);if(n.length===0)throw new TypeError("registerItemFields requires at least one field definition");this.#t.item_fields.push({layer:this.#e.layer,name:this.#e.name,fields:n})}registerItemTypes(t){if(H(this.#e,"schema","registerItemTypes"),!this.allowRegistration("schema.itemtypes","registerItemTypes","schema"))return;Kv(t);let n=Fa("registerItemTypes types",t);if(n.length===0)throw new TypeError("registerItemTypes requires at least one type definition");this.#t.item_types.push({layer:this.#e.layer,name:this.#e.name,types:n})}registerRelationshipKinds(t){if(H(this.#e,"schema","registerRelationshipKinds"),!this.allowRegistration("schema.relationshipkinds","registerRelationshipKinds","schema"))return;if(!Array.isArray(t))throw new TypeError("registerRelationshipKinds definitions requires an array of object definitions");if(t.length===0)throw new TypeError("registerRelationshipKinds requires at least one definition");let n=aa();for(let o of this.#t.relationship_kinds)for(let i of o.definitions)n.register(i);let r=t.map(o=>(n.register(o),n.require(o.kind)));this.#t.relationship_kinds.push({layer:this.#e.layer,name:this.#e.name,definitions:r})}registerMigration(t){if(H(this.#e,"schema","registerMigration"),!this.allowRegistration("schema.migrations","registerMigration","schema"))return;Yv(t);let n=Da("registerMigration definition",t);this.#t.migrations.push(Ma({layer:this.#e.layer,name:this.#e.name,definition:Go("registerMigration definition",t)},n))}registerProfile(t){if(H(this.#e,"schema","registerProfile"),!this.allowRegistration("schema.profiles","registerProfile","schema"))return;let n=Bo(t);Jv(n),this.#t.profiles.push({layer:this.#e.layer,name:this.#e.name,profile:Qv(n)})}applyImportExportCommandMetadata(t,n,r){if(r!==void 0&&(typeof r!="object"||r===null||Array.isArray(r)))throw new TypeError(`${t} options must be an object when provided`);let o=`${t==="registerImporter"?"Import":"Export"} items with the registered extension adapter.`,i=[{name:"file",required:!1,description:"Optional input or output file path."}],s={...r,description:r?.description??o,arguments:r?.arguments??i};ae(`${t} options.action`,s.action),ae(`${t} options.description`,s.description),ae(`${t} options.intent`,s.intent);let a=$f(n,s.action),l=_r(`${t} options.examples`,s.examples),c=_r(`${t} options.failure_hints`,s.failure_hints),d=jf(s.arguments);s.flags!==void 0&&(H(this.#e,"schema",`${t} options.flags`),this.allowRegistration("schema.flags",`${t} options.flags`,"schema")&&(Pa(s.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:n,flags:La(`${t} options.flags`,s.flags)})));let u={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:n,action:a,examples:l,failure_hints:c,arguments:d},p=s.description?.trim();p&&(u.description=p);let f=s.intent?.trim();f&&(u.intent=f),this.#t.commands.push(u)}registerImporter(t,n,r){if(H(this.#e,"importers","registerImporter"),!this.allowRegistration("importers.importer","registerImporter","importers"))return;let o=Mf(Ee("registerImporter name",t));qo("registerImporter importer",n);let i=Ff(o,"import");this.applyImportExportCommandMetadata("registerImporter",i,r),this.#t.importers.push({layer:this.#e.layer,name:this.#e.name,importer:o}),this.#r.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>n({registration:o,action:"import",command:s.command,args:R(s.args),options:R(s.options),global:R(s.global),pm_root:s.pm_root,source_workspace_root:s.source_workspace_root,repo_root:s.repo_root,pm_root_rel:s.pm_root_rel,...s.sdk===void 0?{}:{sdk:s.sdk}})})}registerExporter(t,n,r){if(H(this.#e,"importers","registerExporter"),!this.allowRegistration("importers.exporter","registerExporter","importers"))return;let o=Mf(Ee("registerExporter name",t));qo("registerExporter exporter",n);let i=Ff(o,"export");this.applyImportExportCommandMetadata("registerExporter",i,r),this.#t.exporters.push({layer:this.#e.layer,name:this.#e.name,exporter:o}),this.#r.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>n({registration:o,action:"export",command:s.command,args:R(s.args),options:R(s.options),global:R(s.global),pm_root:s.pm_root,source_workspace_root:s.source_workspace_root,repo_root:s.repo_root,pm_root_rel:s.pm_root_rel,...s.sdk===void 0?{}:{sdk:s.sdk}})})}registerSearchProvider(t){if(H(this.#e,"search","registerSearchProvider"),!this.allowRegistration("search.provider","registerSearchProvider","search"))return;let n=Da("registerSearchProvider provider",t);this.#t.search_providers.push(Ma({layer:this.#e.layer,name:this.#e.name,definition:Go("registerSearchProvider provider",t)},n))}registerVectorStoreAdapter(t){if(H(this.#e,"search","registerVectorStoreAdapter"),!this.allowRegistration("search.vectorstore","registerVectorStoreAdapter","search"))return;let n=Da("registerVectorStoreAdapter adapter",t);this.#t.vector_store_adapters.push(Ma({layer:this.#e.layer,name:this.#e.name,definition:Go("registerVectorStoreAdapter adapter",t)},n))}registerBeforeCommand(t){H(this.#e,"hooks","api.hooks.beforeCommand"),this.allowRegistration("hooks.beforecommand","api.hooks.beforeCommand","hooks")&&(An("beforeCommand",t),this.#o.beforeCommand.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerBeforeMutation(t){H(this.#e,"hooks","api.hooks.beforeMutation"),this.allowRegistration("hooks.beforemutation","api.hooks.beforeMutation","hooks")&&(An("beforeMutation",t),this.#o.beforeMutation.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerAfterCommand(t){H(this.#e,"hooks","api.hooks.afterCommand"),this.allowRegistration("hooks.aftercommand","api.hooks.afterCommand","hooks")&&(An("afterCommand",t),this.#o.afterCommand.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnWrite(t){H(this.#e,"hooks","api.hooks.onWrite"),this.allowRegistration("hooks.onwrite","api.hooks.onWrite","hooks")&&(An("onWrite",t),this.#o.onWrite.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnRead(t){H(this.#e,"hooks","api.hooks.onRead"),this.allowRegistration("hooks.onread","api.hooks.onRead","hooks")&&(An("onRead",t),this.#o.onRead.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnIndex(t){H(this.#e,"hooks","api.hooks.onIndex"),this.allowRegistration("hooks.onindex","api.hooks.onIndex","hooks")&&(An("onIndex",t),this.#o.onIndex.push({layer:this.#e.layer,name:this.#e.name,run:t}))}};function nA(e,t,n,r,o,i,s,a,l,c,d){return new $a(e,t,n,r,o,i,s,a,l,c,d)}function rA(e){let t=e.commands.length,n=e.flags.reduce((s,a)=>s+a.flags.length,0),r=e.item_fields.reduce((s,a)=>s+a.fields.length,0),o=e.item_types.reduce((s,a)=>s+a.types.length,0),i=(e.relationship_kinds??[]).reduce((s,a)=>s+a.definitions.length,0);return{commands:t,flags:n,item_fields:r,item_types:o,...i>0?{relationship_kinds:i}:{},migrations:e.migrations.length,profiles:e.profiles.length,importers:e.importers.length,exporters:e.exporters.length,search_providers:e.search_providers.length,vector_store_adapters:e.vector_store_adapters.length}}function oA(e){let t=[],n=(i,s)=>{let a=new Map;for(let l of i){let c=a.get(l.command)??[];c.push(l),a.set(l.command,c)}for(let l of[...a.keys()].sort((c,d)=>c.localeCompare(d))){let c=a.get(l);if(c.length<=1)continue;let d=c[c.length-1];for(let u of c.slice(0,-1))t.push(`${s}:${l}:${d.layer}:${d.name}:${u.layer}:${u.name}`)}};n(e.handlers,"extension_command_handler_collision"),n(e.overrides,"extension_command_override_collision");let r=new Set(e.handlers.map(i=>i.command)),o=[...new Set(e.overrides.map(i=>i.command))].filter(i=>r.has(i));o.sort((i,s)=>i.localeCompare(s));for(let i of o){let s=e.handlers.filter(l=>l.command===i),a=e.overrides.filter(l=>l.command===i);for(let l of a)for(let c of s)t.push(`extension_command_override_handler_overlap:${i}:${l.layer}:${l.name}:${c.layer}:${c.name}`)}return t}function iA(e){let t=new Map;for(let r of e.overrides){let o=t.get(r.format)??[];o.push(r),t.set(r.format,o)}let n=[];for(let r of[...t.keys()].sort((o,i)=>o.localeCompare(i))){let o=t.get(r);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))i.commands?.length&&s.commands?.length&&!s.commands.some(a=>i.commands?.includes(a))||n.push(`extension_renderer_collision:${r}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return n}function sA(e){let t=[],n=new Map;for(let r of e.overrides){let o=n.get(r.command)??[];o.push(r),n.set(r.command,o)}for(let r of[...n.keys()].sort((o,i)=>o.localeCompare(i))){let o=n.get(r);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))t.push(`extension_parser_override_collision:${r}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return t}var aA=new Set(["output_format"]);function lA(e){let t=[],n=new Map;for(let r of e.overrides){let o=n.get(r.service)??[];o.push(r),n.set(r.service,o)}for(let r of[...n.keys()].sort((o,i)=>o.localeCompare(i))){let o=n.get(r);if(o.length<=1||aA.has(r))continue;let i=o[o.length-1];for(let s of o.slice(0,-1))t.push(`extension_service_override_collision:${r}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return t}async function cA(e){let t=Ef(e.policy??dv),n=pr(),r=ca(),o=da(),i=ua(),s=fa(),a=pa(),l=Mo(),c=[],d=[];for(let f of e.loaded){let y=Bf(f.module);if(!y)continue;let g=c.length,h=of({hooks:n,commands:r,parsers:o,preflight:i,services:s,renderers:a,registrations:l});try{await y.activate(nA(f,n,r,o,i,s,a,l,d,c,t)),c.length>g&&(h(),d.push(`extension_activation_rolled_back:${f.layer}:${f.name}`))}catch(E){h(),d.push(`extension_activate_failed:${f.layer}:${f.name}`);let O=zv(E);c.push({layer:f.layer,name:f.name,entry_path:f.entry_path,error:Ho(E),trace:O})}}let u=[...oA(r),...sA(o),...af(i),...lA(s),...iA(a)],p=[...new Set([...d,...u])];return{hooks:n,commands:r,parsers:o,preflight:i,services:s,renderers:a,registrations:l,failed:c,warnings:p,hook_counts:{before_command:n.beforeCommand.length,before_mutation:n.beforeMutation.length,after_command:n.afterCommand.length,on_write:n.onWrite.length,on_read:n.onRead.length,on_index:n.onIndex.length},command_override_count:r.overrides.length,command_handler_count:r.handlers.length,parser_override_count:o.overrides.length,preflight_override_count:i.overrides.length,service_override_count:s.overrides.length,renderer_override_count:a.overrides.length,registration_counts:rA(l)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bd9832a9-f6a2-5351-a929-0a0d2766df88")}catch{}})();function dA(e){return{...e,hooks:pr(),profileEnabled:!!e.globalOptions.profile,migrationBlockers:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3239b2c7-3ae3-5d4e-9005-b61000362304")}catch{}})();function hU(){let e=Promise.resolve(),t=new Set;return{async read(n){let r=e,o,i=new Promise(s=>{o=s});t.add(i),await r;try{return await n()}finally{t.delete(i),o()}},write(n){let o=Promise.all([e,...t]).then(()=>n());return e=o.then(()=>{},()=>{}),o}}}function Kf(){let e=Promise.resolve(),t=0,n=[],r=()=>{if(t!==0)return;let o=n.splice(0);for(let i of o)i()};return{enqueue(o){t++;let i=e.then(()=>o());return e=i.then(()=>{},()=>{}).finally(()=>{t--,r()}),i},idle(){return t===0?Promise.resolve():new Promise(o=>n.push(o))}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3f347c0d-2e1f-5d17-9e38-bae834f845d3")}catch{}})();var uA={commands:["registerCommand","command override","command handler"],renderers:["registerRenderer"],hooks:["hooks.beforeCommand","hooks.beforeMutation","hooks.afterCommand","hooks.onWrite","hooks.onRead","hooks.onIndex"],schema:["registerFlags","registerItemFields","registerItemTypes","registerRelationshipKinds","registerMigration","registerProfile"],importers:["registerImporter","registerExporter"],search:["registerSearchProvider","registerVectorStoreAdapter"],parser:["registerParser"],preflight:["registerPreflight"],services:["registerService"]},Yf=":";function Xf(e,t){return`${e}${Yf}${ja(t)}`}function fA(e){return e.slice(e.indexOf(Yf)+1)}function ja(e){return e.trim().toLowerCase()}function pA(e){if(!Array.isArray(e))return[];let t=new Set;for(let n of e){let r=qu(n);r!==null&&t.add(r)}return[...t].sort((n,r)=>n.localeCompare(r))}function Jf(e){let t=new Map,n=(d,u)=>{for(let p of d){let f=Xf(p.layer,p.name),y=t.get(f);y===void 0&&(y=new Set,t.set(f,y)),y.add(u)}},{registrations:r,commands:o,parsers:i,preflight:s,services:a,renderers:l,hooks:c}=e;return n(r.commands,"commands"),n(o.overrides,"commands"),n(o.handlers,"commands"),n(r.flags,"schema"),n(r.item_fields,"schema"),n(r.item_types,"schema"),n(r.relationship_kinds??[],"schema"),n(r.migrations,"schema"),n(r.profiles,"schema"),n(r.importers,"importers"),n(r.exporters,"importers"),n(r.search_providers,"search"),n(r.vector_store_adapters,"search"),n(i.overrides,"parser"),n(s.overrides,"preflight"),n(a.overrides,"services"),n(l.overrides,"renderers"),n(c.beforeCommand,"hooks"),n(c.beforeMutation,"hooks"),n(c.afterCommand,"hooks"),n(c.onWrite,"hooks"),n(c.onRead,"hooks"),n(c.onIndex,"hooks"),t}function mA(e,t={}){let n=Jf(e),r=new Set;t.extensionName!==void 0&&r.add(ja(t.extensionName));for(let i of t.extensionNames??[])r.add(ja(i));let o=new Set;for(let[i,s]of n)if(!(r.size>0&&!r.has(fA(i))))for(let a of s)o.add(a);return[...o].sort((i,s)=>i.localeCompare(s))}function gA(e,t){let n=Jf(t),r=[];for(let o of e){let i=pA(o.capabilities);if(i.length===0)continue;let s=n.get(Xf(o.layer,o.name))??new Set,a=[...s].sort((c,d)=>c.localeCompare(d)),l=i.filter(c=>!s.has(c));r.push({layer:o.layer,name:o.name,declared:i,used:a,unused:l})}return r}import{existsSync as _A}from"node:fs";import{AsyncLocalStorage as yA}from"node:async_hooks";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]="38024e6c-c1ef-5c15-8421-ac18d317e330")}catch{}})();var ht=null,br=null,Ko=null,Yo=null,wr=null,Xo=null,Jo=null,Bt=null,Qo,Wo=[],Zf=new yA;function j(){return Zf.getStore()}function kU(e){return Zf.run({hooks:null,commands:null,parsers:null,preflight:null,services:null,renderers:null,registrations:null,commandContext:null,commandResult:void 0,affectedItems:[]},e)}var hA=new Set(["body","comments","dependencies","docs","events","files","learnings","notes","reminders","test_runs","tests"]);function Qf(e){let t=ot.resolve(e);for(;;){if(_A(ot.join(t,".git")))return t;let n=ot.dirname(t);if(n===t)return;t=n}}function Zo(e){let t=process.env.PM_SOURCE_WORKSPACE_ROOT?.trim()||process.cwd(),n=Qf(t)??ot.resolve(t),r=Qf(n);if(!e)return{source_workspace_root:n,...r?{repo_root:r}:{}};let o=ot.relative(n,ot.resolve(e)),i=o.length>0&&!o.startsWith(`..${ot.sep}`)&&o!==".."&&!ot.isAbsolute(o);return{source_workspace_root:n,...r?{repo_root:r}:{},...i?{pm_root_rel:o.split(ot.sep).join("/")}:{}}}function bA(e){let t=j();if(t){t.hooks=e;return}ht=e}function wA(e){let t=j();if(t){t.commands=e;return}br=e}function EA(e){let t=j();if(t){t.parsers=e;return}Ko=e}function TA(e){let t=j();if(t){t.preflight=e;return}Yo=e}function vA(e){let t=j();if(t){t.services=e;return}wr=e}function AA(e){let t=j();if(t){t.renderers=e;return}Xo=e}function SA(e){let t=j();if(t){t.registrations=e;return}Jo=e}function bt(){let e=j();return e?e.registrations:Jo}function kA(){let e=j();if(e){e.hooks=null,e.commands=null,e.parsers=null,e.preflight=null,e.services=null,e.renderers=null,e.registrations=null,e.commandContext=null,e.commandResult=null,e.affectedItems=[];return}ht=null,br=null,Ko=null,Yo=null,wr=null,Xo=null,Jo=null,Bt=null,Qo=null}function xA(e){let t=e?{...e,...Zo(e.pm_root)}:null,n=j();if(n){n.commandContext=t;return}Bt=t}function ep(){let e=j(),t=e?e.commandContext:Bt;return t?{...t,args:[...t.args],options:t.options?{...t.options}:{},global:t.global?{...t.global}:void 0}:null}function Sn(e){let t=j();if(t){t.commandResult=e;return}Qo=e}function CA(){let e=j();return e?e.commandResult:Qo}function ei(e){if(!e)return;let t=j();t?t.affectedItems.push(e):Wo.push(e)}function Er(e,t){if(!e||!e.id)return{};let n={id:e.id,type:e.type,status:e.status};if(!Array.isArray(t))return n;let r=e;for(let o of t){if(typeof o!="string")continue;let i=o.startsWith("unset:")?o.slice(6):o;i==="id"||i==="type"||i==="status"||hA.has(i)||Object.hasOwn(r,i)&&r[i]!==void 0&&(n[i]=r[i])}return n}function OA(){let e=j(),t=e?.affectedItems??Wo;if(t.length===0)return;let n=t;return e?e.affectedItems=[]:Wo=[],n}function IA(){let e=j();if(e){e.hooks=null,e.commands=null,e.parsers=null,e.preflight=null,e.services=null,e.renderers=null,e.registrations=null,e.commandContext=null,e.commandResult=void 0,e.affectedItems=[];return}ht=null,br=null,Ko=null,Yo=null,wr=null,Xo=null,Jo=null,Bt=null,Qo=void 0,Wo=[]}async function le(e){let t=j(),n=t?t.hooks:ht;return n?_a(n,e):[]}async function ti(e){let t=j(),n=t?t.hooks:ht;n&&await ga(n,e)}async function $e(e){let t=j(),n=t?t.hooks:ht;return n?ya(n,e):[]}function Ua(){let e=j();return((e?e.hooks:ht)?.onRead?.length??0)>0}async function RA(e){let t=j(),n=t?t.hooks:ht;return n?ha(n,e):[]}function tp(e){let t=j(),n=t?t.commands:br,r=t?t.commandContext:Bt;return!n||!r?{overridden:!1,result:e,warnings:[]}:Aa(n,{command:r.command,args:[...r.args],options:r.options?{...r.options}:{},global:r.global?{...r.global}:void 0,pm_root:r.pm_root,source_workspace_root:r.source_workspace_root,repo_root:r.repo_root,pm_root_rel:r.pm_root_rel,result:e})}async function NA(e){let t=j(),n=t?t.commands:br;return n?ba(n,{...e,...Zo(e.pm_root)}):{handled:!1,result:null,warnings:[]}}async function DA(e){let t=j(),n=t?t.parsers:Ko;return n?wa(n,{...e,...Zo(e.pm_root)}):{overridden:!1,context:{command:e.command,args:[...e.args],options:{...e.options},global:{...e.global},pm_root:e.pm_root},warnings:[]}}async function LA(e){let t=j(),n=t?t.preflight:Yo;return n?Ea(n,{...e,...Zo(e.pm_root)}):{overridden:!1,context:{command:e.command,args:[...e.args],options:{...e.options},global:{...e.global},pm_root:e.pm_root},decision:{...e.decision},warnings:[]}}function np(e,t){let n=j(),r=n?n.renderers:Xo,o=n?n.commandContext:Bt;return r?Sa(r,{format:e,command:o?.command,args:o?[...o.args]:[],options:o?.options?{...o.options}:{},global:o?.global?{...o.global}:void 0,pm_root:o?.pm_root,source_workspace_root:o?.source_workspace_root,repo_root:o?.repo_root,pm_root_rel:o?.pm_root_rel,result:t}):{overridden:!1,rendered:null,warnings:[]}}function rp(e,t){let n=j(),r=n?n.commandContext:Bt;return{service:e,command:r?.command,args:r?[...r.args]:[],options:r?.options?{...r.options}:{},global:r?.global?{...r.global}:void 0,pm_root:r?.pm_root,source_workspace_root:r?.source_workspace_root,repo_root:r?.repo_root,pm_root_rel:r?.pm_root_rel,payload:t}}async function Ce(e,t){let n=j(),r=n?n.services:wr;return r?va(r,rp(e,t)):{handled:!1,result:t,warnings:[]}}function za(e,t){let n=j(),r=n?n.services:wr;return r?Ta(r,rp(e,t)):{handled:!1,result:t,warnings:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ce320988-b999-57c9-a786-a94ac66c5628")}catch{}})();var Ht=new Set(Me),ni=Object.freeze({get size(){return Ht.size},has(e){return Ht.has(e)},entries(){return Ht.entries()},keys(){return Ht.keys()},values(){return Ht.values()},forEach(e,t){Ht.forEach(n=>e.call(t,n,n,ni))},[Symbol.iterator](){return Ht.values()}});function op(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function ip(e){return typeof e!="string"?null:Uo(e)}function PA(e){try{return structuredClone(e)}catch{return e}}function MA(e){let t=e.trim(),n=t.indexOf("=");if(n<=0)throw new b(`--field entries must use name=value syntax, received: ${e}`,_.USAGE);let r=t.slice(0,n).trim(),o=t.slice(n+1);return{key:r,value:o}}function FA(e){return`--${e.replaceAll("_","-")}`}function $A(e,t,n){try{let r=JSON.parse(e);if(n==="array"&&Array.isArray(r)||n==="object"&&typeof r=="object"&&r!==null&&!Array.isArray(r))return r}catch{}throw new b(`--field ${t}=... must be valid JSON ${n}`,_.USAGE)}function jA(e,t,n){if(t==="string")return n;if(t==="number"){let r=n.trim();if(r.length===0)throw new b(`--field ${e}=... must be a number`,_.USAGE);let o=Number(r);if(!Number.isFinite(o))throw new b(`--field ${e}=... must be a number`,_.USAGE);return o}if(t==="boolean"){let r=n.trim().toLowerCase();if(r==="true"||r==="1"||r==="yes")return!0;if(r==="false"||r==="0"||r==="no")return!1;throw new b(`--field ${e}=... must be one of true|false|1|0|yes|no`,_.USAGE)}return t==="string_array"?n.split(/[\n,|]/u).map(r=>r.trim()).filter(r=>r.length>0):$A(n,e,t)}function qa(e){let t=new Map;if(!e)return t;for(let n of e.item_fields)for(let r of n.fields){let o=op(r.name),i=ip(r.type);if(!o||!i)continue;let s=t.get(o);if(s&&s.type!==i)throw new b(`Extension item field "${o}" is declared with conflicting types: ${s.type}, ${i}`,_.USAGE,{code:"extension_item_field_type_conflict",nextSteps:["Make every active extension declaration for this field use the same type."]});t.set(o,{name:o,type:i})}return t}function sp(e){if(ni.has(e))throw new b(`Extension item field "${e}" collides with built-in item metadata "${e}"; rename the extension field with an extension-specific prefix. Reserved fields: ${[...ni].sort((t,n)=>t.localeCompare(n)).join(", ")}.`,_.USAGE,{code:"extension_item_field_reserved",nextSteps:["Rename the extension item field, preferably with an extension-specific prefix."]})}function Tr(e){return[...qa(e).keys()].sort((t,n)=>t.localeCompare(n))}function UA(e,t){if(!e||e.length===0)return{};let n=qa(t),r={};for(let o of e){let{key:i,value:s}=MA(o),a=n.get(i);if(!a){if(ni.has(i)){let c=FA(i);throw new b(`--field ${i} is a core item field, not an extension field`,_.USAGE,{code:"core_item_field_requires_dedicated_flag",field:i,recovery:{provided_fields:[i],suggested_flags:[c]},nextSteps:[`Set the core field with its dedicated flag: pm update <id> ${c} <value>`,`When closing an item, pm close <id> also accepts ${c} <value>.`]})}let l=[...n.keys()].sort((c,d)=>c.localeCompare(d));throw new b(`--field ${i} is not declared by an active extension item-field registration`,_.USAGE,{code:"extension_item_field_unknown",recovery:{provided_fields:l},nextSteps:l.length>0?[`Use one of the declared fields: ${l.join(", ")}`]:["Activate an extension that calls registerItemFields before setting extension fields."]})}sp(a.name),r[a.name]=jA(a.name,a.type,s)}return r}function zA(e,t){return t==="string"?typeof e=="string":t==="number"?typeof e=="number"&&Number.isFinite(e):t==="boolean"?typeof e=="boolean":t==="array"?Array.isArray(e):t==="string_array"?Array.isArray(e)&&e.every(n=>typeof n=="string"):typeof e=="object"&&e!==null&&!Array.isArray(e)}function qA(e,t){return!t||t.length===0?!0:t.some(n=>Object.is(n,e))}function GA(e,t,n={}){if(t){qa(t);for(let r of t.item_fields)for(let o of r.fields){let i=op(o.name);if(!i)continue;sp(i),!(i in e)&&!n.skipDefaultFields?.has(i)&&Object.prototype.hasOwnProperty.call(o,"default")&&(e[i]=PA(o.default));let s=e[i];if(s===void 0)continue;let a=ip(o.type);if(a&&!zA(s,a))throw new TypeError(`Item field "${i}" must be of type ${a}`);let l=Array.isArray(o.values)?o.values:void 0;if(!qA(s,l))throw new TypeError(`Item field "${i}" must match one of the configured allowed values`)}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4507a449-1c20-5684-9ed8-e72c9bc694c1")}catch{}})();function kn(e){if(typeof e!="string")return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function VA(e,t){let n=kn(t);return!e||!n?null:[...e.search_providers].reverse().find(o=>(kn(o.runtime_definition?.name)??kn(o.definition?.name))===n)??null}function BA(e,t){let n=kn(t);return!e||!n?null:[...e.vector_store_adapters].reverse().find(o=>(kn(o.runtime_definition?.name)??kn(o.definition?.name))===n)??null}function MU(e){return e.runtime_definition??e.definition}import ap 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]="d6056922-237d-525a-b354-687493a4e123")}catch{}})();var HA=2e3,ri=new Map;function Te(e){if(typeof e!="string")return"";let t=ri.get(e);if(t!==void 0)return t;let n=e.trim().toLowerCase().replaceAll(/[\s-]+/g,"_");return ri.size>=HA&&gn(ri),ri.set(e,n),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]="a9ff482a-f9f9-5e35-88d0-240db815ec08")}catch{}})();var ce=Object.freeze({types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"}),dp=Gs,Ba=qs,WA=["create","update"],KA=new Set(To),YA=new Set(bn),XA=new Set(vo),JA=new Set(Ao);function vr(e){let t=Array.isArray(e)?e:[];return[...new Set(t.map(n=>typeof n=="string"?n.trim():"").filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r))}function je(e){if(typeof e!="string"||e.length===0)return;let t=Te(e);return t.length>0?t:void 0}function QA(e){return e.startsWith("--")?e.slice(2):e}function lp(e){return typeof e=="string"?QA(e.trim().toLowerCase().replaceAll(/[\s_]+/g,"-")):""}function up(e){return e.replaceAll("_","-")}function ZA(e){let t=e.replaceAll(/[^A-Za-z0-9]+/g," ").trim().split(/\s+/).filter(o=>o.length>0).map(o=>o.toLowerCase());if(t.length===0)return e;let[n,...r]=t;return`${n}${r.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function Va(e,t){let n=je(e.id);if(!n)return null;let r=[...new Set(vr(e.aliases).map(Te).filter(a=>a.length>0))].sort((a,l)=>a.localeCompare(l)),o=vr(e.roles).filter(a=>KA.has(a)),i=e.description?.trim(),s=typeof e.order=="number"&&Number.isFinite(e.order)?e.order:t;return{id:n,aliases:r,roles:o,description:i&&i.length>0?i:void 0,order:s}}function eS(e){return{draft_status:je(e?.draft_status),open_status:je(e?.open_status),in_progress_status:je(e?.in_progress_status),blocked_status:je(e?.blocked_status),close_status:je(e?.close_status),canceled_status:je(e?.canceled_status)}}function fp(e,t){if(!Array.isArray(t)||t.length!==2)return;let n=Te(t[0]),r=Te(t[1]);n.length===0||r.length===0||e.pairs.some(o=>o[0]===n&&o[1]===r)||e.pairs.push([n,r])}function tS(e){let t=typeof e?.type=="string"?e.type.trim():"";if(t.length===0||!Array.isArray(e?.allowed_transitions))return null;let n={type:t,pairs:[],denyAll:e.allowed_transitions.length===0};for(let r of e.allowed_transitions)fp(n,r);return{typeKey:t.toLowerCase(),record:n}}function nS(e){if(!Array.isArray(e)||e.length===0)return;let t=new Map;for(let r of e){let o=tS(r);if(o===null)continue;let i=t.get(o.typeKey)??o.record;i.denyAll||=o.record.denyAll;for(let s of o.record.pairs)fp(i,s);t.set(o.typeKey,i)}let n=[];for(let r of t.values())(r.pairs.length>0||r.denyAll)&&n.push({type:r.type,allowed_transitions:r.pairs});return n.sort((r,o)=>r.type.localeCompare(o.type)),n.length>0?n:void 0}function pp(e){let t=Te(e.key??"");if(!t)return null;let n=Te(e.metadata_key??e.front_matter_key??t),r=lp(e.cli_flag??up(t));if(!r)return null;let o=vr(e.cli_aliases).map(d=>lp(d)).filter(d=>d.length>0&&d!==r),i=typeof e.type=="string"?e.type.trim().toLowerCase():"string",s=YA.has(i)?i:"string",a=(()=>{let d=vr(e.commands).filter(u=>XA.has(u));return d.length>0?d:[...WA]})(),l=e.description?.trim(),c=vr(e.required_types);return{key:t,metadata_key:n,cli_flag:r,cli_aliases:o,description:l&&l.length>0?l:void 0,type:s,commands:a,repeatable:e.repeatable===!0||s==="string_array",required:e.required===!0,required_on_create:e.required_on_create===!0,required_types:c,allow_unset:e.allow_unset!==!1}}function rS(e){let t=new Map;for(let[r,o]of e.entries()){let i=Va(o,r);i&&t.set(i.id,i)}let n=cp([...t.values()]);return n.length>0?n:cp(Ba.map((r,o)=>Va(r,o)).filter(r=>r!==null))}function cp(e){return e.sort((t,n)=>t.order===n.order?t.id.localeCompare(n.id):t.order-n.order)}function oS(e){let t=new Map;for(let n of e??[]){let r=pp(n);r&&t.set(r.key,r)}return[...t.values()].sort((n,r)=>n.key.localeCompare(r.key))}function iS(e){return{id:e.id,aliases:e.aliases.length>0?[...e.aliases]:void 0,roles:e.roles.length>0?[...e.roles]:void 0,description:e.description,order:e.order}}function sS(e){return{key:e.key,metadata_key:e.metadata_key!==e.key?e.metadata_key:void 0,cli_flag:e.cli_flag!==up(e.key)?e.cli_flag:void 0,cli_aliases:e.cli_aliases.length>0?[...e.cli_aliases]:void 0,description:e.description,type:e.type,commands:[...e.commands],repeatable:e.repeatable===!0?!0:void 0,required:e.required===!0?!0:void 0,required_on_create:e.required_on_create===!0?!0:void 0,required_types:e.required_types.length>0?[...e.required_types]:void 0,allow_unset:e.allow_unset===!1?!1:void 0}}function aS(e){let t=typeof e=="string"?e.trim().toLowerCase():"allow";return JA.has(t)?t:"allow"}function Ge(e){let t={...ce,...e?.files},n=e?.statuses&&e.statuses.length>0?e.statuses:Ba,r=rS(n),o=oS(e?.fields);return{version:typeof e?.version=="number"&&Number.isFinite(e.version)?Math.floor(e.version):1,files:t,statuses:r.map(iS),fields:o.map(sS),workflow:{...dp,...eS(e?.workflow)},type_workflows:nS(e?.type_workflows),unknown_field_policy:aS(e?.unknown_field_policy)}}function lS(e){return`${JSON.stringify(e,null,2)}
|
|
5
|
+
`}function cS(){return{definitions:[]}}function dS(){return{statuses:Ba}}function uS(){return{fields:[]}}function fS(){return{workflow:dp}}function pS(e,t,n){try{return JSON.parse(e)}catch{n.push(t);return}}function mS(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.definitions))return t.definitions;if(typeof t.item_types=="object"&&t.item_types!==null){let n=t.item_types;if(Array.isArray(n.definitions))return n.definitions}}function gS(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.statuses))return t.statuses;if(Array.isArray(t.definitions))return t.definitions}function _S(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.fields))return t.fields;if(Array.isArray(t.definitions))return t.definitions}function yS(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;return typeof t.workflow=="object"&&t.workflow!==null&&!Array.isArray(t.workflow)?t.workflow:typeof t.workflows=="object"&&t.workflows!==null&&!Array.isArray(t.workflows)?t.workflows:t}function hS(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;if(Array.isArray(t.type_workflows))return t.type_workflows}function fe(e,t,n){let r=t?.trim()||n;return ap.isAbsolute(r)?r:ap.join(e,r)}function bS(e,t){return fe(e,t.files.types,ce.types)}async function mp(e,t){let n=Ge(t),r=[{path:fe(e,n.files.types,ce.types),seed:cS()},{path:fe(e,n.files.statuses,ce.statuses),seed:dS()},{path:fe(e,n.files.fields,ce.fields),seed:uS()},{path:fe(e,n.files.workflows,ce.workflows),seed:fS()}],o=[];for(let i of r)await Y(i.path)||(await P(i.path,lS(i.seed)),o.push(i.path));return{created_paths:o}}async function gp(e,t){let n=Ge(t),r=[],o=fe(e,n.files.types,ce.types),i=fe(e,n.files.statuses,ce.statuses),s=fe(e,n.files.fields,ce.fields),a=fe(e,n.files.workflows,ce.workflows),l,c,d,u,p,f=async(U,z)=>{let ie=await W(U);if(ie!==null)return pS(ie,z,r)},y=await f(o,"runtime_schema_types_invalid_json");y!==void 0&&(l=mS(y),l===void 0&&r.push("runtime_schema_types_invalid_shape"));let g=await f(i,"runtime_schema_statuses_invalid_json");g!==void 0&&(c=gS(g),c===void 0&&r.push("runtime_schema_statuses_invalid_shape"));let h=await f(s,"runtime_schema_fields_invalid_json");h!==void 0&&(d=_S(h),d===void 0&&r.push("runtime_schema_fields_invalid_shape"));let E=await f(a,"runtime_schema_workflows_invalid_json");return E!==void 0&&(u=yS(E),u===void 0&&r.push("runtime_schema_workflows_invalid_shape"),p=hS(E)),{schema:Ge({...n,statuses:[...n.statuses,...c??[]],fields:[...n.fields,...d??[]],workflow:{...n.workflow,...u},type_workflows:[...n.type_workflows??[],...p??[]]}),type_definitions_from_file:l,warnings:r,created_paths:[]}}function Ga(e,t,n){let r=e.filter(i=>i.roles.includes(t));if(r.length>0)return r[0].id;let o=n.map(i=>je(i)).filter(i=>typeof i=="string");for(let i of o)if(e.some(s=>s.id===i))return i;return e[0]?.id}function Ha(e){let t=Ge(e),n=t.statuses.map((g,h)=>Va(g,h)).filter(g=>g!==null),r=new Map,o=new Map;for(let g of n){o.set(g.id,g),r.set(g.id,g.id),r.set(g.id.replaceAll("_","-"),g.id),r.set(g.id.replaceAll("_"," "),g.id);for(let h of g.aliases)r.set(h,g.id),r.set(h.replaceAll("_","-"),g.id),r.set(h.replaceAll("_"," "),g.id)}let i=new Set,s=new Set,a=new Set,l=new Set,c=new Set,d=new Set;for(let g of n){let h=new Set(g.roles);(h.has("terminal")||h.has("terminal_done")||h.has("terminal_canceled"))&&i.add(g.id),h.has("terminal_done")&&s.add(g.id),h.has("terminal_canceled")&&a.add(g.id),h.has("active")&&l.add(g.id),h.has("blocked")&&c.add(g.id),h.has("draft")&&d.add(g.id)}let u=t.workflow,p=je(u.open_status)??Ga(n,"default_open",["open","in_progress",hn[0]]),f=je(u.close_status)??Ga(n,"default_close",["closed","done","complete"]),y=je(u.canceled_status)??Ga(n,"default_cancel",["canceled","cancelled"]);return{definitions:n,by_id:o,alias_to_id:r,terminal_statuses:i,terminal_done_statuses:s,terminal_canceled_statuses:a,active_statuses:l,blocked_statuses:c,draft_statuses:d,open_status:p,close_status:f,canceled_status:y}}function oi(e,t){let n=Te(e);if(n)return t.alias_to_id.get(n)}function Wa(e){let t=Ge(e),n=new Map,r=t.fields.map(l=>pp(l)).filter(l=>l!==null);for(let l of r)n.set(l.key,l);let o=[...n.values()].sort((l,c)=>l.key.localeCompare(c.key)),i=new Map,s=new Map,a=new Map;for(let l of o){i.set(l.key,l),s.set(l.cli_flag,l);for(let c of l.cli_aliases)s.set(c,l);for(let c of l.commands){let d=a.get(c)??[];d.push(l),a.set(c,d)}}for(let[l,c]of a.entries())c.sort((d,u)=>d.key.localeCompare(u.key)),a.set(l,c);return{definitions:o,by_key:i,by_cli_token:s,command_to_fields:a}}function _p(e){return ZA(e.key)}function wS(e,t){let n=oi(e,t);return n?t.terminal_statuses.has(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]="9bef4fe4-11a8-51ae-a42a-a93cc9c57384")}catch{}})();function Ka(e){let t=e.trim().replaceAll(/[^A-Za-z0-9]+/g," ").split(/\s+/).filter(o=>o.length>0).map(o=>o.toLowerCase());if(t.length===0)return e;let[n,...r]=t;return`${n}${r.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function ES(e){return[...new Set([_p(e),Ka(e.key),Ka(e.cli_flag),...e.cli_aliases.map(t=>Ka(t))])]}function ii(e,t){for(let n of ES(t)){if(!Object.hasOwn(e,n))continue;let r=e[n];if(r!==void 0)return r}}function bp(e){return Array.isArray(e)?e.flatMap(t=>bp(t)).map(t=>t.trim()).filter(t=>t.length>0):typeof e=="string"?e.split(/[,\n|]/).map(t=>t.trim()).filter(t=>t.length>0):e==null?[]:[String(e).trim()].filter(t=>t.length>0)}function yp(e,t){if(typeof e=="boolean")return e;if(typeof e=="number"){if(e===1)return!0;if(e===0)return!1}if(typeof e=="string"){let n=e.trim().toLowerCase();if(n==="true"||n==="1"||n==="yes")return!0;if(n==="false"||n==="0"||n==="no")return!1}throw new b(`${t} must be one of true|false|1|0|yes|no`,_.USAGE)}function hp(e,t){if(typeof e=="number"&&Number.isFinite(e))return e;let n=typeof e=="string"?e.trim():String(e),r=Number(n);if(!Number.isFinite(r))throw new b(`${t} must be a number`,_.USAGE);return r}function TS(e,t,n){let r=typeof e=="string"?(()=>{try{return JSON.parse(e)}catch{return}})():e;if(n==="array"&&Array.isArray(r)||n==="object"&&typeof r=="object"&&r!==null&&!Array.isArray(r))return r;throw new b(`${t} must be valid JSON ${n}`,_.USAGE)}function Wt(e,t,n){let r=n??`--${e.cli_flag}`;if(e.type==="array"||e.type==="object"){let i=Array.isArray(t)?t[t.length-1]:t;return i===void 0?void 0:TS(i,r,e.type)}if(e.repeatable||e.type==="string_array"){let i=bp(t);return e.type==="number"?i.map(s=>hp(s,r)):e.type==="boolean"?i.map(s=>yp(s,r)):i}let o=Array.isArray(t)?t[t.length-1]:t;if(o!==void 0)return e.type==="number"?hp(o,r):e.type==="boolean"?yp(o,r):typeof o=="string"?o:String(o)}function vS(e,t){return!e.required&&!e.required_on_create?!1:e.required_types.length===0?!0:t?e.required_types.map(n=>n.toLowerCase()).includes(t.trim().toLowerCase()):!1}function AS(e,t,n){let r={},o=[];for(let i of t.command_to_fields.get("create")??[]){let s=ii(e,i);if(s===void 0){vS(i,n)&&o.push(`--${i.cli_flag}`);continue}r[i.metadata_key]=Wt(i,s)}return{values:r,missing_required_flags:[...new Set(o)].sort((i,s)=>i.localeCompare(s))}}function SS(e,t,n=["update"]){let r={},o=(n??["update"]).flatMap(s=>t.command_to_fields.get(s)??[]),i=new Set;for(let s of o){let a=ii(e,s);a!==void 0&&(i.has(s.metadata_key)||(i.add(s.metadata_key),r[s.metadata_key]=Wt(s,a)))}return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="77d3ebfa-789a-54cf-9d49-dbebab8d32ea")}catch{}})();var xn=1,wp=1;function XU(e){let t=e.pm_format_version;return typeof t=="number"&&Number.isInteger(t)&&t>=xn?t:xn}function Ep(e){if(!(typeof e!="number"||!Number.isInteger(e)||e<=xn))return e}function kS(e,t=wp){return e<t?"outdated":e>t?"ahead":"current"}function JU(e,t=wp){let n=[],r=[];for(let o of e){let i=kS(o.version,t);i==="outdated"?n.push(o.ref):i==="ahead"&&r.push(o.ref)}return{outdated:n.sort((o,i)=>o.localeCompare(i)),ahead:r.sort((o,i)=>o.localeCompare(i))}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d7501aa2-d3d9-5fbe-a1c0-d4bc145f5563")}catch{}})();var xS={"in-progress":"in_progress",cancelled:"canceled"};function Kt(e,t){if(t){let o=oi(e,t);if(o)return o}if(typeof e!="string")return;let n=e.trim().toLowerCase();if(!n)return;let r=xS[n]??n;if(hn.includes(r))return r}function Tp(e,t){return Kt(e,t)??e}function CS(e,t){return t.terminal_statuses.has(Tp(e,t))}import{encode as NS}from"@toon-format/toon";import{isDeepStrictEqual as vp}from"node:util";import{decode as OS}from"@toon-format/toon";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2840e12e-7444-5d36-9f54-5a56267bbb75")}catch{}})();function Ya(e){return{value:OS(e),usedScalarBracketEscape:!1}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="fedb7b50-6946-589d-b240-9f074e09e467")}catch{}})();var IS=/^\s*(<<<<<<<|=======|>>>>>>>)(?:\s.*)?$/;function RS(e){if(e.length===0)return[];let t=e.split(/\r?\n/),n=[];for(let r=0;r<t.length;r+=1){let o=t[r]??"",i=o.match(IS);if(!i)continue;let s=i[1];n.push({line:r+1,marker:s,text:o})}return n}function si(e){return RS(e)[0]}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="eaf0e260-a864-57cf-b23b-aac4f9151d8e")}catch{}})();var DS=new Set(["schema","tracker","auto"]),LS=new Set(["passed","failed","stopped","canceled"]),PS=new Set(Co);function In(e){return e.replaceAll("\\","/")}function kp(e){for(let t of e)if(t!==0)return t;return 0}function ai(e){for(let[t,n]of Object.entries(e))n===void 0&&delete e[t]}var xp=["id","title","description","created_at","updated_at"],MS=new Set(Me);function Cp(e){if(e?.schema)return{statusRegistry:Ha(e.schema),fieldRegistry:Wa(e.schema),unknownFieldPolicy:e.schema.unknown_field_policy??"allow",extensionFieldNames:new Set(e.extensionFieldNames??[]),onWarning:e.onWarning}}function FS(e,t){return e.required?e.required_types.length===0?!0:e.required_types.map(n=>n.toLowerCase()).includes(t.trim().toLowerCase()):!1}function wt(e){let t=e.match(/^([a-z_][\w.]*)\s/u)?.[1];throw new b(`Invalid item metadata: ${e}`,_.GENERIC_FAILURE,{code:"item_document_invalid",reason:e.includes("required")?"missing_required_field":"schema_validation_error",...t?{field:t}:{},required:"Provide an item document whose metadata satisfies the active runtime schema.",why:e})}function kr(e,t){throw new b(t,_.GENERIC_FAILURE,{code:"item_document_invalid",reason:"syntax_error",format:e,required:`Provide a syntactically valid ${e==="toon"?"TOON":"JSON Markdown"} item document.`,why:"The document could not be decoded far enough to validate item metadata."})}function Op(e){let t=new Set(MS);for(let n of e.fieldRegistry?.definitions??[])t.add(n.metadata_key);for(let n of e.extensionFieldNames)t.add(n);return t}function k(e,t){e||wt(t)}function xr(e,t){return(typeof e!="object"||e===null||Array.isArray(e))&&wt(t),e}function Xa(e,t){let n=e[t];k(typeof n=="string",`${t} must be a string`),k(ft(n),`${t} must be a valid ISO timestamp`)}function Ap(e,t,n){let r=e[t];r!==void 0&&k(typeof r=="number"&&Number.isInteger(r)&&r>=1,`${n} must be an integer >= 1`)}function Za(e,t,n){let r=e[t];r!==void 0&&(k(typeof r=="string",`${n} must be a string`),k(ft(r),`${n} must be a valid ISO timestamp`))}function $S(e){if(e!==void 0){k(Array.isArray(e),"event.recurrence.by_weekday must be an array");for(let t of e){k(typeof t=="string","event.recurrence.by_weekday entries must be strings");let n=t.trim().toLowerCase();k(or.includes(n),`event.recurrence.by_weekday entries must be one of: ${or.join(", ")}`)}}}function jS(e){if(e!==void 0){k(Array.isArray(e),"event.recurrence.by_month_day must be an array");for(let t of e)k(typeof t=="number"&&Number.isInteger(t)&&t>=1&&t<=31,"event.recurrence.by_month_day entries must be integers 1..31")}}function US(e){if(e!==void 0){k(Array.isArray(e),"event.recurrence.exdates must be an array");for(let t of e)k(typeof t=="string","event.recurrence.exdates entries must be strings"),k(ft(t),"event.recurrence.exdates entries must be valid ISO timestamps")}}function zS(e){let t=xr(e,"event.recurrence must be an object");k(typeof t.freq=="string","event.recurrence.freq must be a string");let n=t.freq.trim().toLowerCase();k(xo.includes(n),`event.recurrence.freq must be one of: ${xo.join(", ")}`),Ap(t,"interval","event.recurrence.interval"),Ap(t,"count","event.recurrence.count"),Za(t,"until","event.recurrence.until"),$S(t.by_weekday),jS(t.by_month_day),US(t.exdates)}function qS(e){for(let r of xp)k(typeof e[r]=="string",`${r} is required and must be a string`);let t=e.type;k(typeof t=="string"&&t.trim().length>0,"type must be a non-empty string");let n=e.pm_format_version;return n!==void 0&&k(typeof n=="number"&&Number.isInteger(n)&&n>=xn,`pm_format_version must be an integer >= ${xn}`),t}function GS(e,t){let n=e.status;k(typeof n=="string"&&n.trim().length>0,"status must be a non-empty string");let r=t?.statusRegistry,o=Kt(n,r),i=r?r.definitions.map(s=>s.id):[...hn];k(o!==void 0,`status must be one of: ${i.join(", ")}`)}function VS(e){let t=e.priority;k(typeof t=="number"&&Number.isInteger(t)&&[0,1,2,3,4].includes(t),"priority must be an integer 0..4");let n=e.tags;k(Array.isArray(n),"tags must be an array");for(let r of n)k(typeof r=="string","tags entries must be strings")}function BS(e){let t=e.confidence;if(t!==void 0){if(typeof t=="number"){k(Number.isInteger(t)&&t>=0&&t<=100,"confidence number value must be an integer 0..100");return}if(typeof t=="string"){let n=t.trim().toLowerCase(),r=n==="med"||ko.includes(n);k(r,`confidence string value must be one of: ${[...ko,"med"].join(", ")}`);return}k(!1,"confidence must be a number or string")}}function HS(e){let t=e.severity;if(t===void 0)return;typeof t!="string"&&wt("severity must be a string");let n=t.trim().toLowerCase(),r=n==="med"||So.includes(n);k(r,`severity value must be one of: ${[...So,"med"].join(", ")}`)}function WS(e){e.regression!==void 0&&typeof e.regression!="boolean"&&wt("regression must be a boolean")}function KS(e){let t=e.reminders;if(t!==void 0){k(Array.isArray(t),"reminders must be an array");for(let n of t){let r=xr(n,"reminders entries must be objects");k(typeof r.at=="string","reminder.at must be a string"),k(ft(r.at),"reminder.at must be a valid ISO timestamp"),k(typeof r.text=="string","reminder.text must be a string"),k(r.text.trim().length>0,"reminder.text must not be empty")}}}function YS(e){for(let t of["title","description","location","timezone"])e[t]!==void 0&&(k(typeof e[t]=="string",`event.${t} must be a string`),k(e[t].trim().length>0,`event.${t} must not be empty`))}function XS(e){e.recurrence!==void 0&&(zS(e.recurrence),e.recurrence.until!==void 0&&k(ne(e.recurrence.until,e.start_at)>=0,"event.recurrence.until must be at or after event.start_at"))}function JS(e){let t=xr(e,"events entries must be objects");k(typeof t.start_at=="string","event.start_at must be a string"),k(ft(t.start_at),"event.start_at must be a valid ISO timestamp"),t.end_at!==void 0&&(k(typeof t.end_at=="string","event.end_at must be a string"),k(ft(t.end_at),"event.end_at must be a valid ISO timestamp"),k(ne(t.end_at,t.start_at)>0,"event.end_at must be after event.start_at")),YS(t),t.all_day!==void 0&&k(typeof t.all_day=="boolean","event.all_day must be a boolean"),XS(t)}function QS(e){let t=e.events;if(t!==void 0){k(Array.isArray(t),"events must be an array");for(let n of t)JS(n)}}function ZS(e){for(let t of["source_type","source_owner","design","external_ref"]){let n=e[t];n!==void 0&&k(typeof n=="string",`${t} must be a string`)}}function ek(e){let t=e.type_options;if(t===void 0)return;let n=xr(t,"type_options must be an object");for(let[r,o]of Object.entries(n))k(r.trim().length>0,"type_options keys must be non-empty"),k(typeof o=="string","type_options values must be strings"),k(o.trim().length>0,"type_options values must be non-empty strings")}function tk(e,t,n){if(n?.fieldRegistry)for(let r of n.fieldRegistry.definitions){let o=e[r.metadata_key];if(o===void 0){FS(r,t)&&wt(`missing required schema field: ${r.metadata_key}`);continue}try{e[r.metadata_key]=Wt(r,o,`metadata field "${r.metadata_key}"`)}catch(i){wt(String(i?.message).replace(/^Invalid\s+/u,""))}}}function nk(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=Op(t),r=Object.keys(e).filter(o=>!n.has(o)).sort((o,i)=>o.localeCompare(i));r.length!==0&&(t.unknownFieldPolicy==="reject"?wt(`unknown schema fields are not allowed: ${r.join(", ")}`):t.onWarning?.(`item_unknown_schema_fields:${r.join(",")}`))}function el(e,t){let n=xr(e,"item metadata must be an object"),r=qS(n);GS(n,t),VS(n),BS(n),HS(n),WS(n),Xa(n,"created_at"),Xa(n,"updated_at"),n.deadline!==void 0&&Xa(n,"deadline"),KS(n),QS(n),Za(n,"closed_at","closed_at"),Za(n,"completed_at","completed_at"),ZS(n),ek(n),tk(n,r,t),nk(n,t)}function rk(e){if(!(!e||e.length===0))return[...e].map(t=>({id:t.id.trim().toLowerCase(),kind:t.kind,created_at:t.created_at,author:t.author?.trim()||void 0,source_kind:t.source_kind?.trim()||void 0,author_source:t.author_source})).sort((t,n)=>{let r=ne(t.created_at,n.created_at);if(r!==0)return r;let o=t.id.localeCompare(n.id);if(o!==0)return o;let i=t.kind.localeCompare(n.kind);return i!==0?i:(t.source_kind??"").localeCompare(n.source_kind??"")})}function Ja(e){if(!(!e||e.length===0))return[...e].sort((t,n)=>{let r=ne(t.created_at,n.created_at);if(r!==0)return r;let o=t.text.localeCompare(n.text);return o!==0?o:t.author.localeCompare(n.author)})}function ok(e){if(!e||e.length===0)return;let t=[...e].map(n=>({at:n.at,text:n.text.trim()})).filter(n=>n.text.length>0).sort((n,r)=>{let o=ne(n.at,r.at);return o!==0?o:n.text.localeCompare(r.text)});return t.length===0?void 0:t}function ik(e){if(!e)return;let t=e.freq.trim().toLowerCase();if(!xo.includes(t))return;let n=Array.from(new Set((e.by_weekday??[]).map(s=>s.trim().toLowerCase()).filter(s=>or.includes(s)))).sort((s,a)=>Js(s)-Js(a)),r=Array.from(new Set((e.by_month_day??[]).filter(s=>Number.isInteger(s)&&s>=1&&s<=31).map(s=>s))).sort((s,a)=>s-a),o=Array.from(new Set((e.exdates??[]).map(s=>s.trim()).filter(s=>ft(s)))).sort((s,a)=>ne(s,a)),i={freq:t,interval:e.interval!==void 0&&e.interval>1?e.interval:void 0,count:e.count,until:e.until?.trim()||void 0,by_weekday:n.length>0?n:void 0,by_month_day:r.length>0?r:void 0,exdates:o.length>0?o:void 0};for(let[s,a]of Object.entries(i))a===void 0&&delete i[s];return i}function sk(e){return!Array.isArray(e)||e.length===0?void 0:[...e].map(ak).sort(lk)}function ak(e){let t={start_at:e.start_at,end_at:e.end_at||void 0,title:e.title?.trim()||void 0,description:e.description?.trim()||void 0,location:e.location?.trim()||void 0,all_day:e.all_day,timezone:e.timezone?.trim()||void 0,recurrence:ik(e.recurrence)};return ai(t),t}function lk(e,t){return kp([ne(e.start_at,t.start_at),(e.end_at??"").localeCompare(t.end_at??""),(e.title??"").localeCompare(t.title??""),+!!e.all_day-+!!t.all_day,(e.timezone??"").localeCompare(t.timezone??""),(e.location??"").localeCompare(t.location??""),(e.description??"").localeCompare(t.description??""),JSON.stringify(e.recurrence??{}).localeCompare(JSON.stringify(t.recurrence??{}))])}function ck(e){if(!(!e||e.length===0))return e.map(t=>({path:In(t.path),scope:t.scope,note:t.note?.trim()||void 0}))}function dk(e){if(!e||e.length===0)return;let t=e.map(pk).filter(n=>n.run_id.length>0&&n.started_at.length>0&&n.finished_at.length>0&&n.recorded_at.length>0).sort((n,r)=>kp([ne(n.recorded_at,r.recorded_at),n.run_id.localeCompare(r.run_id),n.kind.localeCompare(r.kind)]));return t.length>0?t:void 0}function Cn(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?Math.floor(e):void 0}function uk(e){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.floor(e):void 0}function Qa(e){return typeof e=="string"?e:""}function fk(e){if(!Array.isArray(e))return;let t=e.filter(r=>r!==null&&typeof r=="object"&&typeof r.name=="string"&&r.name.trim().length>0&&typeof r.value=="number"&&Number.isFinite(r.value)&&typeof r.recorded_at=="string"&&r.recorded_at.trim().length>0).map(r=>({name:r.name.trim(),value:r.value,unit:typeof r.unit=="string"&&r.unit.trim()||void 0,threshold:typeof r.threshold=="number"&&Number.isFinite(r.threshold)?r.threshold:void 0,recorded_at:r.recorded_at.trim()})),n=[...new Map(t.map(r=>[r.name,r])).values()].sort((r,o)=>r.name.localeCompare(o.name)).slice(0,32);return n.length>0?n:void 0}function pk(e){let t=typeof e.run_id=="string"?e.run_id.trim():"",n=e.kind==="test"||e.kind==="test-all"?e.kind:"test",r=LS.has(e.status)?e.status:"failed",o={run_id:t,kind:n,status:r,started_at:Qa(e.started_at),finished_at:Qa(e.finished_at),recorded_at:Qa(e.recorded_at),attempt:uk(e.attempt),resumed_from:e.resumed_from?.trim()||void 0,passed:Cn(e.passed)??0,failed:Cn(e.failed)??0,skipped:Cn(e.skipped)??0,items:Cn(e.items),linked_tests:Cn(e.linked_tests),fail_on_skipped_triggered:e.fail_on_skipped_triggered===!0?!0:void 0,measurements:fk(e.measurements)};return ai(o),o}function mk(e){if(!(!Array.isArray(e)||e.length===0))return e.map(yk)}function Ar(e){if(!Array.isArray(e))return;let t=[...new Set(e.filter(n=>typeof n=="string").map(n=>n.trim()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r));return t.length>0?t:void 0}function Ip(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function nl(e){return e==="__proto__"||e==="constructor"||e==="prototype"}function Sp(e){if(!Ip(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),String(r).trim()]).filter(([n,r])=>n.length>0&&!nl(n)&&r.length>0).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function gk(e){if(!Ip(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),Number(r)]).filter(([n,r])=>n.length>0&&!nl(n)&&Number.isFinite(r)).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function _k(e){let t=e?.trim().toLowerCase();if(!(!t||!DS.has(t)))return t}function yk(e){let t={command:e.command?.trim()||void 0,path:e.path?In(e.path):void 0,scope:e.scope,timeout_seconds:typeof e.timeout_seconds=="number"&&Number.isFinite(e.timeout_seconds)&&e.timeout_seconds>0?e.timeout_seconds:void 0,pm_context_mode:_k(e.pm_context_mode),env_set:Sp(e.env_set),env_clear:Ar(e.env_clear),shared_host_safe:e.shared_host_safe===!0?!0:void 0,assert_stdout_contains:Ar(e.assert_stdout_contains),assert_stdout_regex:Ar(e.assert_stdout_regex),assert_stderr_contains:Ar(e.assert_stderr_contains),assert_stderr_regex:Ar(e.assert_stderr_regex),assert_stdout_min_lines:Cn(e.assert_stdout_min_lines),assert_json_field_equals:Sp(e.assert_json_field_equals),assert_json_field_gte:gk(e.assert_json_field_gte),note:e.note?.trim()||void 0};return ai(t),t}function hk(e){if(!(!e||e.length===0))return[...e].map(t=>({path:In(t.path),scope:t.scope,note:t.note?.trim()||void 0})).sort((t,n)=>{let r=t.scope.localeCompare(n.scope);if(r!==0)return r;let o=t.path.localeCompare(n.path);return o!==0?o:(t.note??"").localeCompare(n.note??"")})}function A(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function bk(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=A(r.id),i=A(r.kind);if(!o||!i)continue;let s={id:o,kind:i},a=A(r.note);a&&(s.note=a),r.required_before_step===!0&&(s.required_before_step=!0),t.push(s)}return t.length>0?t:void 0}function wk(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=A(r.path);if(!o)continue;let i={path:In(o)};(r.scope==="project"||r.scope==="global")&&(i.scope=r.scope);let s=A(r.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function Ek(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=A(r.command),i=A(r.path);if(!o&&!i)continue;let s={};o&&(s.command=o),i&&(s.path=In(i));let a=A(r.note);a&&(s.note=a),t.push(s)}return t.length>0?t:void 0}function Tk(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=A(r.path);if(!o)continue;let i={path:In(o)};(r.scope==="project"||r.scope==="global")&&(i.scope=r.scope);let s=A(r.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function vk(e){if(e===null||typeof e!="object")return;let t=e,n=A(t.id),r=A(t.title),o=A(t.status),i=o&&PS.has(o)?o:void 0,s=wo(t.order)??Number.NaN,a=typeof t.created_at=="string"?t.created_at:"",l=typeof t.updated_at=="string"?t.updated_at:"";if(!n||!r||!i||!Number.isFinite(s)||!a||!l)return;let c={id:n,order:s,title:r,status:i,created_at:a,updated_at:l};return Ak(c,t),c}function Ak(e,t){let n=[["body","body"],["owner","owner"],["evidence","evidence"],["blocked_reason","blocked_reason"],["superseded_by","superseded_by"]];for(let[i,s]of n){let a=A(t[s]);a&&(e[i]=a)}let r=typeof t.completed_at=="string"?t.completed_at:void 0;r&&r.length>0&&(e.completed_at=r);let o=[["linked_items","linked_items",bk],["files","files",wk],["tests","tests",Ek],["docs","docs",Tk]];for(let[i,s,a]of o){let l=a(t[s]);l&&(e[i]=l)}}function Sk(e){if(!Array.isArray(e))return;let t=e.flatMap(n=>{let r=vk(n);return r?[r]:[]});return t.sort((n,r)=>n.order-r.order),t.length>0?t:void 0}function kk(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=typeof r.ts=="string"?r.ts:"",i=typeof r.author=="string"?r.author:"",s=A(r.decision);if(!o||!i||!s)continue;let a={ts:o,author:i,decision:s},l=A(r.rationale);l&&(a.rationale=l);let c=A(r.evidence);c&&(a.evidence=c);let d=A(r.step_id);d&&(a.step_id=d),t.push(a)}return t.length>0?t:void 0}function xk(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=typeof r.ts=="string"?r.ts:"",i=typeof r.author=="string"?r.author:"",s=A(r.text);if(!o||!i||!s)continue;let a={ts:o,author:i,text:s},l=A(r.step_id);l&&(a.step_id=l),t.push(a)}return t.length>0?t:void 0}function Ck(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=A(r.text);if(!o)continue;let i={text:o},s=A(r.command);s&&(i.command=s);let a=A(r.expected);a&&(i.expected=a),t.push(i)}return t.length>0?t:void 0}function Ok(e){if(!e)return;let t=Object.entries(e).map(([n,r])=>[n.trim(),r.trim()]).filter(([n,r])=>n.length>0&&r.length>0).sort((n,r)=>n[0].localeCompare(r[0]));if(t.length!==0)return Object.fromEntries(t)}function On(e){let t=0;for(;t<e.length&&e[t]===`
|
|
6
|
+
`;)t+=1;return e.slice(t).trimEnd()}function Ik(e){if(e===void 0)return;if(typeof e=="number")return e;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(ko.includes(t))return t}function Rk(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(So.includes(t))return t}function Sr(e){return e||void 0}function Nk(e,t){let n=e,r=t;for(let[o,i]of Object.entries(r))nl(o)||Object.prototype.hasOwnProperty.call(n,o)||i===void 0||(n[o]=i)}function Dk(e,t){if(!t?.fieldRegistry)return;let n=e;for(let r of t.fieldRegistry.definitions){let o=n[r.metadata_key];o!==void 0&&(n[r.metadata_key]=Wt(r,o,`metadata field "${r.metadata_key}"`))}}function Lk(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=Op(t),o=Object.keys(e).filter(i=>!n.has(i)).sort((i,s)=>i.localeCompare(s));o.length>0&&t.unknownFieldPolicy==="reject"&&wt(`unknown schema fields are not allowed: ${o.join(", ")}`),o.length>0&&t.onWarning?.(`item_unknown_schema_fields:${o.join(",")}`)}function Cr(e,t={}){let n=Cp(t),r=Kt(e.status,n?.statusRegistry)??e.status,o=Array.from(new Set((Array.isArray(e.tags)?e.tags:[]).filter(s=>typeof s=="string").map(s=>s.trim().toLowerCase()).filter(Boolean))).sort((s,a)=>s.localeCompare(a)),i={id:e.id,title:e.title,description:e.description,type:e.type,pm_format_version:Ep(e.pm_format_version),source_type:A(e.source_type),type_options:Ok(e.type_options),status:r,priority:e.priority,tags:o,created_at:e.created_at,updated_at:e.updated_at,dependencies:rk(e.dependencies),comments:Ja(e.comments),notes:Ja(e.notes),learnings:Ja(e.learnings),files:ck(e.files),tests:mk(e.tests),test_runs:dk(e.test_runs),docs:hk(e.docs),deadline:Sr(e.deadline),reminders:ok(e.reminders),events:sk(e.events),closed_at:Sr(e.closed_at),completed_at:Sr(e.completed_at),assignee:A(e.assignee),claim_principal:A(e.claim_principal),source_owner:A(e.source_owner),author:Sr(e.author),estimated_minutes:e.estimated_minutes,acceptance_criteria:e.acceptance_criteria??void 0,design:e.design??void 0,external_ref:e.external_ref??void 0,definition_of_ready:A(e.definition_of_ready),order:e.order,goal:A(e.goal),objective:A(e.objective),value:A(e.value),impact:A(e.impact),outcome:A(e.outcome),why_now:A(e.why_now),parent:A(e.parent),reviewer:A(e.reviewer),risk:e.risk??void 0,confidence:Ik(e.confidence),sprint:A(e.sprint),release:A(e.release),blocked_by:A(e.blocked_by),blocked_reason:A(e.blocked_reason),unblock_note:A(e.unblock_note),reporter:A(e.reporter),severity:Rk(e.severity),environment:A(e.environment),repro_steps:A(e.repro_steps),resolution:A(e.resolution),expected_result:A(e.expected_result),actual_result:A(e.actual_result),affected_version:A(e.affected_version),fixed_version:A(e.fixed_version),component:A(e.component),regression:e.regression,customer_impact:A(e.customer_impact),close_reason:Sr(e.close_reason),plan_mode:A(e.plan_mode),plan_scope:A(e.plan_scope),plan_harness:A(e.plan_harness),plan_resume_context:A(e.plan_resume_context),plan_steps:Sk(e.plan_steps),plan_decisions:kk(e.plan_decisions),plan_discoveries:xk(e.plan_discoveries),plan_validation:Ck(e.plan_validation)};return Nk(i,e),Dk(i,n),Lk(i,n),ai(i),i}function Rp(e){return x(e,Me)}function Pk(e){let t=0,n=!1,r=!1;for(let o=0;o<e.length;o+=1){let i=e[o];if(n){if(r){r=!1;continue}if(i==="\\"){r=!0;continue}i==='"'&&(n=!1);continue}if(i==='"'){n=!0;continue}if(i==="{"){t+=1;continue}if(i==="}"&&(t-=1,t===0))return o}return-1}function Mk(e){if(!e.startsWith("{"))return{frontMatter:"",body:e};let t=Pk(e);if(t<0)return{frontMatter:"",body:e};let n=e.slice(0,t+1),r=e.slice(t+1).replace(/^\r?\n+/,"");return{frontMatter:n,body:r}}function Fk(e){let t=e.charCodeAt(0)===65279?e.slice(1):e,n=t.match(/^[ \t]*---[ \t]*(?:\r?\n|$)/);if(!n)return{content:t,stripped:!1};let r=n[0].length;for(;r<t.length;){let o=t.indexOf(`
|
|
7
|
+
`,r),i=o===-1?t.length:o,s=t.slice(r,i).replace(/\r$/,""),a=o===-1?i:i+1;if(s.trim()==="---")return{content:t.slice(a).replace(/^\s+/,""),stripped:!0};r=a}return{content:t,stripped:!1}}function tl(e,t){return Cr(e,{...t,onWarning:void 0})}function $k(e,t,n={}){let r=Fk(e);r.stripped&&n.onWarning?.("json_markdown_leading_yaml_frontmatter_ignored");let{frontMatter:o,body:i}=Mk(r.content);o||(e.trimStart().startsWith("{")&&kr("json_markdown","JSON front matter is not valid JSON"),kr("json_markdown","JSON Markdown item document is missing JSON front matter"));let s;try{s=JSON.parse(o)}catch{kr("json_markdown","JSON front matter is not valid JSON")}return el(s,t),{metadata:tl(s,n),body:On(i)}}function jk(e,t,n={}){let r;try{r=Ya(e).value}catch{kr("toon","TOON item document is not valid TOON")}k(typeof r=="object"&&r!==null&&!Array.isArray(r),"TOON item document must be an object");let o=r;if(!xp.some(a=>Object.prototype.hasOwnProperty.call(o,a))&&!Object.prototype.hasOwnProperty.call(o,"front_matter")&&kr("toon","TOON input does not have the shape of an item document"),Object.prototype.hasOwnProperty.call(o,"front_matter"))return el(o.front_matter,t),k(o.body===void 0||typeof o.body=="string","TOON item document body must be a string"),{metadata:tl(o.front_matter,n),body:On(typeof o.body=="string"?o.body:"")};let{body:i,...s}=o;return k(i===void 0||typeof i=="string","TOON item document body must be a string"),el(s,t),{metadata:tl(s,n),body:On(typeof i=="string"?i:"")}}function Uk(e,t={}){let n=Cr(e.metadata,t),r=Rp(n),o=JSON.stringify(r,null,2),i=On(e.body??"");return i?`${o}
|
|
8
|
+
|
|
9
|
+
${i}
|
|
10
|
+
`:`${o}
|
|
11
|
+
`}function zk(e,t={}){let n=Cr(e.metadata,t),r=Rp(n),o=On(e.body??""),i={...r,body:o},s=JSON.parse(JSON.stringify(i)),a=NS(s),l;try{l=Ya(a).value}catch(c){throw new b("Refusing to persist a TOON item document that the configured decoder cannot read back.",_.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_error",format:"toon",required:"Upgrade or repair the TOON codec before retrying the mutation; no item bytes were written.",why:c instanceof Error?c.message:String(c)})}if(!vp(l,s)){let c=typeof l=="object"&&l!==null&&!Array.isArray(l)?l:{},d=Object.keys(s).find(u=>!vp(s[u],c[u]))??"document";throw new b(`Refusing to persist a lossy TOON item document; round-trip mismatch at field "${d}".`,_.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_mismatch",format:"toon",field:d,required:"Upgrade or repair the TOON codec before retrying the mutation; no item bytes were written.",why:"The encoded document decoded to a value different from the canonical item payload."})}return`${a}
|
|
12
|
+
`}function Yt(e,t={}){let n=si(e);if(n)throw new b(`Merge conflict markers detected in item document at line ${n.line} (${n.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,_.GENERIC_FAILURE,{code:"merge_conflict_markers_detected",reason:"merge_conflict",required:"Resolve merge-conflict markers in the item file before parsing or mutation commands.",why:"Partially merged documents can corrupt item metadata and history integrity.",examples:["git status","git add <resolved-file> && git commit"],nextSteps:["Resolve conflicts, save the file, then rerun the pm command."]});let r=t.format??"toon",o=Cp(t);return r==="toon"?jk(e,o,t):$k(e,o,t)}function Or(e,t={}){return(t.format??"toon")==="toon"?zk(e,t):Uk(e,t)}function Oe(e,t={}){return{metadata:Cr(e.metadata,t),body:On(e.body??"")}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4d71277c-e16c-56f4-a834-5200acfa6d7a")}catch{}})();function rl(e){return e}import{AsyncLocalStorage as qk}from"node:async_hooks";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="16109ee9-e684-5d25-a5f4-30a6c4f62bd5")}catch{}})();var ol=new qk,Np=/^[A-Za-z0-9](?:[A-Za-z0-9._:-]{0,127})$/u;function li(e,t){let n=typeof e=="string"?e.trim():"";return n.length>0?n.slice(0,t):void 0}function Et(e,t){if(e===void 0)return;let n=typeof e=="object"&&e!==null?e:{},r=li(n.id,128),o=li(n.parent_id,128);if(r===void 0||!Np.test(r)||o!==void 0&&!Np.test(o)){if(t)throw new Error("Agent episode ids must be 1-128 letters, digits, dots, underscores, colons, or hyphens.");return}let i=li(n.label,256);return{id:r,...i===void 0?{}:{label:i},...o===void 0?{}:{parent_id:o}}}function Rn(e){let t={};for(let[n,r]of Object.entries(e??{}).slice(0,32)){let o=n.trim().toLowerCase().slice(0,64),i=li(r,256);/^[a-z][a-z0-9_-]{0,63}$/u.test(o)&&i!==void 0&&(t[o]=i)}return t}function Gk(e,t,n){let r=ol.getStore(),o=Rn({role:t.PM_AGENT_SESSION_ROLE,topic:t.PM_AGENT_SESSION_TOPIC}),i=Et(t.PM_AGENT_EPISODE_ID===void 0?void 0:{id:t.PM_AGENT_EPISODE_ID,label:t.PM_AGENT_EPISODE_LABEL,parent_id:t.PM_AGENT_EPISODE_PARENT_ID},!1),s={...Rn(r?.provenance),...o,...Rn(e?.provenance)},a=Et(e?.episode,!1)??Et(n,!1)??i??Et(r?.episode,!1);return Object.keys(s).length===0&&a===void 0?void 0:{...Object.keys(s).length===0?{}:{provenance:s},...a===void 0?{}:{episode:a}}}function ci(e,t){return Gk(e.session_context,t,e.client_info?.episode)??{}}function Vk(e,t){let n=ol.getStore(),r=Et(e.episode,!0),o=Et(n?.episode,!1),i=r!==void 0&&r.parent_id===void 0&&o!==void 0?{...r,parent_id:o.id}:r,s={...Rn(n?.provenance),...Rn(e.provenance)};return ol.run({...Object.keys(s).length===0?{}:{provenance:s},...i===void 0?o===void 0?{}:{episode:o}:{episode:i}},t)}function Bk(e){let t=Rn(e.provenance),n=Et(e.episode,!0);return{...n===void 0?{}:{PM_AGENT_EPISODE_ID:n.id,...n.label===void 0?{}:{PM_AGENT_EPISODE_LABEL:n.label},...n.parent_id===void 0?{}:{PM_AGENT_EPISODE_PARENT_ID:n.parent_id}},...t.role===void 0?{}:{PM_AGENT_SESSION_ROLE:t.role},...t.topic===void 0?{}:{PM_AGENT_SESSION_TOPIC:t.topic}}}import{createHash as Dp}from"node:crypto";import{existsSync as il,promises as Lp,readFileSync as Hk}from"node:fs";import Ve from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="424b9eb3-6b34-5ab0-a3f5-db61fbca12cf")}catch{}})();var Wk="session.json";function sl(e,t){return typeof e=="string"&&e.length>0&&e.length<=t}function Pp(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=e,n=["implementer","planner","release-operator"].includes(String(t.role)),r=["high","medium"].includes(String(t.confidence)),o=sl(t.topic,256),i=Array.isArray(t.evidence)&&t.evidence.length<=32&&t.evidence.every(l=>typeof l=="string"&&l.length<=128),s=Array.isArray(t.active_item_ids)&&t.active_item_ids.length<=64&&t.active_item_ids.every(l=>sl(l,128)),a=t.focused_item_id===void 0||sl(t.focused_item_id,128);if([n,r,o,i,s,a,t.rule_version==="v2"].every(Boolean))return t}function Kk(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=Object.entries(e).slice(0,128).flatMap(([n,r])=>{let o=Pp(r);return o&&n.length<=128?[[n,o]]:[]});return t.length>0?Object.fromEntries(t):void 0}function al(e){return Ve.join(na(e),Wk)}async function di(e){try{let t=await Lp.readFile(al(e),"utf8"),n=JSON.parse(t);if(n===null||typeof n!="object"||Array.isArray(n))return{};let r=n,o=r.focused_item,i=Kk(r.semantic_attribution);return typeof o=="string"&&o.trim().length>0?{focused_item:o,...i?{semantic_attribution:i}:{}}:i?{semantic_attribution:i}:{}}catch{return{}}}async function ll(e,t){let n=al(e);await Lp.mkdir(Ve.dirname(n),{recursive:!0}),await P(n,JSON.stringify(t))}function cl(e){return/#([a-f0-9]{24})$/u.exec(e.trim())?.[1]??`author-${Dp("sha256").update(e).digest("hex").slice(0,24)}`}function dl(e){return[...new Set(e.map(t=>t.trim()).filter(Boolean))].slice(0,32).map(t=>t.slice(0,128))}function ul(e){let t=[...new Set(e)].sort((o,i)=>o.localeCompare(i));if(t.length===1)return t[0];let n=`workset:${t.join("+")}`;return n.length<=256?n:`workset:${t.join("+").slice(0,230)}+${Dp("sha256").update(t.join("\0")).digest("hex").slice(0,12)}`}async function fl(e,t,n){let r=await di(e),o={...r.semantic_attribution},i=n(o[t]);i===void 0?delete o[t]:o[t]=i;let s={...r};Object.keys(o).length===0?delete s.semantic_attribution:s.semantic_attribution=o,await ll(e,s)}async function Cz(e){let t=cl(e.principal);await fl(e.pmRoot,t,n=>{let r=[...new Set([...n?.active_item_ids??[],e.itemId])].slice(-64).sort((i,s)=>i.localeCompare(s)),o=n?.focused_item_id;return{role:"implementer",topic:o??ul(r),confidence:o?"high":"medium",rule_version:"v2",evidence:dl([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],...(e.lineageIds??[]).map(i=>`lineage:${i}`)]),active_item_ids:r,...o?{focused_item_id:o}:{}}})}async function Oz(e){let t=cl(e.principal);await fl(e.pmRoot,t,n=>{if(!n)return;let r=n.active_item_ids.filter(i=>i!==e.itemId);if(r.length===0&&!n.focused_item_id)return;let o=n.focused_item_id;return{...n,role:"release-operator",topic:o??ul(r),confidence:o?"high":"medium",evidence:dl([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],`release:${e.itemId}`]),active_item_ids:r}})}async function Iz(e){let t=cl(e.principal);await fl(e.pmRoot,t,n=>{let r=n?.active_item_ids??[];if(!e.itemId&&r.length===0)return;let o=e.itemId;return{role:o?"planner":n.role,topic:o??ul(r),confidence:o?"high":"medium",rule_version:"v2",evidence:dl([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],...(e.lineageIds??[]).map(i=>`lineage:${i}`)]),active_item_ids:r,...o?{focused_item_id:o}:{}}})}function Yk(e,t){let n=t.PM_PATH?.trim();if(n){let o=Ve.resolve(e,n);if(il(Ve.join(o,"settings.json")))return o;let i=Ve.join(o,".agents","pm");if(il(Ve.join(i,"settings.json")))return i}let r=Ve.resolve(e);for(let o=0;o<32;o+=1){let i=Ve.join(r,".agents","pm");if(il(Ve.join(i,"settings.json")))return i;let s=Ve.dirname(r);if(s===r)break;r=s}}function Mp(e){if(!e.key)return;let t=Yk(e.cwd,e.env);if(t)try{let n=JSON.parse(Hk(al(t),"utf8"));return Pp(n.semantic_attribution?.[e.key])}catch{return}}async function Xk(e){return(await di(e)).focused_item}async function Jk(e,t){let n=await di(e);await ll(e,{...n,focused_item:t})}async function Qk(e){let n={...await di(e)};delete n.focused_item,await ll(e,n)}import{AsyncLocalStorage as gl}from"node:async_hooks";import{createHash as Zk}from"node:crypto";import ui from"node:fs";import ex from"node:os";import Fp 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]="e0ab2d6f-0925-540d-8d24-a7f0687b4bf0")}catch{}})();var _l=["model","effort","role","topic","version"],pi=new gl,$p=new gl,mi=new gl,tx=[{harness:"claude-code",environment_keys:["CLAUDE_CODE","CLAUDECODE"],model_environment_keys:["ANTHROPIC_MODEL","CLAUDE_MODEL"],session_environment_keys:["CLAUDE_CODE_SESSION_ID"],provenance_environment_keys:{effort:["CLAUDE_EFFORT"]},provenance_resolvers:{model:"claude_session_file",version:"claude_session_file"},provenance_unavailable_dimensions:["role","topic"],argv_markers:["claude","claude-code"],client_names:["claude","claude-code","claude code"]},{harness:"codex",environment_keys:["CODEX_HOME","CODEX_CI","CODEX_THREAD_ID"],model_environment_keys:["CODEX_MODEL"],session_environment_keys:["CODEX_THREAD_ID"],provenance_environment_keys:{effort:["CODEX_REASONING_EFFORT","CODEX_EFFORT"],role:["CODEX_SESSION_ROLE"]},provenance_resolvers:{version:"ai_agent_version"},provenance_unavailable_dimensions:["topic"],argv_markers:["codex"],client_names:["codex"]},{harness:"pi",environment_keys:["PI_AGENT","PI_CODING_AGENT"],model_environment_keys:["PI_MODEL"],session_environment_keys:["PI_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["pi"],client_names:["pi"]},{harness:"opencode",environment_keys:["OPENCODE","OPENCODE_SESSION_ID"],model_environment_keys:["OPENCODE_MODEL"],session_environment_keys:["OPENCODE_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["opencode"],client_names:["opencode"]},{harness:"cursor",environment_keys:["CURSOR_AGENT","CURSOR_TRACE_ID"],model_environment_keys:["CURSOR_MODEL"],session_environment_keys:["CURSOR_TRACE_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["cursor"],client_names:["cursor"]},{harness:"aider",environment_keys:["AIDER","AIDER_MODEL"],model_environment_keys:["AIDER_MODEL"],session_environment_keys:["AIDER_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["aider"],client_names:["aider"]},{harness:"gemini-cli",environment_keys:["GEMINI_CLI","GEMINI_CLI_HOME"],model_environment_keys:["GEMINI_MODEL"],session_environment_keys:["GEMINI_CLI_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["gemini","gemini-cli"],client_names:["gemini","gemini-cli","gemini cli"]},{harness:"ci",environment_keys:["CI","GITHUB_ACTIONS","BUILDKITE","GITLAB_CI"],provenance_unavailable_dimensions:["model","effort","role","topic"],argv_markers:[],client_names:[]}],Nn=new Map,pl=/^[a-z0-9]+(?:-[a-z0-9]+)*$/u;function Z(e){let t=typeof e=="string"?e.trim():void 0;return t&&t.length>0?t:void 0}function Xt(e){return[...new Set((e??[]).slice(0,64).map(t=>t.trim()).filter(t=>t.length>0).map(t=>t.slice(0,128)))]}function gi(e){let t=e.harness.trim().toLowerCase();if(!pl.test(t))throw new Error(`Invalid harness signal descriptor namespace: ${e.harness}`);return{harness:t,environment_keys:Xt(e.environment_keys),model_environment_keys:Xt(e.model_environment_keys),session_environment_keys:Xt(e.session_environment_keys),provenance_environment_keys:Object.fromEntries(Object.entries(e.provenance_environment_keys??{}).slice(0,32).map(([n,r])=>[n.trim().toLowerCase().slice(0,64),Xt(r)]).filter(([n])=>pl.test(n))),provenance_resolvers:Object.fromEntries(Object.entries(e.provenance_resolvers??{}).slice(0,32).map(([n,r])=>[n.trim().toLowerCase().slice(0,64),r]).filter(n=>typeof n[0]=="string"&&pl.test(n[0])&&(n[1]==="ai_agent_version"||n[1]==="claude_session_file"))),provenance_unavailable_dimensions:Xt(e.provenance_unavailable_dimensions).map(n=>n.toLowerCase()),argv_markers:Xt(e.argv_markers).map(n=>n.toLowerCase()),client_names:Xt(e.client_names).map(n=>n.toLowerCase())}}var jp=tx.map(gi);function nx(e,t){return JSON.stringify(e)===JSON.stringify(t)}function fi(e,t){return e.toLowerCase().slice(0,512).split(/[/\\\s:=]+/u).filter(r=>r.length>0).includes(t)||e.trim().toLowerCase()===t}function yl(e=[]){let t=[...jp,...[...Nn.values()].map(r=>r.descriptor),...mi.getStore()?.descriptors??[],...e.map(gi)],n=new Set;for(let r of t){if(n.has(r.harness))throw new Error(`Harness signal descriptor collision for "${r.harness}"`);n.add(r.harness)}return t}function hl(e,t){for(let n of t??[]){let r=Z(e[n]);if(r)return r.slice(0,256)}}function rx(e,t){if(t==="role"){let n=e.slice(0,8).map(r=>r.trim().toLowerCase()).find(r=>["claim","create","update","close","release","review"].includes(r));if(n==="review")return"reviewer";if(n)return"implementer"}}function Up(e,t){let n=t==="model"?["--model","--agent-model"]:[`--agent-${t}`],r=e.slice(0,8);for(let o=0;o<r.length;o+=1){let i=r[o].slice(0,512);if(n.includes(i))return Z(r[o+1])?.slice(0,256);let s=n.find(a=>i.startsWith(`${a}=`));if(s)return Z(i.slice(s.length+1))?.slice(0,256)}}var ox=new Set(["implementation","implementer","investigator","orchestrator","planner","release-operator","reviewer"]);function Jt(e,t){if(e!=="role"||t===void 0)return t;let n=t.trim().toLowerCase().replaceAll(/[_\s]+/gu,"-");return ox.has(n)?n:void 0}function ml(e,t){return Z(e?.[t])?.slice(0,256)}var ix=1048576;function sx(e,t){if(e.length===0||e.length>262144)return;let n;try{n=JSON.parse(e)}catch{return}if(typeof n!="object"||n===null)return;let r=n,o=typeof r.message=="object"&&r.message!==null?r.message:void 0,i=t==="model"?o?.model:r.version;return Z(i)?.slice(0,256)}function ax(e,t,n){let r=Z(n.CLAUDE_CODE_SESSION_ID);if(!r||!/^[A-Za-z0-9_-]{1,128}$/u.test(r))return;let i=Fp.resolve(t.cwd??process.cwd()).replaceAll(/[^A-Za-z0-9-]/gu,"-"),s=Fp.join(t.home_dir??ex.homedir(),".claude","projects",i,`${r}.jsonl`);try{let a=ui.openSync(s,"r");try{let l=ui.fstatSync(a).size,c=Math.min(l,ix),d=Buffer.alloc(c);ui.readSync(a,d,0,c,Math.max(0,l-c));let u=d.toString("utf8").split(`
|
|
13
|
+
`).reverse();for(let p of u.slice(0,4096)){let f=sx(p,e);if(f)return f}return}finally{ui.closeSync(a)}}catch{return}}function lx(e,t,n,r){let o=mi.getStore();if(!(t.probes_enabled!==!1&&o?.probesEnabled!==!1&&!["0","false","off"].includes(Z(n.PM_AGENT_PROBES)?.toLowerCase()??"")))return;let s=r?.provenance_resolvers[e];if(s==="claude_session_file")return ax(e,t,n);if(s==="ai_agent_version"){let a=Z(n.AI_AGENT);return!a||!r||!fi(a,r.harness)?void 0:/(?:^|[@/\s])v?(\d+\.\d+(?:\.\d+)?(?:[-+][A-Za-z0-9.-]+)?)$/u.exec(a)?.[1]?.slice(0,256)}}function cx(e,t,n){if(e==="ai_agent_version"){let r=Z(n.AI_AGENT);return r!==void 0&&fi(r,t.harness)}return Z(n.CLAUDE_CODE_SESSION_ID)!==void 0}function bl(e){return e||($p.getStore()??{env:process.env,argv:process.argv})}function dx(e,t,n,r){let o=e.environment_keys.some(a=>Z(t[a])!==void 0),i=e.argv_markers.some(a=>n.some(l=>{let c=l.replaceAll("\\","/");return fi(c.slice(c.lastIndexOf("/")+1),a)})),s=e.client_names.some(a=>r===a||fi(r,a));return o||i||s}function ux(e,t){if(!t)return;let n;if(e==="topic"&&(n=t.topic),e==="role"&&(n=t.role),!!n)return{value:n,source:"inferred",confidence:t.confidence,rule_version:t.rule_version,evidence:t.evidence}}function fx(e){let t=e.find(([n])=>n!==void 0);return t?.[0]?{value:t[0],source:t[1]}:void 0}function px(e,t,n,r,o,i){let s=`PM_AGENT_${e.toUpperCase().replaceAll("-","_")}`,a=new Set([..._l,...Object.keys(r?.provenance_environment_keys??{})]),l,c,d;a.has(e)&&(l=Jt(e,Z(n[s])?.slice(0,256)),d=Jt(e,Up(t.argv??[],e)),c=Jt(e,rx(t.argv??[],e)));let u={...r?.provenance_environment_keys,model:r?.model_environment_keys},p={...t.client_info?.provenance,model:t.client_info?.model},f=ml(o?.provenance,e),y=Jt(e,hl(n,u[e])),g=Jt(e,ml(p,e)),h=Jt(e,ml(t.provenance,e)),E=lx(e,t,n,r);return fx([[l,"override"],[f,"session"],[d,"argv"],[y,"environment"],[g,"mcp_client"],[h,"host"],[E,"probe"]])??ux(e,i)??(c?{value:c,source:"argv"}:void 0)}function mx(e,t){if(!(!e||!t))return Zk("sha256").update(`pm-agent-instance:v1\0${e}\0${t}`).digest("hex").slice(0,24)}function gx(e,t,n,r,o){let i=Object.keys(n?.provenance_environment_keys??{}),s=new Set([..._l,...i,...Object.keys(n?.provenance_resolvers??{}),...Object.keys(e.provenance??{}),...Object.keys(e.client_info?.provenance??{}),...Object.keys(r?.provenance??{})]),a={};for(let l of s){let c=px(l,e,t,n,r,o);c?a[l]=c:n&&(l!=="version"||n.provenance_unavailable_dimensions.includes(l))&&(a[l]=null)}return a}function jz(e){let t=e.map(gi),n=new Map(jp.map(i=>[i.harness,i])),r=new Set;for(let i of t){if(r.has(i.harness)||n.has(i.harness))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);let s=Nn.get(i.harness);if(s&&!nx(s.descriptor,i))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);r.add(i.harness)}for(let i of t){let s=Nn.get(i.harness);Nn.set(i.harness,{descriptor:i,registrations:(s?.registrations??0)+1})}let o=!0;return()=>{if(o){o=!1;for(let i of t){let s=Nn.get(i.harness);!s||s.registrations<=1?Nn.delete(i.harness):s.registrations-=1}}}}function _x(e,t){return $p.run(e,t)}function yx(e,t,n={}){let r=e.map(gi);return yl(r),mi.run({descriptors:r,probesEnabled:n.probesEnabled!==!1},t)}function Ir(e){let t=bl(e),n=t.env??{},r=yl(t.descriptors),o=[...(t.argv??[]).slice(0,3),...t.process_labels??[]].slice(0,64).map(y=>y.slice(0,512)),i=t.client_info?.name.trim().toLowerCase()??"",s=r.find(y=>dx(y,n,o,i)),a=ci(t,n),l=[hl(n,s?.session_environment_keys),Z(t.client_info?.session)?.slice(0,256)].find(y=>y!==void 0),c=mx(s?.harness,l),d=Mp({cwd:t.cwd??process.cwd(),env:n,key:c}),u=gx(t,n,s,a,d),p=u.model,f=[["harness",s?.harness],["model",p?.value],["model_source",p?.source],["session",l],["instance",c],["provenance",Object.keys(u).length>0?u:void 0],["episode",a.episode]];return Object.fromEntries(f.filter(y=>y[1]!==void 0))}function hx(e,t,n,r,o,i){let s=n?.provenance_resolvers[e];if(t.provenance?.[e])return{status:"resolved",...s?{resolver:s}:{},rule_version:"v1"};if(i)return{status:"unavailable",reason:"invalid_value",rule_version:"v1"};if(s){let a=cx(s,n,r);return{status:a&&o?"failed":"unavailable",reason:a?o?"resolver_failed":"probes_disabled":"harness_unavailable",resolver:s,rule_version:"v1"}}return{status:n?.provenance_unavailable_dimensions.includes(e)?"unavailable":"not_configured",reason:n?.provenance_unavailable_dimensions.includes(e)?"harness_unavailable":"resolver_not_configured",rule_version:"v1"}}function wl(e){let t=bl(e),n=Ir(t),r=yl(t.descriptors).find(c=>c.harness===n.harness),o=t.env??{},i=t.probes_enabled!==!1&&mi.getStore()?.probesEnabled!==!1&&!["0","false","off"].includes(Z(o.PM_AGENT_PROBES)?.toLowerCase()??""),s=ci(t,o),a=[o.PM_AGENT_ROLE,s.provenance?.role,hl(o,r?.provenance_environment_keys.role),t.client_info?.provenance?.role,t.provenance?.role,Up(t.argv??[],"role")].some(c=>{let d=Z(c)?.slice(0,256);return d!==void 0&&Jt("role",d)===void 0}),l=Object.fromEntries(_l.map(c=>[c,hx(c,n,r,o,i,c==="role"&&a)]));return{...n,provenance_outcomes:l}}function El(){return process.env.PM_AUTHOR}function bx(e){e===void 0?delete process.env.PM_AUTHOR:process.env.PM_AUTHOR=e}function Uz(e){return Ir(e).harness}function wx(e,t,n){let r=bl(n),o=Ir(r);if(e!==void 0){let s=Z(e);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}if(r.env?.PM_AUTHOR!==void 0){let s=Z(r.env.PM_AUTHOR);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}let i=Z(t);return i?{author:i,source:"configured",...o}:o.harness?{author:`harness:${o.harness}`,source:"detected",...o}:{author:"unknown",source:"unknown",...o}}function zp(e){let t=pi.getStore();return t?.author===e?t.source:e.startsWith("harness:")?"detected":e==="unknown"?"unknown":"asserted"}function qp(e){let t=pi.getStore();return t?.author!==e?e.startsWith("harness:")?{harness:e.slice(8)}:{}:{...t.harness?{harness:t.harness}:{},...t.model?{model:t.model}:{},...t.model_source?{model_source:t.model_source}:{},...t.session?{session:t.session}:{},...t.instance?{instance:t.instance}:{},...t.provenance?{provenance:t.provenance}:{},...t.episode?{episode:t.episode}:{}}}function Tl(e){let t=pi.getStore();return t?.author===e&&t.source==="detected"&&t.instance?`${e}#${t.instance}`:e}function Rr(e,t){let n=wx(e,t);return pi.enterWith(n),n.author}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="aa65b74d-ef5d-57ed-b613-3034da52a8ba")}catch{}})();async function Tt(e,t){let n=await W(e);if(n===null)return[];if(await $e({path:e,scope:"project"}),n.trim()==="")return[];let r=si(n);if(r)throw new b(`History for ${t} contains merge conflict markers at line ${r.line} (${r.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,_.GENERIC_FAILURE,{code:"history_merge_conflict_markers_detected",required:"Repair the history stream by resolving merge-conflict markers.",why:"Conflict markers break JSONL parsing and invalidate deterministic audit history.",examples:[`pm history ${t}`,`pm restore ${t} <timestamp-or-version>`],nextSteps:["Resolve or restore the history file, then rerun the command."]});let o=[];for(let[i,s]of n.split(/\r?\n/).entries()){let a=s.trim();if(a)try{o.push(JSON.parse(a))}catch{throw new b(`History for ${t} contains invalid JSON at line ${i+1}. Repair or restore the history stream and retry.`,_.GENERIC_FAILURE)}}return o}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="22af7808-6456-5889-b6e3-1abd73f35738")}catch{}})();var Ex="__pm_suppress_host_output",vl="@unbrained/pm-cli:suppress-host-output:v1";function Kz(e){return e===void 0?{__pm_suppress_host_output:vl}:{__pm_suppress_host_output:vl,result:e}}function Gp(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&e[Ex]===vl}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c873f95b-c435-5b0d-a631-565fb195b5cd")}catch{}})();var _i="changed_fields",Tx="changed_field_count",Al="rows",vx=new Set(["apply","rollback"]),Vp=new Set(["deleted","would_delete"]);function Qt(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function Bp(e){let t=e[_i];if(!Array.isArray(t))return null;let n=Object.getPrototypeOf(e)===null?Object.create(null):{};for(let[r,o]of Object.entries(e))r!==_i&&(n[r]=o);return n[Tx]=t.length,n}function Ax(e){return"item"in e&&Array.isArray(e[_i])}function Sx(e){return typeof e.mode=="string"&&vx.has(e.mode)&&Array.isArray(e[Al])}function kx(e,t){let n=Object.getPrototypeOf(e)===null?Object.create(null):{};return Object.assign(n,e),n[Al]=t,n}function xx(e){if(!Qt(e))return null;let t=Qt(e.item)?e.item:Qt(e.plan)?e.plan:null;if(t===null)return null;let n=typeof t.id=="string"?t.id:void 0,r=typeof e.outcome=="string"&&Vp.has(e.outcome)?e.outcome:typeof t.status=="string"?t.status:void 0;return n?r?{id:n,status:r,...typeof e.deleted=="boolean"?{deleted:e.deleted}:{}}:{id:n}:null}function Cx(e){if(!Qt(e)||!Qt(e.item)||typeof e.item.id!="string")return null;let t=e[_i];if(!Array.isArray(t))return null;let n={id:e.item.id,...typeof e.outcome=="string"&&Vp.has(e.outcome)?{status:e.outcome}:typeof e.item.status=="string"?{status:e.item.status}:{},...typeof e.deleted=="boolean"?{deleted:e.deleted}:{},...typeof e.previous_status=="string"?{previous_status:e.previous_status}:{},changed_field_count:t.length},r=typeof e.close_reason=="string"?e.close_reason:typeof e.item.close_reason=="string"?e.item.close_reason:void 0;return r!==void 0&&(n.close_reason=r),Array.isArray(e.warnings)&&e.warnings.length>0&&(n.warnings=e.warnings),n}function Ox(e){let t=Sx(e)?e[Al]:void 0;if(!Array.isArray(t))return{projected:e,changed:!1};let n=!1,r=t.map(o=>{if(!Qt(o))return o;let i=Bp(o);return i?(n=!0,i):o});return n?{projected:kx(e,r),changed:!0}:{projected:e,changed:!1}}function yi(e,t={}){if(t.idOnly===!0){let a=xx(e);if(a!==null)return a}if(t.compactEnvelope===!0){let a=Cx(e);if(a!==null)return a}if((t.changedFields??"full")==="full"||!Qt(e))return e;let r=!1,o=e,i=Ax(e)?Bp(e):null;i!==null&&(o=i,r=!0);let s=Ox(o);return s.changed&&(o=s.projected,r=!0),r?o: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]="630b48a7-aa38-529c-a272-14b7c748101c")}catch{}})();var Hp='.row_contract.row_keys[] as $key | getpath($key | split(".")) | if type == "array" then .[] else if type == "object" then to_entries[] else empty end end',Ix={context:{row_keys:["high_level","low_level"],fields:"supported"},get:{row_keys:["children"],fields:"supported"},list:{row_keys:["items"],fields:"supported"},next:{row_keys:["recommended","ready","decision_needed","blocked","held_by_others"],fields:"unsupported"},search:{row_keys:["items"],fields:"supported"},activity:{row_keys:["compact_activity","provenance_activity","activity"],fields:"unsupported"},history:{row_keys:["compact_history","provenance_history","history"],fields:"unsupported"},deps:{row_keys:["graph.nodes","graph.edges","context.nodes","context.edges"],fields:"unsupported"},health:{row_keys:["checks"],fields:"unsupported"},aggregate:{row_keys:["groups"],fields:"unsupported"},duplicates:{row_keys:["clusters"],fields:"unsupported"},stats:{row_keys:["by_type","by_status"],fields:"unsupported"},comments:{row_keys:["comments"],fields:"unsupported"},notes:{row_keys:["notes"],fields:"unsupported"},learnings:{row_keys:["learnings"],fields:"unsupported"},files:{row_keys:["files"],fields:"unsupported"},docs:{row_keys:["docs"],fields:"unsupported"},validate:{row_keys:["checks","warnings"],fields:"unsupported"},contracts:{row_keys:["command_summaries","commands"],fields:"unsupported"}},Rx=[{command:"activity",complete_mode:"full",omissions_by_mode:{compact:[{name:"provenance",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}},{command:"history",complete_mode:"full",omissions_by_mode:{compact:[{name:"raw_history",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}}];function Zz(e,t,n){if(e&&t)throw new b(`${n} cannot be combined with --full`,_.USAGE)}function Be(e,t=new Set){let n=e.filter(r=>!t.has(r.name)).map(r=>({...r}));return{has_omissions:n.length>0,omitted_field_group_count:n.length,omitted_field_groups:n}}function eq(e,t){let n=Rx.find(o=>o.command===e);if(n===void 0)throw new TypeError(`Unknown mode-paired output command: ${e}`);if(t===n.complete_mode)return Be([]);let r=n.omissions_by_mode[t];if(r===void 0)throw new TypeError(`Unknown ${e} output mode: ${t}`);return Be(r)}var Nx=[{name:"hierarchy",restore_with:"--depth standard"},{name:"activity",restore_with:"--depth standard"},{name:"progress",restore_with:"--depth standard"},{name:"blockers",restore_with:"--depth standard"},{name:"recently_created",restore_with:"--depth standard"},{name:"unparented",restore_with:"--depth standard"},{name:"files",restore_with:"--depth deep"},{name:"workload",restore_with:"--depth standard"},{name:"staleness",restore_with:"--depth deep"},{name:"tests",restore_with:"--depth deep"},{name:"workspace_memory",restore_with:"--depth deep"}];function Ie(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Dx(e){return Ie(e)&&typeof e.command=="string"&&e.command.trim().length>0&&(e.row_kind==="collection"||e.row_kind==="none")&&Array.isArray(e.row_keys)&&e.row_keys.every(t=>typeof t=="string"&&t.length>0)&&new Set(e.row_keys).size===e.row_keys.length&&(e.fields==="supported"||e.fields==="unsupported")&&(e.row_kind==="collection"?e.row_keys.length>0&&typeof e.jq_selector=="string"&&e.jq_selector.trim().length>0:e.row_keys.length===0&&e.jq_selector===void 0)}var Lx={ancestors:["ids"],descendants:["ids"],predecessors:["ids"],successors:["ids"],paths:["paths"],impact:["affected"],audit:["findings"],communities:["communities"],redundancy:["redundant"],dominators:["bottlenecks"],slack:["rows"],centrality:["rows"],articulation:["articulation_points","bridges"],plan:["steps"]},Px={context:["sections_included","high_level","low_level"],get:["item"],list:["items","projection"],next:["recommended","ready","decision_needed","blocked","held_by_others"],search:["items","projection"],activity:["compact_activity","provenance_activity","activity"],history:["compact_history","provenance_history","history"],deps:["tree","graph","projection"],health:["checks"],aggregate:["groups"],duplicates:["clusters"],stats:["totals","by_type","by_status"],comments:["comments"],notes:["notes"],learnings:["learnings"],files:["files"],docs:["docs"],validate:["checks","warnings"],contracts:["command_summaries","commands","selected"]};function Mx(e,t){let n=e.trim().toLowerCase().split(/\s+/u,1)[0],r=n?.startsWith("list-")?"list":n;if(r==="graph"){let s=typeof t.subcommand=="string"?t.subcommand:"";if(s.length===0)return;let a=Lx[s];if(a===void 0)return;let l=a.filter(c=>Array.isArray(t[c])||Ie(t[c]));return{command:"graph",row_kind:l.length>0?"collection":"none",row_keys:l,fields:"unsupported",...l.length>0?{jq_selector:Hp}:{}}}let o=Ix[r],i=Px[r];return o===void 0||i===void 0||!i.some(s=>Object.hasOwn(t,s))?void 0:(()=>{let s=o.row_keys.filter(a=>{let l=a.split(".").reduce((c,d)=>Ie(c)?c[d]:void 0,t);return Array.isArray(l)||Ie(l)});return{command:r,row_kind:s.length>0?"collection":"none",row_keys:s,fields:o.fields,...s.length>0?{jq_selector:Hp}:{}}})()}function Fx(e){if(!Ie(e.projection)||typeof e.projection.mode!="string"||e.projection.mode.trim().length===0)return;let t=e.projection.declared_field_groups,n=e.projection.included_field_groups;if(!Array.isArray(t)||!Array.isArray(n))return;let r=t.filter(s=>Ie(s)&&typeof s.name=="string"&&s.name.trim().length>0&&typeof s.restore_with=="string"&&s.restore_with.trim().length>0),o=n.filter(s=>typeof s=="string");if(r.length!==t.length||o.length!==n.length)return;let i=new Set(r.map(s=>s.name));if(!(i.size!==r.length||new Set(o).size!==o.length||o.some(s=>!i.has(s))))return Be(r,new Set(o))}function $x(e){if(Array.isArray(e.sections_included))return Be(Nx,new Set(e.sections_included.filter(t=>typeof t=="string")))}function jx(e){if(!Ie(e.item))return;let t=e.item,n=["comments","notes","learnings","files","tests","docs","reminders","events"],r=["body","children","claim_state","linked","schedule"],o=["body",...n,...r.slice(1)].map(i=>({name:i,restore_with:`--fields ${i}`}));return Be(o,new Set(o.flatMap(({name:i})=>Object.hasOwn(n.includes(i)?t:e,i)?[i]:[])))}function Wp(e){if(Ie(e.projection))return Be([{name:"full_item_fields",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_item_fields"]:[]))}function Ux(e){if(!Ie(e.projection))return Be([]);if(typeof e.projection.mode=="string")return Be([{name:"full_check_details",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_check_details"]:[]))}function zx(e){if(!(!Ie(e.selected)||typeof e.selected.summary!="boolean"))return Be([{name:"full_contract_catalog",restore_with:"--full"}],new Set(e.selected.summary?[]:["full_contract_catalog"]))}function qx(e,t){let n=Fx(t);if(n!==void 0)return n;let[r]=e.split(/\s+/u,1);if(r==="context")return $x(t);if(r==="get")return jx(t);if(r==="list"||r.startsWith("list-"))return Wp(t);if(r==="search")return Wp(t)??Be([{name:"projection_metadata",restore_with:"--full"}]);if(r==="health")return Ux(t);if(r==="contracts")return zx(t)}function Kp(e,t){if(e===void 0||!Ie(t))return t;let n=t.row_contract,r=Dx(n)?n:Mx(e,t),o=r!==void 0?{...t,row_contract:r}:Object.hasOwn(t,"row_contract")?Object.fromEntries(Object.entries(t).filter(([s])=>s!=="row_contract")):t;if(Ie(o.omission_receipt))return o;let i=qx(e,o);return i===void 0?o:{...o,omission_receipt:i}}import{createHash as Gx}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="83fe180b-9d95-5d19-9d3b-ba3821700e61")}catch{}})();var Sl=1,Xp=4096,Vx=/^[A-Za-z0-9_-]+$/;function Yp(e){return e.replace(/^--/u,"").replace(/[-_]([a-z0-9])/gu,(t,n)=>n.toUpperCase())}function sq(e,t){let n=new Set;for(let r of t)if(r.cursor_semantics==="presentation"){n.add(Yp(r.flag));for(let o of r.aliases??[])n.add(Yp(o))}return Object.fromEntries(Object.entries(e).filter(([r])=>!n.has(r)))}function aq(e,t){return Gx("sha256").update(e).update("\0").update(we(t)).digest("hex").slice(0,24)}function kl(e,t,n,r){return Buffer.from(JSON.stringify({version:Sl,fingerprint:e,after_id:t,...n===void 0?{}:{after_index:n},...r===void 0?{}:{snapshot:r}})).toString("base64url")}function Zt(e){return new b(e,_.USAGE,{code:"invalid_query_cursor",nextSteps:["Repeat the original query without --after to obtain a fresh cursor."]})}function Bx(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e;return t.version===Sl&&typeof t.fingerprint=="string"&&typeof t.after_id=="string"&&t.after_id.length>0&&(t.after_index===void 0||Number.isSafeInteger(t.after_index)&&t.after_index>=0)&&(t.snapshot===void 0||typeof t.snapshot=="string"&&t.snapshot.length>0)}function xl(e,t){if(typeof e!="string")throw Zt("Query cursor is malformed.");let n=e.trim();if(n.length===0||n.length>Xp||!Vx.test(n))throw Zt("Query cursor is malformed.");let r;try{r=JSON.parse(Buffer.from(n,"base64url").toString("utf8"))}catch{throw Zt("Query cursor is malformed.")}if(!Bx(r))throw Zt("Query cursor version or payload is unsupported.");let o=r;if(o.fingerprint!==t)throw Zt(`Query cursor does not match the current filters, sort, or query (${o.fingerprint} != ${t}).`);return{after_id:o.after_id,...o.after_index===void 0?{}:{after_index:o.after_index},...o.snapshot===void 0?{}:{snapshot:o.snapshot}}}function lq(e,t){return xl(e,t).after_id}function Hx(e,t,n,r){if(t===void 0)return 0;let o=xl(t,n),i=e.findIndex(s=>r(s)===o.after_id);if(i<0){if(o.after_index!==void 0)return Math.min(o.after_index,e.length);throw Zt(`Query cursor item ${o.after_id} is no longer present in this result set.`)}return i+1}function cq(e,t){if(t.cursor!==void 0&&xl(t.cursor,t.fingerprint).snapshot!==t.snapshot)throw Zt("Query cursor does not match the requested snapshot.");let n=Hx(e,t.cursor,t.fingerprint,t.readId),r=e.slice(n,n+t.limit),o=r.length>0&&n+r.length<e.length,i=r.at(-1);return{rows:r,has_more:o,...o&&i!==void 0?{next_cursor:kl(t.fingerprint,t.readId(i),n+r.length-1,t.snapshot)}:{}}}var dq=Object.freeze({version:Sl,max_length:Xp});(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ae6fbd4a-6c4e-5639-93ac-f107a336e95b")}catch{}})();function Cl(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Wx(e,t){let n=e;for(let r of t.split(".")){if(!Cl(n))return;n=n[r]}return n}function Jp(e,t,n){let r=t.split("."),o={...e},i=e,s=o;for(let a of r.slice(0,-1)){let l=i[a],c={...l};s[a]=c,i=l,s=c}return s[r.at(-1)]=n,o}function Ol(e){let t=e.row_contract;return Cl(t)&&Array.isArray(t.row_keys)?t.row_keys.filter(n=>typeof n=="string"&&n.trim().length>0):Object.entries(e).filter(([,n])=>Array.isArray(n)).map(([n])=>n)}function en(e){return Ol(e).flatMap(t=>{let n=Wx(e,t);return Array.isArray(n)||Cl(n)?[{path:t,value:n}]:[]})}function hi(e){return en(e).reduce((t,n)=>t+(Array.isArray(n.value)?n.value.length:Object.keys(n.value).length),0)}function bi(e,t){let n=e;for(let r of en(n)){let o=Array.isArray(r.value)?r.value.map((i,s)=>t(i,r.path,s)):Object.fromEntries(Object.entries(r.value).map(([i,s],a)=>[i,t(s,r.path,a)]));n=Jp(n,r.path,o)}return n}function Qp(e,t){let n=e,r=!1;for(let o of en(n)){let i=Array.isArray(o.value)?o.value:Object.entries(o.value);if(i.length<=t)continue;r=!0;let s=Array.isArray(o.value)?i.slice(0,t):Object.fromEntries(i.slice(0,t));n=Jp(n,o.path,s)}return{result:n,truncated:r}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="04ad0d11-1fb7-5eb4-8ff0-d81a7090c4ff")}catch{}})();var Il=256,Ei=1e4,Kx=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$/u,Yx=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/u,Xx=new Set(["version","id","token_budget","spent_tokens","seen_item_ids"]),Jx=[{valid:e=>e.version===1,reason:"version must equal 1."},{valid:e=>typeof e.id=="string"&&Kx.test(e.id),reason:"id must be 1-64 portable identifier characters."},{valid:e=>Number.isSafeInteger(e.token_budget)&&e.token_budget>=Il,reason:`token_budget must be a safe integer of at least ${Il}.`},{valid:e=>Number.isSafeInteger(e.spent_tokens)&&e.spent_tokens>=0&&e.spent_tokens<=e.token_budget,reason:"spent_tokens must be a non-negative safe integer no larger than token_budget."},{valid:e=>Array.isArray(e.seen_item_ids)&&e.seen_item_ids.length<=Ei&&e.seen_item_ids.every(t=>typeof t=="string"&&Yx.test(t)),reason:`seen_item_ids must contain at most ${Ei} portable item identifiers.`}];function Ti(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function wi(e){throw new b(`--output-session ${e}`,_.USAGE,{code:"invalid_read_output_session",field:"outputSession"})}function Rl(e){if(e===void 0)return;let t=e;if(typeof e=="string")try{t=JSON.parse(e)}catch{wi("must be a valid JSON object.")}Ti(t)||wi("must be a JSON object.");let n=Object.keys(t).filter(i=>!Xx.has(i));n.length>0&&wi(`contains unknown field "${n.sort()[0]}".`);let r=Jx.find(i=>!i.valid(t));r!==void 0&&wi(r.reason);let o=[...new Set(t.seen_item_ids)].sort();return{version:1,id:t.id,token_budget:t.token_budget,spent_tokens:t.spent_tokens,seen_item_ids:o}}function Zp(e){if(Ti(e))return typeof e.id=="string"?e.id:typeof e.item_id=="string"?e.item_id:Ti(e.item)&&typeof e.item.id=="string"?e.item.id:void 0}function Qx(e){let t=new Set,n=0;for(let r of en(e)){let o=Array.isArray(r.value)?r.value:Object.values(r.value);for(let i of o){if(!Ti(i))continue;if(typeof i.context_ref=="string"){n+=1;continue}let s=Zp(i);s!==void 0&&t.add(s)}}return{deliveredIds:t,suppressedRepeatCount:n}}function em(e,t){let n=new Set(t.seen_item_ids);return bi(e,r=>{let o=Zp(r);return o!==void 0&&n.has(o)?{id:o,context_ref:`session:${t.id}:${o}`}:r})}function Nl(e,t){let{deliveredIds:n,suppressedRepeatCount:r}=Qx(e),o=[...new Set([...t.seen_item_ids,...n])].sort(),i={contract_version:1,id:t.id,measurement_scope:"complete_read_envelope",estimator:"ceil(utf8_bytes / 4)",token_budget:t.token_budget,spent_before_tokens:t.spent_tokens,spent_this_call_tokens:0,charged_this_call_tokens:0,spent_total_tokens:t.spent_tokens,remaining_tokens:t.token_budget-t.spent_tokens,exhausted:!1,seen_before_count:t.seen_item_ids.length,new_item_count:n.size,suppressed_repeat_count:r,reference_format:"session:<session-id>:<item-id>",restore_reference_with:"pm get <item-id> --brief",next_state:{version:1,id:t.id,token_budget:t.token_budget,spent_tokens:t.spent_tokens,seen_item_ids:o}},s={...e,read_session:i},a=d=>{i.spent_this_call_tokens=d,i.charged_this_call_tokens=Math.min(t.token_budget-t.spent_tokens,d),i.spent_total_tokens=Math.min(t.token_budget,t.spent_tokens+i.charged_this_call_tokens),i.remaining_tokens=Math.max(0,t.token_budget-i.spent_total_tokens),i.exhausted=i.remaining_tokens<Il,i.next_state.spent_tokens=i.spent_total_tokens},l=0,c=0;for(let d=0;d<8;d+=1){a(l);let u=Math.ceil(Buffer.byteLength(JSON.stringify(s),"utf8")/4);if(u===l)return s;c=Math.max(c,u),l=u}return a(c),s}function tm(e){return Math.max(0,e.token_budget-e.spent_tokens)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1726fdce-dc71-5707-ae75-b588691e813d")}catch{}})();var Zx=8,eC=64;function tC(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Dl(e,t){return typeof e=="string"?e.length<=240?e:(t.compacted=!0,`${e.slice(0,240)}\u2026`):Array.isArray(e)?e.map(n=>Dl(n,t)):tC(e)?Object.fromEntries(Object.entries(e).map(([n,r])=>[n,Dl(r,t)])):e}function Dn(e,t){let n=t.estimated_tokens;for(let r=0;r<Zx;r+=1){t.estimated_tokens=n;let o=Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4);if(o===n)return;n=o}t.estimated_tokens=n}function nC(e,t,n){for(let r=0;r<eC;r+=1){if(Dn(e,t),t.estimated_tokens<=n)return;let o=en(e).filter(i=>(Array.isArray(i.value)?i.value.length:Object.keys(i.value).length)>1).map(i=>({collection:i,length:Array.isArray(i.value)?i.value.length:Object.keys(i.value).length})).sort((i,s)=>s.length-i.length||i.collection.path.localeCompare(s.collection.path))[0]?.collection;if(!o)return;if(Array.isArray(o.value))o.value.splice(-Math.max(1,Math.ceil(o.value.length/2)));else{let i=Object.keys(o.value);for(let s of i.slice(-Math.max(1,Math.ceil(i.length/2))))delete o.value[s]}t.rows_compacted=!0,e.has_more=!0,e.truncated=!0,typeof e.count=="number"&&(e.count=hi(e))}}function nm(e,t,n){let r={compacted:!1},o=Dl(e,r);return t.strings_compacted=r.compacted,o.read_output=t,nC(o,t,n),Dn(o,t),o}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="819ac44d-0add-581c-90e8-ac6e8247b04b")}catch{}})();var Ln=["include","amount","cost","encoding"],am=["list","context","search","get","next","health","deps","graph","history","activity","validate","events","contracts","comments","notes","files","docs","stats","aggregate","package-manage"],lm=["canonical","legacy","intent","default"],Ml={include:"--output-include",amount:"--output-limit",cost:"--output-budget",encoding:"--output-format"},cm=Object.freeze(Ln.map(e=>Ml[e])),dm=Object.freeze(["--output-session"]),rC={list:{include:["--brief","--compact","--fields","--full"],amount:["--after","--limit","--no-truncate"],cost:["--token-budget"],encoding:["--format","--stream"]},context:{include:["--fields","--section"],amount:["--after","--depth","--limit"],cost:["--token-budget"],encoding:["--format"]},search:{include:["--compact","--fields","--full"],amount:["--after","--limit"],cost:["--token-budget"],encoding:["--format"]},get:{include:["--fields","--full"],amount:["--depth"],cost:["--token-budget"],encoding:["--format"]},next:{amount:["--blocked-limit","--limit"],cost:["--token-budget"],encoding:["--format"]},health:{include:["--brief","--check-only","--full","--summary","--verbose"]},deps:{include:["--collapse","--full","--summary"],amount:["--edge-limit","--max-depth","--node-limit"],cost:["--token-budget"],encoding:["--format"]},graph:{include:["--full","--summary"],amount:["--after","--limit","--max-depth","--max-paths"]},history:{include:["--compact","--full"],amount:["--limit"],encoding:["--format"]},activity:{include:["--compact","--full"],amount:["--limit","--unbounded"],encoding:["--stream"]},validate:{include:["--counts","--full","--verbose"]},events:{include:["--full"],amount:["--limit"],encoding:["--follow"]},contracts:{include:["--full","--summary"]},comments:{amount:["--limit"]},notes:{amount:["--limit"]},files:{amount:["--limit","--no-truncate","--offset"]},docs:{},stats:{},aggregate:{},"package-manage":{}},oC=new Set(["--fields","--section"]),iC=Object.freeze({"--after":"--after retains cursor-position semantics; use --output-limit <n> separately to bound returned rows.","--check-only":"--check-only retains health side-effect semantics; --output-include does not suppress vector refresh.","--depth":"--depth retains traversal or detail-depth semantics; --output-limit does not replace it.","--follow":"--follow retains event-tail semantics; --output-format does not enable following.","--max-depth":"--max-depth retains graph traversal-depth semantics; --output-limit does not replace it.","--max-paths":"--max-paths retains graph path-search semantics; use --output-limit separately to bound returned rows.","--offset":"--offset retains positional pagination semantics; use --output-limit separately to bound returned rows.","--stream":"--stream retains command streaming semantics; --output-format selects only static result encoding."});function um(e){return e.slice(2).replaceAll("-","_")}function sC(e,t){let n=iC[e];if(n!==void 0)return n;let r=t==="include"?oC.has(e)?"<csv>":um(e):t==="amount"?"<n>":t==="cost"?"<tokens>":"<toon|json>";return`${e} is a compatibility alias; prefer ${Ml[t]} ${r}.`}function aC(e){let t=rC[e],n=Object.freeze(Object.fromEntries(Ln.map(r=>[r,Object.freeze({dimension:r,canonical_option:Ml[r],applicable:!0,inapplicable_reason:null,legacy_aliases:Object.freeze((t[r]??[]).map(o=>Object.freeze({flag:o,migration_hint:sC(o,r),visibility:"hidden_alias"})))})])));return Object.freeze({command:e,dimensions:n,precedence:lm})}var lC=Object.freeze(am.map(aC)),cC=new Map(lC.map(e=>[e.command,e]));function Mn(e){let t=e.trim().toLowerCase().replaceAll(/\s+/gu," "),n=t==="package manage"||t==="package-manage"?"package-manage":t.split(" ")[0],r=n.startsWith("list-")?"list":n==="ctx"?"context":n;return am.includes(r)?r:void 0}var dC=["outputInclude","output_include","outputLimit","output_limit","outputBudget","output_budget","outputFormat","output_format","outputSession","output_session"],uC={comments:["add","body","stdin","file","edit","delete"],notes:["add","addJson","stdin","file","edit","delete"],files:["add","addGlob","remove","migrate","apply","note"],docs:["add","addGlob","remove","migrate","note"]};function fC(e){return dC.some(t=>e[t]!==void 0)}var pC=[{keys:["outputInclude","output_include"],valid:e=>Ll(e)!==void 0,message:"--output-include requires at least one comma-separated field or section."},{keys:["outputLimit","output_limit"],valid:e=>e==="unbounded"||Pn(e)!==void 0,message:"--output-limit must be a positive integer or unbounded."},{keys:["outputBudget","output_budget"],valid:e=>Pn(e)!==void 0,message:"--output-budget must be a positive integer."},{keys:["outputFormat","output_format"],valid:e=>e==="toon"||e==="json",message:"--output-format must be toon or json."},{keys:["outputSession","output_session"],valid:e=>(Rl(e),!0),message:"--output-session must be a valid session-state object."}];function Aq(e,t){if(!fC(t))return;let n=Mn(e);if(!n)throw new b(`Universal output controls apply only to read commands; ${e||"this command"} is not a read surface.`,_.USAGE);if((uC[n]??[]).some(r=>t[r]!==void 0&&t[r]!==!1))throw new b(`Universal output controls cannot be combined with a ${n} mutation.`,_.USAGE);for(let r of pC){let o=r.keys.map(i=>t[i]).find(i=>i!==void 0);if(o!==void 0&&!r.valid(o))throw new b(r.message,_.USAGE)}}function mC(e){return e.slice(2).replace(/-([a-z])/gu,(t,n)=>n.toUpperCase())}function gC(e,t){let n=mC(t);if(Object.hasOwn(e,n))return e[n];let r=t.slice(2).replaceAll("-","_");if(Object.hasOwn(e,r))return e[r];if(t==="--no-truncate"&&e.truncate===!1)return!0}function _C(e){return e!==void 0&&e!==!1&&e!==null}function Ll(e){let n=(Array.isArray(e)?e:[e]).flatMap(r=>typeof r=="string"?r.split(","):[]).map(r=>r.trim()).filter(Boolean);return n.length>0?[...new Set(n)]:void 0}function Pn(e){let t=typeof e=="number"?e:typeof e=="string"&&/^\d+$/u.test(e.trim())?Number(e):Number.NaN;return Number.isSafeInteger(t)&&t>0?t:void 0}function yC(e,t,n){for(let r of e.legacy_aliases){let o=gC(t,r.flag),i={value:o,flag:r.flag};if(_C(o)&&n(i))return i}}function rm(e,t){let n=Ll(e);if(n)return{source:"canonical",value:n};if(t)return{source:"legacy",value:Ll(t.value)??[um(t.flag)]}}function om(e,t){if(e==="unbounded")return{source:"canonical",value:"unbounded"};let n=Pn(e);if(n!==void 0)return{source:"canonical",value:n};if(!t)return;if(t.flag==="--no-truncate"||t.flag==="--unbounded")return{source:"legacy",value:"unbounded"};let r=Pn(t.value);return r===void 0?void 0:{source:"legacy",value:r}}function im(e,t){let n=Pn(e);if(n!==void 0)return{source:"canonical",value:n};if(!t)return;let r=Pn(t.value);return r===void 0?void 0:{source:"legacy",value:r}}function sm(e,t){if(e==="json"||e==="toon")return{source:"canonical",value:e};if(t)return t.flag==="--stream"||t.flag==="--follow"?{source:"legacy",value:"stream"}:t.value==="json"||t.value==="toon"?{source:"legacy",value:t.value}:void 0}function fm(e,t){let n=Mn(e);if(!n)return;let r=cC.get(n),o={include:l=>rm(void 0,l),amount:l=>om(void 0,l),cost:l=>im(void 0,l),encoding:l=>sm(void 0,l)},i=Object.fromEntries(Ln.map(l=>[l,yC(r.dimensions[l],t,c=>o[l](c)!==void 0)])),s=Ln.flatMap(l=>{let c=i[l];return c?[c.flag]:[]}),a=Ln.flatMap(l=>{let c=i[l];return c?[r.dimensions[l].legacy_aliases.find(u=>u.flag===c.flag).migration_hint]:[]});return{command:n,include:rm(t.outputInclude??t.output_include,i.include),amount:om(t.outputLimit??t.output_limit,i.amount),cost:im(t.outputBudget??t.output_budget,i.cost),encoding:sm(t.outputFormat??t.output_format,i.encoding),legacy_aliases_used:s,migration_hints:a,precedence:lm}}function Nr(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}var Fl=new Set(["applied_bound","applied_limit","completeness","continuation_contract","count","filters","has_more","next_cursor","now","omission_receipt","projection","row_contract","sorting","total","truncated"]),hC=["collection_counts","notes_count","tests_count"];function pm(e,t){let n=new Set(t.map(r=>r.split(".")[0]));return Object.fromEntries(Object.entries(e).filter(([r])=>n.has(r)))}function bC(e){let t=Nr(e.item)?e.item:{},n=[...new Set([...Object.keys(t),...hC.filter(o=>Object.hasOwn(t,o))])].sort((o,i)=>o.localeCompare(i)),r=Object.keys(e).filter(o=>o!=="item"&&o!=="read_output"&&!Fl.has(o)).sort((o,i)=>o.localeCompare(i));return{item:t,itemFields:n,sections:r,valid:[...n,"item",...n.map(o=>`item.${o}`),...r]}}function wC(e,t){let n=bC(e),r=t.filter(u=>!n.valid.includes(u));if(r.length>0)throw new b(`Unknown --output-include selector(s) for get: ${r.join(", ")}. Valid selectors: ${n.valid.join(", ")}.`,_.USAGE);let o=t.includes("item"),i=t.flatMap(u=>u.startsWith("item.")?[u.slice(5)]:n.itemFields.includes(u)?[u]:[]).filter((u,p,f)=>f.indexOf(u)===p);if(o&&i.length>0)throw new b("--output-include cannot mix a full item with projected item fields; use item or item.<field>, not both.",_.USAGE);let s=new Set(t.filter(u=>n.sections.includes(u))),a=Object.fromEntries(Object.entries(e).filter(([u])=>Fl.has(u)||s.has(u)));o?a.item=n.item:i.length>0&&(a.item=pm(n.item,i));let l=[...o?[]:i.length>0?n.itemFields.filter(u=>!i.includes(u)).map(u=>({name:`item.${u}`,restore_with:`--output-include item.${u}`})):[{name:"item",restore_with:"--output-include item"}],...n.sections.filter(u=>!s.has(u)).map(u=>({name:u,restore_with:`--output-include ${u}`}))],d=[...Nr(a.omission_receipt)&&Array.isArray(a.omission_receipt.omitted_field_groups)?a.omission_receipt.omitted_field_groups:[],...l];return a.omission_receipt={has_omissions:d.length>0,omitted_field_group_count:d.length,omitted_field_groups:d},a}function EC(e,t,n){if(e==="get")return wC(t,n);let r=Ol(t),o=n.flatMap(s=>r.flatMap(a=>s.startsWith(`${a}.`)?[s.slice(a.length+1)]:[])),i=n.some(s=>Object.hasOwn(t,s.split(".")[0])&&!r.some(a=>s.startsWith(`${a}.`)));if(r.length>0&&(!i||o.length>0)){let s={...t};return bi(s,a=>Nr(a)?pm(a,o.length>0?o:n):a)}return Object.fromEntries(Object.entries(t).filter(([s])=>n.some(a=>a.split(".")[0]===s)||Fl.has(s)))}function TC(e,t){if(t==="unbounded")return e;let{result:n,truncated:r}=Qp(e,t);return r&&(n.has_more=!0,n.truncated=!0,typeof n.count=="number"&&(n.count=hi(n)),n.applied_bound={kind:"output_limit",source:"explicit",value:t}),n}function vC(e){return Ln.filter(t=>e[t]!==void 0)}function Pl(e,t,n){let r=Nl(e,t);for(let o=0;o<8;o+=1){let i=n.estimated_tokens,s=r.read_session.spent_this_call_tokens;Dn(r,n),r=Nl(r,t);let a=r.read_session.spent_this_call_tokens;if(n.estimated_tokens===i&&a===s)return r}return r}function AC(e,t,n){let r={...e};return t.include?.source==="canonical"&&(r=EC(t.command,r,t.include.value)),t.amount?.source==="canonical"&&(r=TC(r,t.amount.value)),n===void 0?r:em(r,n)}function SC(e,t){let n=[...e.cost?.source==="canonical"?[e.cost.value]:[],...t===void 0?[]:[tm(t)]];return n.length===0?void 0:Math.min(...n)}function kC(e,t,n,r){let o={contract_version:1,command:e.command,requested_dimensions:t,precedence:e.precedence,legacy_aliases_used:[],migration_hints:[],estimated_tokens:0,within_budget:!1,strings_compacted:!1,rows_compacted:!1,result_omitted:!0},i={output_budget_exceeded:{omitted_result:!0,reason:"requested_budget_infeasible",restore_with:"Increase --output-budget or narrow the read."},read_output:o},s=n===void 0?i:Pl(i,n,o);if(n===void 0&&Dn(s,o),n!==void 0&&o.estimated_tokens>r)throw new b("The remaining output-session budget cannot fit its mandatory receipts; start a new session with a larger token_budget.",_.USAGE);return s}function mm(e,t,n){let r=fm(e,t);if(!r)return n;let o=Rl(t.outputSession??t.output_session),i=vC(r);if(i.filter(d=>r[d]?.source==="canonical").length===0&&o===void 0)return n;let a=AC(n,r,o),l={contract_version:1,command:r.command,requested_dimensions:i,precedence:r.precedence,legacy_aliases_used:r.legacy_aliases_used,migration_hints:r.migration_hints,estimated_tokens:0,within_budget:!0,strings_compacted:!1,rows_compacted:!1,result_omitted:!1};a.read_output=l,a=o===void 0?a:Pl(a,o,l),Dn(a,l);let c=SC(r,o);return c!==void 0&&l.estimated_tokens>c&&(a=nm(a,l,c),o!==void 0&&(a=Pl(a,o,l))),c!==void 0&&l.estimated_tokens>c?kC(r,i,o,c):a}function Sq(e){return Nr(e)&&Nr(e.output_budget_exceeded)&&e.output_budget_exceeded.omitted_result===!0&&e.output_budget_exceeded.reason==="requested_budget_infeasible"}function gm(e,t){let n=fm(e,t)?.encoding;return n?.value==="json"||n?.value==="toon"?n.value:void 0}import{AsyncLocalStorage as xC}from"node:async_hooks";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e48a306e-debb-5e66-ae9b-68bf17fa405f")}catch{}})();var ym=Object.freeze([{command:"context",intent:"orient",description:"Bounded active hierarchy, ownership, blockers, and recent progress.",included_field_groups:["summary","focus","hierarchy","blockers","activity"],token_budget:2400,source:"core"},{command:"context",intent:"handoff",description:"Active ownership, evidence, decisions, and immediate continuation context.",included_field_groups:["summary","focus","in_progress","decisions","activity"],token_budget:2200,source:"core"},{command:"get",intent:"inspect",description:"Standard-depth item metadata, relationships, evidence, and lifecycle state.",included_field_groups:["item","children","claim_state","linked"],token_budget:3200,source:"core"},{command:"list",intent:"triage",description:"A budget-derived page of compact governance, ownership, priority, and blocker rows for triage.",included_field_groups:["identity","governance","ownership","dependencies"],token_budget:3200,source:"core"},{command:"next",intent:"execute",description:"The highest-ranked actionable work with concise ranking evidence.",included_field_groups:["recommended"],token_budget:1200,source:"core"},{command:"search",intent:"discover",description:"A budget-derived page of ranked canonical lineage candidates with compact match evidence.",included_field_groups:["identity","status","lineage","match"],token_budget:1800,source:"core"}]),hm=new xC;function CC(){return hm.getStore()??ym}function Dq(e,t){return hm.run(IC(e.workspaceContracts,e.packageContracts),t)}function OC(e,t){let n=e.command.trim().toLowerCase(),r=e.intent.trim().toLowerCase(),o=`${n}:${r}`;if(!/^[a-z0-9][a-z0-9-]*$/.test(n)||!/^[a-z0-9][a-z0-9-]*$/.test(r))throw new TypeError(`Invalid context intent command or name: ${o}`);if(e.description.trim().length===0)throw new TypeError(`Context intent ${o} requires a non-empty description`);if(!Number.isSafeInteger(e.token_budget)||e.token_budget<=0)throw new TypeError(`Context intent ${o} requires a positive integer token_budget`);let i=[...new Set(e.included_field_groups.map(s=>s.trim()).filter(Boolean))];if(i.length===0)throw new TypeError(`Context intent ${o} requires included_field_groups`);return{command:n,intent:r,description:e.description.trim(),included_field_groups:i,token_budget:e.token_budget,source:t}}function IC(e=[],t=[]){let n=[{source:"core",contracts:ym,allowOverride:!1},{source:"package",contracts:t,allowOverride:!1},{source:"workspace",contracts:e,allowOverride:!0}],r=new Map,o=new Set;for(let i of n){o.clear();for(let s of i.contracts){let a=OC(s,i.source),l=`${a.command}:${a.intent}`;if(o.has(l))throw new TypeError(`Duplicate context intent declaration: ${l}`);if(o.add(l),!i.allowOverride&&r.has(l))throw new TypeError(`Duplicate context intent declaration: ${l}`);r.set(l,a)}}return[...r.values()].sort((i,s)=>i.command.localeCompare(s.command)||i.intent.localeCompare(s.intent))}function bm(e,t,n=CC()){let r=e.trim().toLowerCase(),o=t.trim().toLowerCase(),i=n.find(c=>c.command===r&&c.intent===o);if(i)return{...i,source:i.source??"core"};let s=n.filter(c=>c.command===r).map(c=>c.intent);if(s.length===0)return;let a=s.map(c=>{let d=Array.from({length:o.length+1},(u,p)=>p);for(let u=1;u<=c.length;u+=1){let p=d[0];d[0]=u;for(let f=1;f<=o.length;f+=1){let y=d[f];d[f]=Math.min(d[f]+1,d[f-1]+1,p+(c[u-1]===o[f-1]?0:1)),p=y}}return{candidate:c,distance:d[o.length]}}).sort((c,d)=>c.distance-d.distance||c.candidate.localeCompare(d.candidate))[0].candidate,l=`pm ${r} --for ${a}`;throw new b(`Unknown context intent "${o}" for ${r}. Did you mean "${a}"?`,_.USAGE,{code:"unknown_context_intent",reason:"unknown_intent",field:"for",required:`Use a declared ${r} intent.`,why:"Intent names are command-local contracts and cannot be inferred from output section names.",nextSteps:[l],recovery:{recovery_mode:"compact",attempted_command:`pm ${r} --for ${o}`,suggested_retry:l}})}var wm={context:(e,t,n)=>{e.depth===void 0&&(e.depth=t.intent==="handoff"?"deep":"standard"),e.section===void 0&&(e.section=t.intent==="handoff"?["activity","progress","blockers"]:["hierarchy","blockers","activity"]);let r=Ai(e.tokenBudget,t.token_budget),o=Math.max(1,Math.floor((r-800)/500)),i=String(n?o:Math.min(20,o));e.limit===void 0&&(e.limit=i),e.activityLimit===void 0&&(e.activityLimit=i)},get:e=>{e.depth===void 0&&e.fields===void 0&&(e.depth="standard")},list:(e,t,n)=>{if(e.brief===void 0&&e.compact===void 0&&e.full===void 0&&e.fields===void 0&&(e.fields="id,title,status,type,priority,parent,assignee,risk,blocked_by"),e.limit===void 0){let r=Ai(e.tokenBudget,t.token_budget),o=Math.max(2,Math.floor((r-520)/16));e.limit=String(n?o:Math.min(100,o))}},next:e=>{e.readyOnly===void 0&&(e.readyOnly=!0)},search:(e,t,n)=>{if(e.compact===void 0&&e.full===void 0&&e.fields===void 0&&(e.compact=!0),e.limit===void 0){let r=Ai(e.tokenBudget,t.token_budget),o=Math.max(2,Math.floor((r-480)/16));e.limit=String(n?o:Math.min(100,o))}}};function Lq(e,t){let n=t.tokenBudget??t.token_budget;if(typeof t.for!="string"){if(n!==void 0&&(e==="get"||e==="list"||e==="search"))throw new b("--token-budget requires a declared context intent selected with --for",_.USAGE,{code:"missing_required_option",field:"for",required:"Select a context intent with --for when setting --token-budget.",why:"A token-budget override has no projection contract to constrain without a selected intent.",nextSteps:["Retry with --for <intent> --token-budget <n>, or omit --token-budget."]});if(t.tokenBudget!==void 0||t.token_budget===void 0)return t;let s={...t,tokenBudget:n};return delete s.token_budget,s}let r=bm(e,t.for),o=jl(n)!==void 0,i={...t};return i.tokenBudget===void 0&&n!==void 0&&(i.tokenBudget=n),delete i.token_budget,i.tokenBudget===void 0&&(i.tokenBudget=String(r.token_budget)),wm[e](i,r,o),i}var RC={context:"bounded_sections",get:"standard_item",list:"bounded_fields_and_rows",next:"bounded_ranked_rows",search:"bounded_ranked_rows"},vi=256;function $l(e){return Array.isArray(e)?e.map($l):e!==null&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,n])=>[t,$l(n)])):typeof e=="string"&&e.length>240?`${e.slice(0,240)}\u2026`:e}function jl(e){let t=typeof e=="number"?e:typeof e=="string"&&/^\d+$/u.test(e.trim())?Number(e):Number.NaN;return Number.isSafeInteger(t)&&t>0?t:void 0}function Ai(e,t){let n=jl(e);if(n===void 0)return t;if(n<vi)throw new b(`Context intent token budget must be at least ${vi}`,_.USAGE,{code:"invalid_argument_value",reason:"below_minimum",field:"tokenBudget",required:`Use an integer token budget of at least ${vi}.`,why:"Smaller ceilings cannot contain the minimum machine-readable intent receipt.",nextSteps:[`Retry with --token-budget ${vi} or omit the override.`]});return n}function vt(e,t){let n=t.estimated_tokens;for(;;){t.estimated_tokens=n;let r=Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4);if(r===n)return;n=r}}var _m={context:["high_level","low_level","blocked_fallback","recently_created","unparented","hierarchy","activity","blockers"],get:["children"],list:["items"],next:["ready","decision_needed","blocked","held_by_others"],search:["items"]};function Em(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString("utf8"));return typeof t.fingerprint!="string"||!Number.isSafeInteger(t.after_index)?void 0:{fingerprint:t.fingerprint,after_index:t.after_index,...typeof t.snapshot=="string"?{snapshot:t.snapshot}:{}}}catch{return}}function NC(e){if(e===null||typeof e!="object")return;if(typeof e.id=="string")return e.id;let t=e.item?.id;return typeof t=="string"?t:void 0}function DC(e,t,n){let r=!1;for(;;){if(vt(e,t),t.estimated_tokens<=t.token_budget||n.length<=1)return r;let o=Buffer.byteLength(JSON.stringify(n),"utf8"),i=(t.estimated_tokens-t.token_budget)*4;n.splice(-Math.min(n.length-1,Math.max(1,Math.ceil(i/Math.max(1,Math.ceil(o/n.length)))))),r=!0}}function LC(e,t,n){let r=e.items,o=typeof e.next_cursor=="string",i=o?e.next_cursor:n.after;if(!Array.isArray(r)||typeof i!="string")return!1;let s=Em(i);if(s===void 0)return!1;let a=r.length,l=[...r],c=!1;for(;;){if(c=DC(e,t,r)||c,!c)return!1;let d=NC(r.at(-1));if(d===void 0)return r.splice(0,r.length,...l),vt(e,t),!1;if(e.next_cursor=kl(s.fingerprint,d,o?s.after_index-(a-r.length):s.after_index+r.length,s.snapshot),vt(e,t),t.estimated_tokens<=t.token_budget||r.length<=1)break}return typeof e.count=="number"&&(e.count=r.length),typeof e.applied_limit=="number"&&(e.applied_limit=r.length),!0}function PC(e,t,n,r){if(e==="list"||e==="search")return LC(t,n,r);if(e!=="next"||typeof t.next_cursor=="string")return!1;let o=!1;for(;;){if(vt(t,n),n.estimated_tokens<=n.token_budget)return o;let i=_m[e].map(p=>({key:p,rows:Array.isArray(t[p])?t[p]:[]})).filter(({rows:p})=>p.length>0).sort((p,f)=>f.rows.length-p.rows.length||p.key.localeCompare(f.key))[0];if(i===void 0)return o;let s=_m[e].reduce((p,f)=>p+(Array.isArray(t[f])?t[f].length:0),0);if(s<=1)return o;let a=Math.min(i.rows.length,s-1),l=Buffer.byteLength(JSON.stringify(i.rows),"utf8"),c=Math.max(1,Math.ceil(l/i.rows.length)),d=(n.estimated_tokens-n.token_budget)*4,u=Math.min(a,Math.max(1,Math.ceil(d/c)));i.rows.splice(-u,u),o=!0}}function MC(e,t,n){if(typeof t.for!="string")return n;let r=e.startsWith("list-")?"list":e;if(!(r in wm))return n;let o=r,i=bm(o,t.for),s={command:o,intent:i.intent,source:i.source,included_field_groups:[...i.included_field_groups],token_budget:Ai(t.tokenBudget??t.token_budget,i.token_budget),estimated_tokens:0,within_budget:!0,degradation:RC[o],declaration_feasible:!0,result_omitted:!1},a={...n};if(o==="list"||o==="search"){let c=o==="list"?520:480,d=Math.max(2,Math.floor((s.token_budget-c)/16)),p=jl(t.tokenBudget??t.token_budget)!==void 0?d:Math.min(100,d),f=t.limit!==void 0;s.budget_derived_limit=p,s.binding_constraint=f?"explicit_limit":"token_budget",s.limit_reason=f?"The caller supplied an explicit row limit; the budget-derived limit remains diagnostic.":"The selected intent token budget determines the row ceiling.",a.budget_derived_limit=p}let l={...a,context_intent:s};return vt(l,s),s.estimated_tokens>s.token_budget&&(s.degradation="recursive_budget_compaction",l={...$l(a),context_intent:s},vt(l,s)),s.estimated_tokens>s.token_budget&&PC(o,l,s,t)&&(s.degradation="budget_row_compaction",vt(l,s)),s.estimated_tokens>s.token_budget&&(s.degradation="budget_receipt_only",s.declaration_feasible=!1,s.result_omitted=!0,s.within_budget=!1,l={budget_exceeded:{omitted_result:!0,reason:"declared_budget_infeasible",restore_with:"Increase --token-budget or narrow the request; the unprojected command may be larger."},context_intent:s},vt(l,s)),l}function FC(e,t){if(typeof e.after!="string"||e.after.length===0)return t;let n=Em(e.after)?.fingerprint??"opaque_cursor",r={...t};for(let o of["applied_limit","completeness","context_intent","count","filters","has_more","now","omission_receipt","projection","row_contract","sorting","total","truncated"])delete r[o];return r.continuation_contract={fingerprint:n,metadata:"reference",restore_with:"omit --after"},r}function Tm(e,t,n){let r=Kp(e,n);return typeof r=="object"&&r!==null&&!Array.isArray(r)?mm(e??"",t,FC(t,MC(e??"",t,r))):r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="818ca284-2aaa-5d35-b280-8c963d443b0c")}catch{}})();var vm=[...qe],Am=[...tr],Sm=[...fo],$C=[...po],jC=[...mo],km=[...go],Dr=["init","config","extension","package","packages","install","upgrade","create","item","copy","focus","list","list-all","list-draft","list-open","list-in-progress","list-blocked","list-closed","list-canceled","aggregate","context","ctx","get","graph","search","duplicates","eval","next","history","events","history-redact","history-repair","history-compact","history-author-acknowledge","merge","schema","profile","activity","restore","update","update-many","close","close-many","delete","append","comments","notes","learnings","files","docs","deps","plan","test","test-all","telemetry","stats","health","validate","assurance","gc","workspace","contracts","claim","release","start-task","pause-task","close-task","meet","event","remind","help"],Fq=["ancestors","descendants","predecessors","successors","paths","impact","analyze","audit","communities","redundancy","dominators","slack","centrality","articulation","plan","index"],xm=["init","install","uninstall","explore","manage","describe","reload","doctor","catalog","adopt","adopt-all","activate","deactivate"],Ul={help:"Commander help rendering has no SDK operation result.",item:"The item namespace only groups lifecycle subcommands already exposed as actions.",packages:"The plural package alias only renders package-oriented help."},it=Object.freeze(Dr.flatMap(e=>e in Ul?[]:e==="extension"||e==="package"?[...xm.map(t=>`${e}-${t}`),e]:[e]));function UC(e=Dr,t=it,n=Ul){let r=new Set(t),o=new Set(e);return{missing_cli_actions:e.filter(i=>!r.has(i)&&n[i]===void 0),waived_cli_actions:e.filter(i=>!r.has(i)&&n[i]!==void 0),stale_waivers:Object.keys(n).filter(i=>!o.has(i)||r.has(i))}}function zC(e){return it.includes(e)}function qC(e){return vm.includes(e)}function GC(e){return Am.includes(e)}function VC(e){return Sm.includes(e)}function BC(e){return km.includes(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="23b3a820-f205-506b-9507-dbd60087f62e")}catch{}})();var Cm=["full","compact","brief","summary","counts"],HC=["mutation","read","discovery","governance"],WC=new Set(["append","claim","close","close-many","close-task","comments","config","copy","create","delete","docs","event","files","focus","history-author-acknowledge","history-compact","history-redact","history-repair","init","item","learnings","meet","notes","pause-task","release","remind","restore","schema","start-task","update","update-many"]),KC=new Set(["contracts","extension","help","install","package","packages","profile","upgrade"]),YC=new Set(["gc","health","merge","stats","telemetry","test","test-all","validate"]),XC={mutation:2e3,read:4e3,discovery:3e3,governance:6e3},JC=3,QC=2;function Om(e){let[t=""]=e.trim().split(/\s+/u);return WC.has(t)?"mutation":KC.has(t)?"discovery":YC.has(t)?"governance":"read"}function zl(e,t=Om(e)){let n=e.trim().replace(/\s+/gu," ");if(n.length===0)throw new TypeError("command must be a non-empty command path");let r=XC[t];return Im({command:n,budget_class:t,default_max_estimated_tokens:r,default_max_estimated_tokens_by_format:{toon:r,json:Math.ceil(r*JC/QC)},degradation_ladder:Cm,allows_unbounded_opt_out:!0,token_estimate:"ceil(utf8_bytes / 4)"})}function Im(e){if(!Number.isSafeInteger(e.default_max_estimated_tokens)||e.default_max_estimated_tokens<=0)throw new RangeError("default_max_estimated_tokens must be a positive safe integer");for(let[t,n]of Object.entries(e.default_max_estimated_tokens_by_format))if(!Number.isSafeInteger(n)||n<=0)throw new RangeError(`default_max_estimated_tokens_by_format.${t} must be a positive safe integer`);return e}var Rm=Dr.map(e=>zl(e)),ZC=new Map(Rm.map(e=>[e.command,e]));function eO(e,t={}){let n=e.trim().replace(/\s+/gu," "),[r]=n.split(" "),o=ZC.get(r);return o?{...o,command:n}:t.generateFallback?zl(n):null}function Lr(e){return Math.ceil(Math.max(0,e)/4)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="02baf966-46eb-5e19-b7eb-2f9fe05bb263")}catch{}})();var Fn=["result_rows","envelope","diagnostics","hints"],tO=/^(?:items|results|rows|ready|blocked|recommended|decision_needed|children|dependencies|events|matches|commands|tools)$/u,nO=/^(?:diagnostics|errors?|warnings?|findings|violations|failures?)$/u,rO=/^(?:hints?|suggestions?|next_steps?|recovery|remediation|examples?)$/u,oO=8;function ql(e){return Buffer.byteLength(e,"utf8")}function Nm(e){return ql(JSON.stringify(e)??"null")}function iO(e,t){return nO.test(e)?"diagnostics":rO.test(e)?"hints":tO.test(e)||Array.isArray(t)?"result_rows":"envelope"}function sO(e){let t={result_rows:0,envelope:0,diagnostics:0,hints:0};if(typeof e!="object"||e===null||Array.isArray(e))return t[Array.isArray(e)?"result_rows":"envelope"]=Nm(e),t;for(let[n,r]of Object.entries(e))t[iO(n,r)]+=Nm({[n]:r});return Object.values(t).every(n=>n===0)&&(t.envelope=1),t}function aO(e,t){let n=Fn.reduce((s,a)=>s+t[a],0),r=Fn.map(s=>({section:s,value:e*t[s]/n})),o={result_rows:0,envelope:0,diagnostics:0,hints:0};for(let s of r)o[s.section]=Math.floor(s.value);let i=e-Fn.reduce((s,a)=>s+o[a],0);for(let s of[...r].sort((a,l)=>l.value-Math.floor(l.value)-(a.value-Math.floor(a.value))||Fn.indexOf(a.section)-Fn.indexOf(l.section))){if(i===0)break;o[s.section]+=1,i-=1}return o}function Dm(e,t){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e,token_accounting:t}:{result:e,token_accounting:t}}function Lm(e,t){let n=ql(t(e)),r=aO(n,sO(e)),o=Object.fromEntries(Fn.map(a=>[a,{bytes:r[a],estimated_tokens:Lr(r[a])}])),i={version:1,measurement_scope:"output_before_token_accounting",estimator:"ceil(utf8_bytes / 4)",total_bytes:n,total_estimated_tokens:Lr(n),sections:o,accounting_receipt_bytes:0,accounting_receipt_estimated_tokens:0,excluded_fields:["token_accounting"],section_allocation:"proportional_canonical_json"},s=Dm(e,i);for(let a=0;a<oO;a+=1){let l=ql(t(s))-n;if(l===i.accounting_receipt_bytes)return s;i={...i,accounting_receipt_bytes:l,accounting_receipt_estimated_tokens:Lr(l)},s=Dm(e,i)}return s}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b52d2756-f640-5f53-981f-05fa23fa1718")}catch{}})();var lO=new Set(Object.values(_)),Vl="__pm_native_output",Pm=!1;function pe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function cO(e){return pe(e)&&e[Vl]===!0}function dO(e){if(!pe(e)||e[Vl]!==!0)return e;let{[Vl]:t,...n}=e;return n}function Bl(e){return typeof e=="object"&&e!==null&&e.code==="EPIPE"}function uO(){(process.exitCode===void 0||process.exitCode===_.SUCCESS)&&(process.exitCode=_.SUCCESS)}function fO(){(process.exitCode===void 0||process.exitCode===_.SUCCESS)&&(process.exitCode=_.GENERIC_FAILURE)}function Hl(e){if(e==="stdout"){uO();return}fO()}function Mm(e){let t=e instanceof Error?e:new Error(String(e));setImmediate(()=>{throw t})}function pO(){Pm||(Pm=!0,process.stdout.on("error",e=>{if(Bl(e)){Hl("stdout");return}Mm(e)}),process.stderr.on("error",e=>{if(Bl(e)){Hl("stderr");return}Mm(e)}))}function $m(e,t){pO();try{return e==="stdout"?process.stdout.write(t):process.stderr.write(t),!0}catch(n){if(Bl(n))return Hl(e),!1;throw n}}function st(e){return $m("stdout",e)}function Pr(e){return $m("stderr",e)}function Gl(e){return typeof e=="string"?JSON.stringify(e):typeof e=="number"||typeof e=="boolean"?String(e):e===null?"null":JSON.stringify(e)}function Si(e){if(e!=null){if(Array.isArray(e)){let t=e.map(n=>Si(n)).filter(n=>n!==void 0);return t.length>0?t:void 0}if(pe(e)){let t={};for(let[n,r]of Object.entries(e)){if(n==="omitted_field_groups"&&Array.isArray(r)&&r.length===0){t[n]=[];continue}let o=Si(r);o!==void 0&&(t[n]=o)}return Object.keys(t).length>0?t:void 0}return e}}function Wl(e,t){let n=" ".repeat(t);if(Array.isArray(e))return e.length===0?"[]":e.map(r=>{if(!pe(r)&&!Array.isArray(r))return`${n}- ${Gl(r)}`;let i=Wl(r,t+1).split(`
|
|
14
|
+
`),[s,...a]=i;return a.length===0?`${n}- ${s.trimStart()}`:`${n}- ${s.trimStart()}
|
|
15
|
+
${a.join(`
|
|
16
|
+
`)}`}).join(`
|
|
17
|
+
`);if(pe(e)){let r=Object.entries(e);return r.length===0?"{}":r.map(([o,i])=>!pe(i)&&!Array.isArray(i)?`${n}${o}: ${Gl(i)}`:Array.isArray(i)&&i.length===0?`${n}${o}: []`:pe(i)&&Object.keys(i).length===0?`${n}${o}: {}`:`${n}${o}:
|
|
18
|
+
${Wl(i,t+1)}`).join(`
|
|
19
|
+
`)}return`${n}${Gl(e)}`}function mO(e){if(!pe(e)||e.output_default!=="markdown"||typeof e.view!="string"||!Array.isArray(e.events)||!Array.isArray(e.days))return null;let t=[`# pm calendar (${e.view})`,""],n=pe(e.summary)?e.summary:{};if(t.push(`- events: ${String(n.events??0)}`),t.push(""),e.events.length===0)return t.push("No calendar events matched the selected filters."),`${t.join(`
|
|
20
|
+
`)}
|
|
21
|
+
`;for(let r of e.events){if(!pe(r))continue;let o=typeof r.kind=="string"?r.kind:"event",i=typeof r.item_title=="string"?r.item_title:"",s=typeof r.item_id=="string"?r.item_id:"",a=typeof r.reminder_text=="string"&&r.reminder_text.length>0?` ${r.reminder_text}`:"";t.push(`- [${o}] ${s} ${i}${a}`.trim())}return`${t.join(`
|
|
22
|
+
`)}
|
|
23
|
+
`}function gO(e){return e.json===!0||e.json===void 0&&e.defaultOutputFormat==="json"?"json":"toon"}var _O=new Set(["filters","now","projection","sorting"]);function yO(e){let t=Si(e);if(!pe(t)||!Array.isArray(t.items))return t??null;let n=Object.fromEntries(Object.entries(t).filter(([r])=>!_O.has(r)));return n.has_more!==!0&&delete n.next_cursor,n}function hO(e,t){if(!pe(e)||!Array.isArray(e.run_results)||!e.run_results.every(pe))return e;let n=e.run_results,r=n.map(s=>s.execution_context).filter(s=>s!==void 0),o=r.length===n.length&&r.length>0&&r.every(s=>JSON.stringify(s)===JSON.stringify(r[0]))?r[0]:void 0,i=n.map(s=>{let{execution_context:a,stdout:l,stderr:c,...d}=s;return o===void 0?s:!t||s.status!=="passed"?{...d,stdout:l,stderr:c}:d});return{...e,...o===void 0?{}:{execution_context:o},run_results:i}}function Fm(e,t){if(t==="json")return`${JSON.stringify(e,null,2)}
|
|
24
|
+
`;let n=Si(e);return n===void 0?`{}
|
|
25
|
+
`:`${Wl(n,0)}
|
|
26
|
+
`}function bO(e,t,n,r){let o=t?{handled:!1,result:e,warnings:[]}:za("output_format",{command:n.command,args:n.commandArgs,command_options:n.commandOptions,global:{...n},pm_root:n.pmRoot,format:r,options:{...n},result:e}),i=o.warnings.find(s=>s.startsWith("extension_output_format_payload_echo_deprecated:"));return i!==void 0&&Pr(`Warning: ${i}. Returning context.payload now declines safely for compatibility; migrate the override to declineServiceOverride() or { handled: false }.
|
|
27
|
+
`),o.handled&&typeof o.result=="string"?{result:o.result,rendered:o.result.endsWith(`
|
|
28
|
+
`)?o.result:`${o.result}
|
|
29
|
+
`}:{result:o.handled?o.result:e,rendered:null}}function wO(e,t,n){let r=ep(),o=n.command??r?.command,i={...r?.options,...n.commandOptions,...Object.fromEntries([["outputInclude",n.outputInclude],["outputLimit",n.outputLimit],["outputBudget",n.outputBudget],["outputFormat",n.outputFormat],["outputSession",n.outputSession]].filter(y=>y[1]!==void 0))},s=gm(o??"",i)??gO(n),a={...n,command:o,commandOptions:i},l=bO(e,t,a,s);if(l.rendered!==null)return l.rendered;let c=l.result,d=o==="test"?hO(c,n.lean===!0):c,u=Tm(o,i,d),p=y=>{if(s==="toon"){let h=mO(y);if(h!==null)return h}let g=t?{rendered:null}:np(s,y);return g.rendered!==null?g.rendered.endsWith(`
|
|
30
|
+
`)?g.rendered:`${g.rendered}
|
|
31
|
+
`:s==="json"?Fm(n.lean===!0?yO(y):y,"json"):Fm(y,"toon")},f=n.tokenAccounting===!0?Lm(u,p):u;return p(f)}function EO(e,t){let n=tp(e),r=Gp(n.result)?n.result:null,o=cO(n.result),i=r?r.result:dO(n.result);return Sn(i),r?"":wO(i,o,t)}function jm(e,t){pe(e)&&Number.isInteger(e.exit_code)&&lO.has(Number(e.exit_code))&&(process.exitCode===void 0||process.exitCode===_.SUCCESS)&&(process.exitCode=Number(e.exit_code));let n=t.idOnly?yi(e,{idOnly:!0}):t.fullChangedFields?e:t.noChangedFields?yi(e,{changedFields:"compact"}):yi(e,{compactEnvelope:!0}),r=EO(n,t);t.quiet||st(r)}function Kl(e){let t=za("error_format",{message:e}),n=t.handled&&typeof t.result=="string"?t.result:e;Pr(n.endsWith(`
|
|
32
|
+
`)?n:`${n}
|
|
33
|
+
`)}import Wm from"fast-json-patch";import At from"node:fs/promises";import at from"node:path";import{randomUUID as TO}from"node:crypto";import{createRequire as vO}from"node:module";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f1205949-16d8-51ce-98e8-04abc4c78ee8")}catch{}})();var AO="history-event-index.sqlite",Yl="2";function Ci(e){return at.join(e,"runtime",AO)}function SO(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}function kO(e,t){let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=22?SO(t):null}var ki;function Xl(){return ki!==void 0||(ki=kO(process.versions.node,vO(import.meta.url))),ki}function xO(e){e.exec(`
|
|
34
|
+
PRAGMA journal_mode = OFF;
|
|
35
|
+
PRAGMA synchronous = OFF;
|
|
36
|
+
CREATE TABLE metadata (
|
|
37
|
+
key TEXT PRIMARY KEY,
|
|
38
|
+
value TEXT NOT NULL
|
|
39
|
+
) STRICT;
|
|
40
|
+
CREATE TABLE events (
|
|
41
|
+
stream_id TEXT NOT NULL,
|
|
42
|
+
stream_offset INTEGER NOT NULL,
|
|
43
|
+
ts TEXT NOT NULL,
|
|
44
|
+
author TEXT NOT NULL,
|
|
45
|
+
agent_harness TEXT,
|
|
46
|
+
agent_instance TEXT,
|
|
47
|
+
op TEXT NOT NULL,
|
|
48
|
+
entry_json TEXT NOT NULL,
|
|
49
|
+
PRIMARY KEY(stream_id, stream_offset)
|
|
50
|
+
) STRICT;
|
|
51
|
+
CREATE INDEX events_order
|
|
52
|
+
ON events(ts, stream_id, stream_offset);
|
|
53
|
+
CREATE INDEX events_op_order
|
|
54
|
+
ON events(op, ts, stream_id, stream_offset);
|
|
55
|
+
CREATE INDEX events_author_order
|
|
56
|
+
ON events(author, ts, stream_id, stream_offset);
|
|
57
|
+
CREATE INDEX events_harness_order
|
|
58
|
+
ON events(agent_harness, ts, stream_id, stream_offset);
|
|
59
|
+
CREATE INDEX events_instance_order
|
|
60
|
+
ON events(agent_instance, ts, stream_id, stream_offset);
|
|
61
|
+
`),e.prepare("INSERT INTO metadata(key, value) VALUES ('version', ?)").run(Yl)}function Um(e,t){e.prepare(`INSERT INTO events(
|
|
62
|
+
stream_id, stream_offset, ts, author, agent_harness,
|
|
63
|
+
agent_instance, op, entry_json
|
|
64
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?)`).run(t.stream_id,t.stream_offset,t.entry.ts,t.entry.author,t.entry.agent_harness??null,t.entry.agent_instance??null,t.entry.op,JSON.stringify(t.entry))}async function nG(e){let t=Xl();if(!t)return!1;let n=at.join(e,"history"),o=(await At.readdir(n,{withFileTypes:!0}).catch(l=>{if(typeof l=="object"&&l!==null&&"code"in l&&l.code==="ENOENT")return[];throw l})).filter(l=>l.isFile()&&l.name.endsWith(".jsonl")).sort((l,c)=>l.name.localeCompare(c.name)),i=Ci(e);await At.mkdir(at.dirname(i),{recursive:!0});let s=`${i}.${TO()}.tmp`,a;try{a=new t(s),xO(a),a.exec("BEGIN IMMEDIATE");for(let l of o){let c=l.name.slice(0,-6),d=await Tt(at.join(n,l.name),c);for(let[u,p]of d.entries())Um(a,{stream_id:c,stream_offset:u,entry:p})}return a.exec("COMMIT"),a.close(),a=void 0,await At.rm(i,{force:!0}),await At.rename(s,i),!0}catch(l){throw a?.close(),await At.rm(s,{force:!0}),l}}async function zm(e,t){let n=at.dirname(at.dirname(e)),r=Ci(n);try{await At.access(r)}catch{return}let o=Xl();if(!o)return;let i;try{if(i=new o(r),i.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==Yl)throw new TypeError("Unsupported history event index version");let a=at.basename(e,".jsonl"),l=i.prepare("SELECT COALESCE(MAX(stream_offset), -1) + 1 AS value FROM events WHERE stream_id = ?").get(a);Um(i,{stream_id:a,stream_offset:Number(l.value),entry:t}),i.close()}catch{i?.close(),await At.rm(r,{force:!0})}}async function Oi(e){await At.rm(Ci(at.dirname(at.dirname(e))),{force:!0})}function xi(e,t,n,r){!r||r.length===0||(e.push(`${n} IN (${r.map(()=>"?").join(", ")})`),t.push(...r))}function CO(e,t,n,r){if(!n||n.length===0)return;let o=n.map(()=>"?").join(", "),i=r??[];if(i.length>0){e.push(`(agent_harness IN (${o}) OR (agent_harness IS NULL AND author IN (${i.map(()=>"?").join(", ")})))`),t.push(...n,...i);return}e.push(`agent_harness IN (${o})`),t.push(...n)}async function rG(e,t){let n=Xl();if(!n)return null;let r=[],o=[];t.after_ts!==void 0&&t.after_stream_id!==void 0&&t.after_stream_offset!==void 0?(r.push("(ts > ? OR (ts = ? AND stream_id > ?) OR (ts = ? AND stream_id = ? AND stream_offset > ?))"),o.push(t.after_ts,t.after_ts,t.after_stream_id,t.after_ts,t.after_stream_id,t.after_stream_offset)):t.since_ts!==void 0&&(r.push("ts >= ?"),o.push(t.since_ts)),xi(r,o,"op",t.ops),xi(r,o,"author",t.authors),CO(r,o,t.harnesses,t.harness_alias_authors),xi(r,o,"agent_instance",t.agent_instances);for(let a of t.provenance??[])r.push(`json_extract(entry_json, '$.agent_provenance.${a.dimension}.value') IN (${a.values.map(()=>"?").join(", ")})`),o.push(...a.values);xi(r,o,"stream_id",t.stream_ids);let i=r.length===0?"":` WHERE ${r.join(" AND ")}`,s;try{if(s=new n(Ci(e),{readOnly:!0}),s.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==Yl)return s.close(),null;let l=s.prepare(`SELECT stream_id, stream_offset, entry_json
|
|
65
|
+
FROM events${i}
|
|
66
|
+
ORDER BY ts, stream_id, stream_offset
|
|
67
|
+
LIMIT ?`).all(...o,Math.max(0,Math.floor(t.limit))+1),c=l.length>t.limit,d=l.slice(0,t.limit).map(u=>({stream_id:String(u.stream_id),stream_offset:Number(u.stream_offset),entry:JSON.parse(String(u.entry_json))}));return s.close(),{events:d,has_more:c}}catch{return s?.close(),null}}import Jl from"node:fs/promises";import $n 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]="4db09d54-90c6-548b-baa8-c7ce419f70a2")}catch{}})();var OO=$n.join("runtime","history-drift-cache.json"),qm={EINVAL:"invalid_cache_path",EISDIR:"cache_path_is_directory",ENOENT:"invalid_cache_path",ENOTDIR:"invalid_cache_path",ERR_FS_EISDIR:"cache_path_is_directory"};function Gm(e){return typeof e=="object"&&e!==null&&"code"in e&&typeof e.code=="string"?e.code:void 0}async function IO(e){let t=$n.join(e,OO),n=!1,r="invalid_cache_path";try{n=(await Jl.stat(await Jl.realpath(e))).isDirectory()}catch(o){let i=Gm(o);r=i===void 0?"unknown":qm[i]??"filesystem_error"}if(!n){Pr(`[pm] warning: history_drift_cache_invalidation_failed:${r}
|
|
68
|
+
`);return}try{await Jl.rm(t,{force:!0})}catch(o){let i=Gm(o);if(i==="ENOENT")return;let s=i===void 0?"unknown":qm[i]??"filesystem_error";Pr(`[pm] warning: history_drift_cache_invalidation_failed:${s}
|
|
69
|
+
`)}}async function Mr(e){let t=$n.dirname($n.resolve(e));$n.basename(t)==="history"&&await IO($n.dirname(t))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ce2dace3-7c86-5edf-8bda-083a0b3e7f2b")}catch{}})();var RO={front_matter:{},body:""};function NO(e){return!e||e==="/"?[]:e.startsWith("/")?e.slice(1).split("/").map(t=>t.replaceAll("~1","/").replaceAll("~0","~")):[]}function DO(e,t){let n=NO(t);if(n.length===0)return!0;let r=e;for(let o of n){if(Array.isArray(r)){if(o==="-"||!/^(0|[1-9]\d*)$/.test(o))return!1;let s=Number(o);if(!Number.isInteger(s)||s<0||s>=r.length)return!1;let a=r[s];if(a===void 0)return!1;r=a;continue}if(typeof r!="object"||r===null||!Object.prototype.hasOwnProperty.call(r,o))return!1;let i=r[o];if(i===void 0)return!1;r=i}return!0}function LO(e,t){let n=[],r=structuredClone(e);for(let o of t){let i=o.op==="replace"&&!DO(r,o.path)?{...o,op:"add"}:o;n.push(i),r=Wm.applyPatch(r,[i],!0,!0).newDocument}return n}function Ql(e){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{front_matter:{},body:e.body??""};let n=Oe(e);return{front_matter:x(n.metadata,Me),body:n.body}}function Vm(e){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{metadata:{},body:e.body??""};let n=Oe(e);return{metadata:x(n.metadata,Me),body:n.body}}function Zl(e){return Ut(we(Ql(e)))}function PO(){return Ut(we(RO))}function tn(e){let t=Ql(e.before),n=Ql(e.after),r=Vm(e.before),o=Vm(e.after),i=Wm.compare(r,o),s=LO(r,i),a=qp(e.author),l=a.harness?Object.fromEntries(Object.entries(wl().provenance_outcomes).filter(([,d])=>d.status==="failed")):void 0,c=l===void 0||Object.keys(l).length===0?e.context:{...e.context,agent_provenance_outcomes:l};return{ts:e.nowIso,author:e.author,author_source:e.authorSource??zp(e.author),...a.harness?{agent_harness:a.harness}:{},...a.model?{agent_model:a.model}:{},...a.model_source?{agent_model_source:a.model_source}:{},...a.instance?{agent_instance:a.instance}:{},...a.provenance?{agent_provenance:a.provenance}:{},...a.episode?{agent_episode:a.episode}:{},op:e.op,patch:s,before_hash:Ut(we(t)),after_hash:Ut(we(n)),message:e.message===void 0?void 0:e.message,...c===void 0?{}:{context:c}}}function Bm(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function MO(e){let t=e.ts.trim();return t.length>0?t:X()}function Hm(e,t){let n=e.ts;return typeof n=="string"&&n.trim().length>0?e:{...e,ts:t}}function Ii(e,t){let n=MO(t);if(typeof e=="string"){try{let r=JSON.parse(e);if(Bm(r))return JSON.stringify(Hm(r,n))}catch{}return e}return Bm(e)?JSON.stringify(Hm(e,n)):JSON.stringify(e)}async function nn(e,t){let n=await Ce("history_append",{history_path:e,entry:t});if(n.handled){if(n.result===!1)return;if(typeof n.result=="string"){await ut(e,Ii(n.result,t)),await Mr(e),await Oi(e);return}if(typeof n.result=="object"&&n.result!==null){let r=n.result;if(r.skip===!0)return;let o=typeof r.history_path=="string"?r.history_path:e;if(typeof r.line=="string"){await ut(o,Ii(r.line,t)),await Mr(o),await Oi(o);return}await ut(o,Ii(r.entry??t,t)),await Mr(o),await Oi(o);return}}await ut(e,Ii(t,t)),await Mr(e),await zm(e,t)}import ec from"fast-json-patch";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c8668470-7e57-5dee-8e41-298e7c697b77")}catch{}})();var FO={metadata:{},body:""};function jn(){return structuredClone(FO)}function Ri(e){if(Object.keys(e.metadata).length===0||Array.isArray(e.metadata.tags))try{return Zl(Fr(e))}catch{}return Ut(we({replay_fallback:!0,metadata:e.metadata,body:e.body}))}function Fr(e){return{metadata:e.metadata,body:e.body}}function $O(e,t={}){return Oe(Fr(e),t)}function jO(e){if(!e.metadata||Object.keys(e.metadata).length===0)return{metadata:{},body:e.body??""};let t=Oe(e);return{metadata:x(t.metadata,Me),body:t.body}}function Km(e){return e==="/front_matter"?"/metadata":e.startsWith("/front_matter/")?`/metadata/${e.slice(14)}`:e}function UO(e){return typeof e=="object"&&e!==null&&typeof e.op=="string"&&typeof e.path=="string"}function tc(e){return Array.isArray(e)?e.filter(UO).map(t=>({...t,path:Km(t.path),from:typeof t.from=="string"?Km(t.from):void 0})):[]}function zO(e){return typeof e=="object"&&e!==null&&"metadata"in e&&"body"in e&&typeof e.body=="string"&&typeof e.metadata=="object"&&e.metadata!==null}function Un(e,t){try{let n=tc(t),r=ec.applyPatch(structuredClone(e),n,!0,!1).newDocument;return zO(r)?{ok:!0,document:{metadata:r.metadata,body:r.body}}:{ok:!1,error:new Error("history_replay_invalid_document_shape")}}catch(n){return{ok:!1,error:n}}}function Ni(e){let t=jn();for(let n=0;n<e.length;n+=1){let r=e[n];if(Ri(t)!==r.before_hash)return{ok:!1,errors:[`verify_failed:before_hash_mismatch:entry_${n+1}`]};let o=Un(t,r.patch);if(!o.ok)return{ok:!1,errors:[`verify_failed:patch_apply_failed:entry_${n+1}`]};if(t=o.document,Ri(t)!==r.after_hash)return{ok:!1,errors:[`verify_failed:after_hash_mismatch:entry_${n+1}`]}}return{ok:!0,errors:[]}}function Ym(e,t){try{return{ok:!0,document:ec.applyPatch(structuredClone(e),[t],!0,!1).newDocument}}catch{return{ok:!1}}}function qO(e,t){let n=structuredClone(e),r=0,o=0;for(let a of tc(t)){let l=Ym(n,a);if(l.ok){n=l.document;continue}if(a.op==="replace"){let c=Ym(n,{...a,op:"add"});if(c.ok){n=c.document,r+=1;continue}}o+=1}let i=n;return{document:{metadata:typeof i.metadata=="object"&&i.metadata!==null?i.metadata:{},body:typeof i.body=="string"?i.body:e.body},convertedReplaceToAdd:r,skippedOps:o}}function xG(e){let t=jn(),n=[],r=[],o=0,i=0,s=0,a=0;for(let l=0;l<e.length;l+=1){let c=e[l],d=Ri(t),u=Un(t,c.patch),p,f,y=!1,g=0,h=0;if(u.ok)p=u.document,f=c.patch;else{let U=qO(t,c.patch);p=U.document,f=ec.compare(t,p),y=!0,g=U.convertedReplaceToAdd,h=U.skippedOps,s+=g,a+=h,i+=1}let E=Ri(p),O=d!==c.before_hash||E!==c.after_hash;O&&(o+=1),n.push({...c,patch:f,before_hash:d,after_hash:E}),r.push({index:l+1,rehashed:O,patch_repaired:y,converted_replace_to_add:g,skipped_ops:h}),t=p}return{entries:n,finalDocument:t,entriesRehashed:o,entriesPatchRepaired:i,convertedReplaceToAdd:s,skippedOps:a,details:r}}function CG(e){return e.length===0?"":`${e.map(t=>JSON.stringify(t)).join(`
|
|
70
|
+
`)}
|
|
71
|
+
`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="19ff592c-0746-54e8-a304-2006f4845da2")}catch{}})();function Xm(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function nc(e){if(e==="/body"||e.startsWith("/body/"))return"body";if(e==="/metadata"||e.startsWith("/metadata/")||e==="/front_matter"||e.startsWith("/front_matter/")){let n=e.replace(/^\/(?:metadata|front_matter)\/?/,"").split("/")[0];return n?Xm(n):"metadata"}let t=e.replace(/^\//,"").split("/")[0];return t?Xm(t):"root"}function Di(e,t){return t==="body"?e.body:t==="metadata"?e.metadata:t==="root"?e:e.metadata[t]}function GO(e,t){let n=t?.windowStartIndex??0,r=t?.field;if(e.length===0||n>=e.length)return[];let o=jn(),i=[];for(let s=0;s<e.length;s+=1){let a=e[s],l=o,c=Un(o,a.patch),d;c.ok?(d=c.document,o=d):d=l;let u=new Set;for(let f of a.patch)u.add(nc(f.path)),f.from!==void 0&&u.add(nc(f.from));let p=[...u].sort((f,y)=>f.localeCompare(y));if(s>=n)if(r!==void 0){if(!u.has(r))continue;let f={field:r,before:Di(l,r),after:Di(d,r)};i.push({index:s+1,ts:a.ts,op:a.op,author:a.author,patch_ops:a.patch.length,changed_fields:[r],changes:[f]})}else{let f=p.map(y=>({field:y,before:Di(l,y),after:Di(d,y)}));i.push({index:s+1,ts:a.ts,op:a.op,author:a.author,patch_ops:a.patch.length,changed_fields:p,changes:f})}}return i}import VO from"node:fs/promises";import BO from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="58fd6fef-9c13-5c6a-9110-b760461896aa")}catch{}})();function HO(e){return[...new Set(e.filter(t=>t.trim().length>0))].sort((t,n)=>t.localeCompare(n))}function WO(e,t){return new b(`Missing history stream for ${e}. ${t} requires history streams when settings.history.missing_stream is strict_error.`,_.NOT_FOUND)}async function KO(e,t){return await co(BO.dirname(e)),await(await VO.open(e,"a")).close(),le({path:e,scope:"project",op:`${t}:history:auto_create`})}async function Li(e){return Jm({pmRoot:e.pmRoot,settings:e.settings,itemIds:[e.itemId],commandLabel:e.commandLabel})}async function Jm(e){let t=HO(e.itemIds),n=[],r=[];for(let o of t){let i=En(e.pmRoot,o);if(!await Y(i)){if(e.settings.history.missing_stream==="strict_error")throw WO(o,e.commandLabel);r.push(...await KO(i,e.commandLabel)),r.push(`history_stream_auto_created:${o}`),n.push(o)}}return{auto_created_ids:n,warnings:r}}import lt from"node:fs/promises";import rc from"node:path";import{randomUUID as YO}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c638b65d-148a-5b42-8f24-d6fa9d5ac7d3")}catch{}})();function XO(e){let t;try{t=JSON.parse(e)}catch{return{info:null,warnings:["lock_info_invalid_json"]}}if(typeof t!="object"||t===null||Array.isArray(t))return{info:null,warnings:["lock_info_invalid_shape"]};let n=t,r=n.id,o=n.pid,i=n.owner,s=n.created_at,a=n.ttl_seconds;return typeof r!="string"||typeof o!="number"||!Number.isFinite(o)||typeof i!="string"||typeof s!="string"||typeof a!="number"||!Number.isFinite(a)?{info:null,warnings:["lock_info_invalid_shape"]}:{info:{id:r,pid:o,owner:i,created_at:s,ttl_seconds:a},warnings:[]}}async function tg(e){try{let t=await lt.readFile(e,"utf8");return await $e({path:e,scope:"project"}),XO(t)}catch(t){return $r(t,"ENOENT")?{info:null,warnings:[]}:{info:null,warnings:["lock_info_read_failed"]}}}function $r(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}async function ng(e,t){await le({path:e,scope:"project",op:t})}function JO(e,t,n){return{id:e,pid:process.pid,owner:t,created_at:X(),ttl_seconds:n}}async function QO(e,t,n,r){await lt.mkdir(rc.dirname(e),{recursive:!0});let o=await lt.open(e,"wx");try{await o.writeFile(`${JSON.stringify(JO(t,n,r),null,2)}
|
|
72
|
+
`,"utf8")}finally{await o.close()}await ng(e,"lock:create")}async function rg(e,t){try{return await lt.unlink(e),await ng(e,t),!0}catch{return!1}}function og(e,t){let n=e?.created_at?Date.parse(e.created_at):Number.NaN;return(Number.isFinite(n)?Date.now()-n:Number.POSITIVE_INFINITY)>t*1e3}function ZO(e){return e?.owner?` (owner ${e.owner})`:""}var eI=25,tI=200,nI=250,rI=3,oI=".stale-cleanup",ig="owner.json",iI=1e4,sI=5*6e4;function Qm(e){if(typeof e=="string"){let t=e.trim();if(!/^\d+$/.test(t))return;let n=Number(t);return Number.isSafeInteger(n)?n:void 0}if(typeof e=="number"&&Number.isFinite(e)&&e>=0)return Math.trunc(e)}function aI(e){let t=process.env.PM_LOCK_WAIT_MS,n=Qm(t);if(n!==void 0)return n;let r=Qm(e);return r!==void 0?r:0}function lI(e){let t=Math.max(1,Math.round(e*(.5+Math.random())));return new Promise(n=>setTimeout(n,t))}function sg(e,t,n){let r=n>0?` after waiting ${n}ms`:"";return new b(`Item ${e} is locked${ZO(t)}${r}`,_.CONFLICT,{code:"lock_conflict",recovery:{retry_after_ms:nI}})}function cI(e){if(typeof e=="function")return e;if(typeof e=="object"&&e!==null&&"release"in e){let t=e.release;return typeof t=="function"?t:null}return null}function dI(e,t,n,r){if(!n&&r){let o=t.warnings.length>0?` (${t.warnings.join(",")})`:"";throw new b(`Item ${e} lock is stale${o}; rerun with --force when supported for this command`,_.CONFLICT)}}function uI(e){let t;try{t=JSON.parse(e)}catch{return null}if(typeof t!="object"||t===null||Array.isArray(t))return null;let n=t,r=n.pid,o=n.token;return typeof r!="number"||!Number.isInteger(r)||r<=0||typeof o!="string"||o.length===0?null:{pid:r,token:o}}async function ag(e){try{return uI(await lt.readFile(rc.join(e,ig),"utf8"))}catch{return null}}function fI(e){try{return process.kill(e,0),!0}catch(t){return!$r(t,"ESRCH")}}async function oc(e){try{return await lt.rm(e,{recursive:!0,force:!0}),!0}catch{return!1}}async function Zm(e,t){let n=await ag(e);n===null||n.token!==t||await oc(e)}async function eg(e){try{await lt.mkdir(e)}catch(n){return $r(n,"EEXIST"),null}let t={pid:process.pid,token:YO()};try{await lt.writeFile(rc.join(e,ig),`${JSON.stringify(t)}
|
|
73
|
+
`,"utf8")}catch{return await oc(e),null}return t}async function pI(e){let t;try{let r=await lt.stat(e);if(t=Date.now()-r.mtimeMs,t<=iI)return!1}catch(r){return $r(r,"ENOENT")}let n=await ag(e);return n!==null&&fI(n.pid)&&t<=sI?!1:oc(e)}async function mI(e,t){let n=`${e}${oI}`,r=await eg(n);if(r!==null)return async()=>Zm(n,r.token);if(!await pI(n))return null;let o=await eg(n);return o===null?null:async()=>Zm(n,o.token)}async function gI(e){let t=await mI(e.lockPath,e.id);if(t===null)return{lockInfo:e.fallbackLockInfo,shouldRetryCreate:!1,staleRemovalCounted:!1};try{let n=await tg(e.lockPath);if(n.info===null&&n.warnings.length===0)return{lockInfo:n,shouldRetryCreate:!0,staleRemovalCounted:!1};if(!og(n.info,e.ttlSeconds))return{lockInfo:n,shouldRetryCreate:!1,staleRemovalCounted:!1};if(dI(e.id,n,e.force,e.forceRequiredForStaleLock),e.staleRemovals>=rI)throw sg(e.id,n.info,Date.now()-e.startedAtMs);return{lockInfo:n,shouldRetryCreate:await rg(e.lockPath,"lock:stale_remove"),staleRemovalCounted:!0}}finally{await t()}}async function Re(e,t,n,r,o=!1,i=!0,s){let a=await Ce("lock_acquire",{pm_root:e,id:t,ttl_seconds:n,owner:r,force:o,force_required_for_stale_lock:i});if(a.handled){let f=cI(a.result);if(f)return async()=>{await Promise.resolve(f()),await Ce("lock_release",{pm_root:e,id:t,owner:r})}}let l=Uu(e,t),c=aI(s),d=Date.now(),u=0,p=eI;for(;;)try{return await QO(l,t,r,n),async()=>{await rg(l,"lock:release"),await Ce("lock_release",{pm_root:e,id:t,owner:r})}}catch(f){if(!$r(f,"EEXIST"))throw new b(`Failed to acquire lock for ${t}: ${$(f)}`,_.GENERIC_FAILURE);let y=await tg(l);if(og(y.info,n)){let h=await gI({lockPath:l,id:t,ttlSeconds:n,force:o,forceRequiredForStaleLock:i,staleRemovals:u,waitBudgetMs:c,startedAtMs:d,fallbackLockInfo:y});if(y=h.lockInfo,h.staleRemovalCounted&&(u+=1),h.shouldRetryCreate)continue}let g=Date.now()-d;if(c===0||g>=c)throw sg(t,y.info,c===0?0:g);await lI(Math.min(p,c-g)),p=Math.min(p*2,tI)}}import _I from"node:fs/promises";import lg 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]="86b45d6b-2192-5d31-8f73-94d6e6b17dfc")}catch{}})();var jr="_workspace";function ic(e){return lg.join(e,"history",`${jr}.jsonl`)}function yI(e,t){return{metadata:{id:jr,title:"Workspace state",description:"Audited singleton workspace document state.",type:"Chore",status:"open",priority:2,tags:["workspace-history"],created_at:t,updated_at:t,documents:e},body:""}}function cg(e){let t=jn();for(let n of e)t=Un(t,n.patch).document;return Fr(t)}async function dg(e){let t=ic(e.pmRoot),n=await Tt(t,jr),r=Ni(n);if(!r.ok)throw new TypeError(`Workspace history verification failed: ${r.errors.join(", ")}`);let o=e.idempotencyKey===void 0?void 0:n.find(u=>u.op===`${e.op}:${e.idempotencyKey}`);if(o)return{entry:o,historyPath:t};let i=new Date().toISOString(),s=n.length===0?nr:cg(n),a="documents"in s.metadata&&typeof s.metadata.documents=="object"&&s.metadata.documents!==null&&!Array.isArray(s.metadata.documents)?s.metadata.documents:{},l=a[e.documentPath];if(l!==void 0&&we(l)!==we(e.before))throw new b(`Workspace history state for "${e.documentPath}" changed outside the audited mutation path.`,_.CONFLICT,{code:"workspace_history_state_conflict",reason:"out_of_band_workspace_state",required:"Reconcile the singleton document with its matching _workspace history state before retrying the mutation.",why:"Accepting the write would make the append-only audit stream describe a state that was not actually observed.",examples:["pm history _workspace --verify","pm validate --check-history-drift --fix-hints"],nextSteps:["Review the version-control change that altered the singleton and preserve the intended document plus its matching workspace history.","Rerun the original mutation only after the on-disk singleton agrees with the latest audited workspace state."],recovery:{recovery_mode:"compact",next_best_command:"pm history _workspace --verify"}});let c=yI({...a,[e.documentPath]:e.after},n.length===0?i:s.metadata.created_at),d=tn({nowIso:i,author:e.author,op:e.idempotencyKey===void 0?e.op:`${e.op}:${e.idempotencyKey}`,before:s,after:c,message:e.message});return await nn(t,d),{entry:d,historyPath:t}}async function hI(e){let t=await Re(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await dg(e)}finally{await t()}}async function bI(e){let t=await Re(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let n=ic(e.pmRoot),r=await Tt(n,jr),o=Ni(r);if(!o.ok)throw new TypeError(`Workspace history verification failed: ${o.errors.join(", ")}`);let i=r.length===0?nr:cg(r),s=tn({nowIso:new Date().toISOString(),author:e.author,op:e.op,before:i,after:i,message:e.message,context:e.context});return await nn(n,s),{entry:s,historyPath:n}}finally{await t()}}async function ug(e,t){if(t===e.raw)return!1;let n=t===null?null:JSON.parse(t),r=JSON.parse(e.raw);await P(e.filePath,e.raw);try{(t!==null||e.recordCreation!==!1)&&await dg({pmRoot:e.pmRoot,documentPath:lg.relative(e.pmRoot,e.filePath).replaceAll("\\","/"),before:n,after:r,op:e.op,author:e.author,lockTtlSeconds:e.lockTtlSeconds,lockWaitMs:e.lockWaitMs,message:e.message})}catch(o){throw t===null?await _I.rm(e.filePath,{force:!0}):await P(e.filePath,t),o}return!0}async function wI(e){let t=await Re(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let n=await W(e.filePath),r=await e.mutate(n);return{changed:await ug({...e,raw:r.raw},n),result:r.result}}finally{await t()}}async function sc(e){let t=await Re(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await ug(e,await W(e.filePath))}finally{await t()}}import{readFile as EI}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]="7426082f-94a6-5b4e-9748-d3faab2fe1d4")}catch{}})();var TI=e=>EI(e,"utf8");async function vI(e,t,n=TI){if(t!==void 0)throw new b("--body and --body-file are mutually exclusive; provide the body inline with --body or from a file with --body-file, not both.",_.USAGE,{code:"body_file_conflicts_with_body",required:"Choose exactly one body source.",why:"Both --body and --body-file set the item body; allowing both would make the effective body ambiguous.",nextSteps:["Re-run with only --body <text> or only --body-file <path>."]});let r=e.trim();if(r.length===0)throw new b("--body-file requires a file path.",_.USAGE,{code:"body_file_missing_path",required:"Pass a readable file path: --body-file <path>.",why:"An empty --body-file value has no file to read the body from."});try{return await n(r)}catch(o){let i=o?.code,s=i==="EISDIR",a=i?` (${i})`:"";throw new b(s?`--body-file "${r}" is a directory, not a file. Point it at a readable file.`:`--body-file could not read "${r}"${a}. Check that the file exists and is readable.`,_.NOT_FOUND,{code:"body_file_unreadable",required:"Point --body-file at an existing, readable file.",why:`The body content is loaded from the file at the supplied path, so an unreadable path cannot produce a body${i?` (underlying error: ${i})`:""}.`,nextSteps:[`Verify the path: ls -l "${r}"`,"Or pass the body inline with --body <text>."]})}}import AI from"node:crypto";import fg 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]="50a277b9-d530-5aa0-8bd0-8eb0d36911e5")}catch{}})();function mg(e){let t=(e??"").trim().toLowerCase();return t?t.endsWith("-")?t:`${t}-`:"pm-"}function Pi(e){let t=e.trim().toLowerCase();return t.startsWith("#")&&(t=t.slice(1)),t}function rn(e,t){let n=mg(t),r=Pi(e);return r.startsWith(n)?r:`${n}${r}`}function SI(e){let t=_u(e);if(t!==void 0)return t;let n="";for(let r=0;r<e;r+=1)n+=AI.randomInt(0,36).toString(36);return n}async function kI(e,t,n){let r=[...new Set(Object.values(n))].flatMap(o=>[fg.join(e,o,`${t}.md`),fg.join(e,o,`${t}.toon`)]);return(await Promise.all(r.map(o=>Y(o)))).some(Boolean)}var pg=4,gg=12;function xI(e){return typeof e!="number"||!Number.isFinite(e)?pg:Math.min(gg,Math.max(pg,Math.trunc(e)))}async function CI(e,t,n={}){let r=xI(n.tokenLength),o=Math.min(r+6,gg),i=0;for(;r<=o;){for(let s=0;s<32;s+=1){let a=`${mg(t)}${SI(r)}`;if(n.probeExisting===!1||!await kI(e,a,n.typeToFolder??se))return a;i+=1}r+=1}throw new Error(`Unable to generate unique id after ${i} attempts`)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4a376062-2e23-5991-80a5-27183909caf3")}catch{}})();var OI=new Set(["none","null","undefined"]);function wV(e){let t=e?.trim().toLowerCase().replaceAll("-","_");if(t==="warn"||t==="strict_error")return t;if(t==="strict")return"strict_error";throw new b("Config set parent-reference-policy requires --policy with one of: warn, strict_error (alias: strict)",_.USAGE)}function II(e){if(typeof e!="string")throw new b("--parent must be a string. Use --unset parent to clear this field.",_.USAGE);let t=e.trim();if(t.length===0)throw new b("--parent must not be empty. Use --parent none to unset.",_.USAGE);if(_g(t))throw new b(`--parent must not use placeholder token "${t}". Use --unset parent to clear this field.`,_.USAGE);return t}function _g(e){return OI.has(e.trim().toLowerCase())}function RI(e,t){if(t==="strict_error")throw new b(`Parent item "${e}" was not found. Create it first or use --parent none.`,_.USAGE);return{warnings:[`validation_warning:parent_reference_missing:${e}`]}}function NI(e,t,n){let r=rn(e,n),o=rn(t,n);if(r!==o)return;let i=t!==o||e!==r?` (normalized from parent "${t}" and item "${e}")`:"";throw new b(`Parent item "${o}" cannot be the same as item "${r}"${i}. Use --unset parent to clear this field.`,_.USAGE)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d5003dd5-f208-5734-9711-dff935d8c851")}catch{}})();var zn="-",yg=new Set(["actual_result","body","cmd","command","customer_impact","description","environment","expected_result","impact","location","message","note","outcome","repro_steps","resolution","text","title","unblock_note","value","why_now"]);function hg(e){let t=e.trim();if(t==="")return[];let r=(FI(t)??t.split(",")).map(o=>o.trim()).filter(Boolean).map(o=>o.toLowerCase());return Array.from(new Set(r)).sort((o,i)=>o.localeCompare(i))}function bg(e){if(!Array.isArray(e)||e.length===0)return[];let t=[];for(let n of e)if(typeof n=="string")for(let r of hg(n))t.push(r);return Array.from(new Set(t)).sort((n,r)=>n.localeCompare(r))}function wg(e){return Array.isArray(e)?e.filter(t=>typeof t=="string").map(t=>t.trim().toLowerCase()).filter(Boolean):[]}function DI(e){return typeof e!="string"?[]:e.split(";").map(t=>t.trim()).filter(Boolean)}function LI(e,t,n){let r=e.map(s=>s.trim()).filter(Boolean);for(let s of t??[]){let a=s.trim();if(a.includes(";"))throw new b('Acceptance criteria added with --add-ac cannot contain ";" because semicolons delimit stored criteria',_.USAGE,{code:"acceptance_criteria_semicolon_forbidden",required:"Pass one semicolon-free criterion per --add-ac value",why:"A semicolon inside one criterion would be re-read as multiple criteria",nextSteps:["Split the text into repeated --add-ac values, or replace the semicolon with punctuation that is not the storage delimiter"]});a.length>0&&!r.includes(a)&&r.push(a)}let o=[],i=r;for(let s of n??[]){let a=s.trim();if(a.length!==0){if(!i.includes(a)){o.push(a);continue}i=i.filter(l=>l!==a)}}return{criteria:i,unmatchedRemovals:o}}function PI(e,t){let n=wg(e);if(!t||t.length===0)return Array.from(new Set(n)).sort((o,i)=>o.localeCompare(i));let r=new Set(n);for(let o of bg(t))r.add(o);return Array.from(r).sort((o,i)=>o.localeCompare(i))}function MI(e,t){let n=Array.from(new Set(wg(e))).sort((o,i)=>o.localeCompare(i));if(!t||t.length===0)return n;let r=new Set(bg(t));return r.size===0?n:n.filter(o=>!r.has(o))}function FI(e){if(!e.startsWith("["))return null;let t;try{t=JSON.parse(e)}catch{return null}return t.map(r=>typeof r=="string"||typeof r=="number"||typeof r=="boolean"?String(r):"").filter(r=>r.length>0)}function ac(e){return e.replace(/\r\n/g,`
|
|
74
|
+
`)}function Eg(e){let t=ac(e).trim();if(!t.startsWith("```"))return e;let n=t.split(`
|
|
75
|
+
`);return n.length<2||n.at(-1)?.trim()!=="```"?e:n.slice(1,-1).join(`
|
|
76
|
+
`)}function $I(e){let t=[],n="",r=!1,o=!1;for(let i of e){if(o){n+=i,o=!1;continue}if(i==="\\"){n+=i,o=!0;continue}if(i==='"'){r=!r,n+=i;continue}if(i===","&&!r){t.push(n.trim()),n="";continue}n+=i}return n.trim()&&t.push(n.trim()),t}function Tg(e){let t=e.trim();if(t.startsWith('"')&&t.endsWith('"')){try{let n=JSON.parse(t);if(typeof n=="string")return n}catch{}return t.slice(1,-1).replace(/\\"/g,'"')}return e}function jI(e){let t=e.indexOf("="),n=e.indexOf(":"),r=t>0,o=n>0;return r&&o?Math.min(t,n):r?t:o?n:-1}function UI(e,t){if((t==="--add"||t==="--add-glob")&&(/[./\\]/.test(e)||/\.[a-z]{1,6}$/i.test(e.trim())))return"For file/doc paths use: path=<file-path>[,scope=project|global]. The scope field is optional and defaults to project (example: path=src/api.ts or path=README.md,scope=project). ";if(t!=="--event")return"";let n=e.toLowerCase(),r=n.includes("recur_")||n.includes("recurrence")?' Recurrence list values must stay in one field and use "|" delimiters (for example recur_by_weekday=mon|wed or recur_by_month_day=1|15).':"",o=n.includes("recur_byweekday")?" Use recur_by_weekday (with underscores) for weekday recurrence filters.":"";return`${r}${o}`}function zI(e,t){let n=e.replaceAll(/\s+/g," ").trim(),r=n.length>160?`${n.slice(0,157)}...`:n,o=UI(e,t);return`Invalid ${t} value "${r}". Expected key=value entries separated by commas. `+o+`Also accepts markdown-style key/value lines (for example "- path: README.md"). Use ${t} ${zn} to read piped stdin input.`}function qI(e){let t=Eg(e).trim();if(t.length===0||!t.includes(`
|
|
77
|
+
`)&&!t.startsWith("-")&&!t.startsWith("*")&&!t.startsWith("+"))return null;let n={},r,o=ac(t).split(`
|
|
78
|
+
`).map(i=>i.trim()).filter(i=>i.length>0);for(let i of o){let s=i.match(/^(?:[-*+]\s+)?([a-zA-Z0-9_.-]+)\s*(=|:)\s*(.*)$/);if(s){let a=s[1].trim();n[a]=Tg(s[3].trim()),r=a;continue}if(r&&yg.has(r.toLowerCase())){n[r]=`${n[r]}
|
|
79
|
+
${i}`;continue}return null}return n}function GI(e,t){let n=Eg(e).trim();if(!n)throw new b(`${t} cannot be empty`,_.USAGE);let r=qI(n);if(r)return r;let o={},i,s=$I(n);for(let a of s){let l=jI(a);if(l>0){let c=a.slice(0,l).trim(),d=Tg(a.slice(l+1).trim());o[c]=d,i=c;continue}if(i&&yg.has(i.toLowerCase())){o[i]=`${o[i]},${a.trim()}`;continue}throw new b(zI(e,t),_.USAGE)}return o}var VI=/^[A-Za-z]:[\\/]/,BI=/^(?:[-*+]\s+)?[A-Za-z_][A-Za-z0-9_.-]*\s*=/;function HI(e){let t=e.trim();return VI.test(t)?!1:BI.test(t)}function WI(e,t,n){let r=new Set(n.map(i=>i.toLowerCase())),o=Object.keys(e).filter(i=>!r.has(i.toLowerCase()));if(o.length>0)throw new b(`${t} does not recognize key${o.length>1?"s":""} ${o.map(i=>`"${i}"`).join(", ")}. Allowed keys: ${n.join(", ")}.`,_.USAGE);for(let i of Object.keys(e)){let s=i.toLowerCase();if(s!==i){if(Object.hasOwn(e,s))throw new b(`${t} provides key "${i}" more than once after case normalization.`,_.USAGE);e[s]=e[i],delete e[i]}}}async function KI(e){if(process.stdin.isTTY===!0)throw new b(`${e} value "${zn}" requires piped stdin input. Pipe content into the command, or end manual stdin with Ctrl+D (Unix/macOS) or Ctrl+Z then Enter (Windows).`,_.USAGE);return process.stdin.setEncoding("utf8"),await new Promise((t,n)=>{let r="";process.stdin.on("data",o=>{r+=o}),process.stdin.on("end",()=>{t(ac(r))}),process.stdin.on("error",o=>{n(o)})})}function YI(){let e,t,n=async i=>{if(t&&t!==i)throw new b(`Only one option may use "${zn}" stdin token per command invocation. Already used by ${t}.`,_.USAGE);return t=i,e||(e=KI(i)),await e};return{resolveValue:async(i,s)=>{if(i!==void 0)return i.trim()!==zn?i:await n(s)},resolveList:async(i,s)=>{if(!i)return;let a=i.map((d,u)=>d.trim()===zn?u:-1).filter(d=>d>=0);if(a.length===0)return i;if(a.length>1)throw new b(`${s} accepts "${zn}" stdin token at most once per command invocation`,_.USAGE);let l=await n(s),c=[...i];return c[a[0]]=l,c}}}function XI(e,t){let n=Number(e);if(!Number.isFinite(n))throw new b(`Invalid ${t} value "${e}"`,_.USAGE);return n}function JI(e,t){let n=e.trim(),r=Number(n);if(n===""||!Number.isInteger(r)||r<0)throw new b(`Invalid ${t} value "${e}". Expected a non-negative integer.`,_.USAGE);return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="806bf35f-dc7e-55a8-9bb9-64be87111c22")}catch{}})();var lc={critical:0,high:1,medium:2,low:3,minimal:4},QI=Object.keys(lc),ZI=`numbers 0..4 (0=critical, 1=high, 2=medium, 3=low, 4=minimal) or names (${QI.join(", ")}), case-insensitive`;function Mi(e){return new b(`Invalid priority "${e}". Accepted values: ${ZI}.`,_.USAGE)}function eR(e){if(typeof e=="number"){if(Number.isInteger(e)&&e>=0&&e<=4)return e;throw Mi(String(e))}if(typeof e!="string")throw Mi(String(e));let t=e.trim();if(t.length===0)throw Mi(e);let n=t.toLowerCase();if(Object.prototype.hasOwnProperty.call(lc,n))return lc[n];if(/^[0-4]$/.test(t))return Number(t);throw Mi(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bf76a01e-7292-59df-94ca-1e41aaff7365")}catch{}})();var tR=/^[A-Za-z0-9][A-Za-z0-9._/-]*$/,nR=64;function IV(e){let t=e?.trim().toLowerCase().replaceAll("-","_");if(t==="warn"||t==="strict_error")return t;if(t==="strict")return"strict_error";throw new b("Config set sprint-release-format-policy requires --policy with one of: warn, strict_error (alias: strict)",_.USAGE)}function rR(e,t,n){let r=t.trim();if(r.length===0)throw new b(`--${e} must not be empty. Use --${e} none to unset.`,_.USAGE);if(r.length<=nR&&tR.test(r))return{value:r,warnings:[]};let i="Expected 1-64 characters matching [A-Za-z0-9][A-Za-z0-9._/-]* (no spaces).";if(n==="strict_error")throw new b(`Invalid --${e} value "${r}". ${i}`,_.USAGE);return{value:r,warnings:[`validation_warning:${e}_format:${r}`]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d0e997bc-8bdb-5602-8606-73ecf77b2a35")}catch{}})();var vg={open:"open_status",closed:"close_status",canceled:"canceled_status",cancelled:"canceled_status"},Ag="all";function MV(e){if(typeof e!="string")return!1;let t=e.split(",").map(n=>n.trim().toLowerCase()).filter(n=>n.length>0);return t.length===1&&t[0]===Ag}function oR(e,t){let n=e.trim().toLowerCase();if(n.length===0)return;let r=vg[n];return r?t[r]:Kt(e,t)}function iR(e){let t=new Set(Object.keys(vg));for(let n of e.definitions){t.add(n.id);for(let r of n.aliases)t.add(r)}return[...t]}function sR(e,t){let n=e.trim().toLowerCase(),r,o=Number.POSITIVE_INFINITY;for(let i of iR(t)){let s=Fe(n,i.toLowerCase(),2);s!==null&&s<o&&(r=i,o=s)}return r}function aR(e,t,n){if(typeof e!="string")return;let r=n?.strict===!0,o=n?.flagLabel??"--status",i=e.split(",").map(l=>l.trim()).filter(l=>l.length>0);if(i.length===0)return;if(i.filter(l=>l.trim().toLowerCase()===Ag).length>0){if(i.length===1)return;throw new b(`Invalid ${o} value "all". Use it by itself, or omit ${o} to search every status.`,_.USAGE)}let a=[];for(let l of i){let c=oR(l,t);if(c===void 0){if(r){let d=sR(l,t);throw new b(`Invalid ${o} value "${l}". Use open|closed|canceled or a configured status id${d?`. Did you mean "${d}"?`:"."}`,_.USAGE)}a.push(l);continue}a.push(c)}return[...new Set(a)]}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b7a167e0-3041-5056-a672-ea0a054ed8df")}catch{}})();var lR={bug:"Issue",bugfix:"Issue",defect:"Issue",incident:"Issue",enhancement:"Feature",story:"Feature",userstory:"Feature","user-story":"Feature","user story":"Feature",change:"Chore",ticket:"Task",todo:"Task"};function cR(e){if(e!==void 0)return lR[e.trim().toLowerCase()]}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="6d11dc0f-e313-5b39-965d-6bc84ad52966")}catch{}})();function kg(e){let t=[],n=new Set;for(let r of e)for(let o of Object.keys(r))n.has(o)||(n.add(o),t.push(o));return t}function cc(e){return e==null?"":Array.isArray(e)?e.map(t=>cc(t)).join(";"):typeof e=="object"?JSON.stringify(e):String(e)}function Sg(e){return/[",\r\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function dR(e){if(e.length===0)return"";let t=kg(e),n=[t.map(r=>Sg(r)).join(",")];for(let r of e)n.push(t.map(o=>Sg(cc(r[o]))).join(","));return n.join(`
|
|
80
|
+
`)}function uR(e){if(e.length===0)return"";let t=kg(e),n=e.map(s=>t.map(a=>cc(s[a]))),r=t.map((s,a)=>Math.max(s.length,...n.map(l=>l[a].length))),o=(s,a)=>s.padEnd(r[a]),i=[t.map((s,a)=>o(s,a)).join(" | ")];i.push(r.map(s=>"-".repeat(s)).join("-+-"));for(let s of n)i.push(s.map((a,l)=>o(a,l)).join(" | "));return i.join(`
|
|
81
|
+
`)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b9581c92-5e8a-589d-9681-d4d014e6902b")}catch{}})();function fR(e,t="--limit"){if(e===void 0)return;let n=Number(e);if(!Number.isFinite(n)||n<0)throw new b(`${t} must be a non-negative number`,_.USAGE);return Math.floor(n)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="989b570c-112e-5ee3-8731-ab34f215ba45")}catch{}})();var pR=new Map(yn.map(e=>[e.toLowerCase(),e])),mR=/^[A-Za-z][A-Za-z0-9_-]*$/;function xg(e,t){if(!mR.test(e))throw new Error(`${t} "${e}" is not a valid identifier. Use a single letter-led token of letters, digits, hyphen, or underscore with no spaces or punctuation (e.g. "Spike" or "code-review").`)}function dc(e){return pR.get(e.trim().toLowerCase())}function Ig(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function gR(e){return e.replace(/[\\"`$]/g,t=>`\\${t}`)}function Rg(e){let t=new Map;for(let n of e){let r=n.trim();if(r.length===0)continue;let o=r.toLowerCase();t.has(o)||t.set(o,r)}return[...t.values()].sort((n,r)=>n.localeCompare(r))}function BV(e){let t=(e.name??"").trim();if(t.length===0)throw new Error("Type name must not be empty.");xg(t,"Type name");let n=dc(t);if(n)throw new Error(`Cannot redefine built-in item type "${n}". Built-in types are reserved: ${yn.join(", ")}.`);let r=e.description?.trim(),o=e.defaultStatus?.trim(),i=e.folder?.trim(),s=i&&i.length>0?Io(i):void 0,a=Rg(e.aliases??[]);for(let l of a){xg(l,"Alias");let c=dc(l);if(c)throw new Error(`Alias "${l}" collides with built-in item type "${c}". Built-in types are reserved: ${yn.join(", ")}.`)}return{name:t,description:r&&r.length>0?r:void 0,defaultStatus:o&&o.length>0?o:void 0,folder:s,aliases:a}}function HV(e,t){let n=e.name.toLowerCase(),r=new Map;for(let i of t.definitions){if(typeof i.name!="string")continue;let s=i.name.trim();if(!(s.length===0||s.toLowerCase()===n)){r.set(s.toLowerCase(),s);for(let a of Ig(i.aliases))a.trim().length>0&&r.set(a.trim().toLowerCase(),s)}}let o=r.get(n);if(o)throw new Error(`Type name "${e.name}" collides with an alias of existing item type "${o}".`);for(let i of e.aliases){let s=r.get(i.toLowerCase());if(s)throw new Error(`Alias "${i}" already maps to existing item type "${s}".`)}}function Cg(e,t){return typeof t=="string"&&t.trim().length>0?Io(t).toLowerCase():sr(e).toLowerCase()}function WV(e,t,n){let r=e.name.toLowerCase(),o=Cg(e.name,e.folder),i=a=>{throw new Error(`Item type "${e.name}" would store items in folder "${o}", which already belongs to existing item type "${a}". Pass a distinct --folder to keep their storage separate.`)};for(let a of t.definitions){if(typeof a.name!="string")continue;let l=a.name.trim();l.length===0||l.toLowerCase()===r||Cg(l,a.folder)===o&&i(l)}let s=n?.get(o);s!==void 0&&s.toLowerCase()!==r&&i(s)}function KV(e){if(e==null||e.trim().length===0)return{definitions:[]};let t;try{t=JSON.parse(e)}catch{throw new Error("schema/types.json contains invalid JSON.")}return{definitions:_R(t)}}function _R(e){let t=yR(e);if(!t)return[];let n=[];for(let r of t){if(typeof r!="object"||r===null||Array.isArray(r))continue;let o=r;typeof o.name!="string"||o.name.trim().length===0||n.push(o)}return n}function yR(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.definitions))return t.definitions;if(typeof t.item_types=="object"&&t.item_types!==null){let n=t.item_types;if(Array.isArray(n.definitions))return n.definitions}}function YV(e,t){let n=t.name.toLowerCase(),r=e.definitions.slice(),o=r.findIndex(l=>typeof l.name=="string"&&l.name.trim().toLowerCase()===n),i=o>=0?r[o]:void 0,s=Rg([...Ig(i?.aliases),...t.aliases]),a={...i,name:t.name};return t.folder!==void 0&&(a.folder=t.folder),s.length>0?a.aliases=s:a.aliases!==void 0&&delete a.aliases,Og(a,"description",t.description),Og(a,"default_status",t.defaultStatus),o>=0?r[o]=a:r.push(a),r.sort((l,c)=>l.name.localeCompare(c.name)),{file:{definitions:r},definition:a,replaced:o>=0,...i&&typeof i.name=="string"?{previousName:i.name}:{}}}function XV(e,t){let n=(t??"").trim();if(n.length===0)throw new Error("Type name must not be empty.");let r=dc(n);if(r)throw new Error(`Cannot remove built-in item type "${r}". Built-in types are reserved: ${yn.join(", ")}.`);let o=n.toLowerCase(),i=e.definitions.slice(),s=i.findIndex(l=>typeof l.name=="string"&&l.name.trim().toLowerCase()===o);if(s<0)return{file:{definitions:i},removed:!1};let[a]=i.splice(s,1);return{file:{definitions:i},removed:!0,definition:a}}function Og(e,t,n){let r=e;n!==void 0&&(r[t]=n)}function JV(e){return`${JSON.stringify({definitions:e.definitions},null,2)}
|
|
82
|
+
`}function hR(e,t){let n=e.trim().length>0?e.trim():e,r=t?.trim()||".agents/pm/schema/types.json";return`To register a custom type, run: pm schema add-type "${gR(n)}" (writes ${r}).`}function bR(e,t,n){return`Invalid type value "${e}". Allowed: ${t.join(", ")}. ${hR(e,n)}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="43a56374-808c-5fa6-bd6c-5d93175df0d2")}catch{}})();function Ng(e,t){return re(e,t)}function wR(e,t,n){let r={};for(let o of t.command_to_fields.get(n)??[]){let i=ii(e,o);i!==void 0&&(r[o.metadata_key]=Wt(o,i))}return r}function ER(e,t){for(let[n,r]of Object.entries(t)){let o=e[n];if(Array.isArray(r)){if(Array.isArray(o)){let i=o.map(a=>String(a));if(!r.map(a=>String(a)).every(a=>i.includes(a)))return!1;continue}if(!Ng(o,r[r.length-1]))return!1;continue}if(!Ng(o,r))return!1}return!0}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c4e316a0-823d-5722-9e15-6d741ae44f1b")}catch{}})();function Dg(e){return typeof e=="string"?e.trim().toLowerCase():""}function Fi(e,t){let n=Te(e);return n.length===0?"":t?.alias_to_id?.get(n)??n}function TR(e){let t=Array.isArray(e?.type_workflows)?e.type_workflows:[],n=new Map;for(let r of t){let o=Dg(r?.type);if(o.length===0||!Array.isArray(r?.allowed_transitions))continue;let i=r.allowed_transitions,s=n.get(o)??{pairs:[],denyAll:!1};i.length===0&&(s.denyAll=!0);for(let a of i){if(!Array.isArray(a)||a.length!==2)continue;let l=Te(a[0]),c=Te(a[1]);l.length===0||c.length===0||s.pairs.some(d=>d[0]===l&&d[1]===c)||s.pairs.push([l,c])}n.set(o,s)}return[...n.entries()].filter(([,r])=>r.pairs.length>0||r.denyAll).map(([r,o])=>({type:r,allowed_transitions:o.pairs})).sort((r,o)=>r.type.localeCompare(o.type))}function vR(e){let t=Dg(e.typeName),n=e.typeWorkflows.find(s=>s.type===t);if(!n)return{allowed:!0,hasRule:!1,allowedTransitions:[]};let r=Fi(e.fromStatus,e.statusRegistry),o=Fi(e.toStatus,e.statusRegistry);return r.length>0&&r===o?{allowed:!0,hasRule:!0,allowedTransitions:n.allowed_transitions}:{allowed:n.allowed_transitions.some(s=>{let a=Fi(s[0],e.statusRegistry),l=Fi(s[1],e.statusRegistry);return a===r&&l===o}),hasRule:!0,allowedTransitions:n.allowed_transitions}}function AR(e){return e.length===0?"(no transitions allowed)":e.map(t=>`${t[0]} -> ${t[1]}`).join(", ")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="027f6acb-15cc-5707-85ed-b5298b6b6abe")}catch{}})();var ee={ok:!1},w=e=>typeof e=="string"?{ok:!0,value:e}:ee,N=e=>typeof e=="boolean"?{ok:!0,value:e}:ee;function G(e={}){return t=>typeof t!="number"||!Number.isFinite(t)||e.int&&(!Number.isInteger(t)||!Number.isSafeInteger(t))||e.positive&&t<=0||typeof e.min=="number"&&t<e.min||typeof e.max=="number"&&t>e.max?ee:{ok:!0,value:t}}function F(...e){return t=>typeof t=="string"&&e.includes(t)?{ok:!0,value:t}:ee}function v(e,t){return n=>{if(!Array.isArray(n)||t!==void 0&&n.length>t)return ee;let r=[];for(let o of n){let i=e(o);if(!i.ok)return ee;r.push(i.value)}return{ok:!0,value:r}}}function fc(e,t){return n=>typeof n=="string"&&n.length>0&&n.length<=e&&n===n.trim()&&(t===void 0||t.test(n))?{ok:!0,value:n}:ee}function m(e){return t=>t===void 0?{ok:!0,value:void 0}:e(t)}function $i(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return ee;let n={};for(let[r,o]of Object.entries(t)){let i=e(o);if(!i.ok)return ee;n[r]=i.value}return{ok:!0,value:n}}}function C(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return ee;let n=t,r={};for(let[o,i]of Object.entries(e)){let s=i(n[o]);if(!s.ok)return ee;s.value!==void 0&&(r[o]=s.value)}return{ok:!0,value:r}}}var SR=C({key:w,values:v(w),required:m(N),aliases:m(v(w)),description:m(w)}),kR=C({command:F("create","update"),option:w,required:m(N),visible:m(N),enabled:m(N)}),xR=C({name:w,description:m(w),default_status:m(w),folder:m(w),aliases:m(v(w)),required_create_fields:m(v(w)),required_create_repeatables:m(v(w)),options:m(v(SR)),command_option_policies:m(v(kR))}),CR=C({id:w,aliases:m(v(w)),roles:m(v(F(...To))),description:m(w),order:m(G())}),OR=C({key:w,metadata_key:m(w),front_matter_key:m(w),cli_flag:m(w),cli_aliases:m(v(w)),description:m(w),type:m(F(...bn)),commands:m(v(F(...vo))),repeatable:m(N),required:m(N),required_on_create:m(N),required_types:m(v(w)),allow_unset:m(N)}),IR=e=>{if(!Array.isArray(e)||e.length!==2)return ee;let[t,n]=e;return typeof t!="string"||typeof n!="string"?ee:{ok:!0,value:[t,n]}},RR=C({type:w,allowed_transitions:v(IR)}),NR=m(C({version:m(G({int:!0})),files:m(C({types:m(w),statuses:m(w),fields:m(w),workflows:m(w)})),statuses:m(v(CR)),fields:m(v(OR)),workflow:m(C({draft_status:m(w),open_status:m(w),in_progress_status:m(w),blocked_status:m(w),close_status:m(w),canceled_status:m(w)})),type_workflows:m(v(RR)),unknown_field_policy:m(F(...Ao))})),DR=m(C({preset:m(F(...Su)),ownership_enforcement:m(F("none","warn","strict")),create_mode_default:m(F("progressive","strict")),close_validation_default:m(F("off","warn","strict")),require_close_reason:m(N),parent_reference:m(F("warn","strict_error")),metadata_profile:m(F("core","strict","custom")),force_required_for_stale_lock:m(N),create_default_type:m(w),workflow_enforcement:m(F("off","warn","strict")),duplicate_detection_mode:m(F("off","advisory","strict")),duplicate_detection_threshold:m(G({min:0,max:1})),duplicate_detection_limit:m(G({int:!0,min:0,max:20}))})),LR=C({name:w,disabled:m(N),require_trusted:m(N),require_provenance:m(N),sandbox_profile:m(F("none","restricted","strict")),allowed_capabilities:m(v(w)),blocked_capabilities:m(v(w)),allowed_surfaces:m(v(w)),blocked_surfaces:m(v(w)),allowed_commands:m(v(w)),blocked_commands:m(v(w)),allowed_actions:m(v(w)),blocked_actions:m(v(w)),allowed_services:m(v(w)),blocked_services:m(v(w))}),uc=F("block","warn"),PR=e=>typeof e=="string"?uc(e):C({global:m(uc),project:m(uc)})(e),MR=m(C({mode:m(F("off","warn","enforce")),trust_mode:m(F("off","warn","enforce")),pm_max_version_exceeded_mode:m(PR),require_provenance:m(N),trusted_extensions:m(v(w)),default_sandbox_profile:m(F("none","restricted","strict")),allowed_extensions:m(v(w)),blocked_extensions:m(v(w)),allowed_capabilities:m(v(w)),blocked_capabilities:m(v(w)),allowed_surfaces:m(v(w)),blocked_surfaces:m(v(w)),allowed_commands:m(v(w)),blocked_commands:m(v(w)),allowed_actions:m(v(w)),blocked_actions:m(v(w)),allowed_services:m(v(w)),blocked_services:m(v(w)),extension_overrides:m(v(LR))})),on=fc(128),FR=C({harness:fc(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u),environment_keys:m(v(on,64)),model_environment_keys:m(v(on,64)),session_environment_keys:m(v(on,64)),provenance_environment_keys:m($i(v(on,64))),provenance_resolvers:m($i(F("ai_agent_version","claude_session_file"))),provenance_unavailable_dimensions:m(v(on,64)),argv_markers:m(v(on,64)),client_names:m(v(on,64))}),$R=C({version:G({int:!0}),id_prefix:w,ids:m(C({token_length:m(G({int:!0,min:4,max:12}))})),author_default:w,agent_identity:m(C({probes_enabled:m(N),identity_vocabulary:m(C({version:G({int:!0,positive:!0}),aliases:$i(fc(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u))})),harness_signals:v(FR)})),mutation_guard:m(C({require_attributed_author:m(N),secret_guard:m(F("off","advise","block")),stale_in_progress_hours:m(G({int:!0,positive:!0}))})),item_format:m(F("toon","json_markdown")),locks:C({ttl_seconds:G({int:!0}),wait_ms:m(G({int:!0,min:0}))}),checkpoints:m(C({retention_days:m(G({int:!0,positive:!0}))})),output:C({default_format:F("toon","json")}),history:m(C({missing_stream:F("auto_create","strict_error"),compact_policy:m(C({enabled:m(N),max_entries:m(G({int:!0,positive:!0})),trigger:m(F("health_warn","auto"))}))})),validation:m(C({sprint_release_format:F("warn","strict_error"),parent_reference:m(F("warn","strict_error")),metadata_profile:m(F("core","strict","custom")),metadata_required_fields:m(v(w)),lifecycle_stale_blocker_reason_patterns:m(v(w)),lifecycle_closure_like_blocked_reason_patterns:m(v(w)),lifecycle_closure_like_resolution_patterns:m(v(w)),lifecycle_closure_like_actual_result_patterns:m(v(w)),estimate_defaults_by_type:m($i(G({int:!0,positive:!0})))})),governance:DR,workflow:m(C({definition_of_done:v(w)})),testing:m(C({record_results_to_items:N})),telemetry:m(C({enabled:N,first_run_prompt_completed:m(N),capture_level:m(F("minimal","redacted","max")),endpoint:m(w),installation_id:m(w),retention_days:m(G({int:!0,positive:!0}))})),agent_guidance:m(C({prompt_completed:m(N),declined:m(N),declined_at:m(w),template_version:m(G({int:!0,positive:!0})),last_checked_files:m(v(w))})),item_types:m(C({definitions:v(xR)})),schema:NR,context:m(C({default_depth:m(F("brief","standard","deep")),activity_limit:m(G({int:!0,positive:!0})),stale_threshold_days:m(G({int:!0,positive:!0})),sections:m(C({hierarchy:m(N),activity:m(N),progress:m(N),recently_created:m(N),unparented:m(N),blockers:m(N),files:m(N),workload:m(N),staleness:m(N),tests:m(N)}))})),extensions:C({enabled:v(w),disabled:v(w),policy:MR}),search:C({score_threshold:G(),hybrid_semantic_weight:m(G()),max_results:G({int:!0}),embedding_model:w,embedding_corpus_max_characters:m(G()),embedding_batch_size:G({int:!0}),embedding_timeout_ms:m(G({int:!0})),scanner_max_batch_retries:G({int:!0}),provider:m(w),corpus_fields:m(v(w)),mutation_refresh_policy:m(F("cache_only","semantic_configured","semantic_auto")),query_expansion:m(C({enabled:m(N),provider:m(w)})),rerank:m(C({enabled:m(N),model:m(w),top_k:m(G({int:!0,positive:!0}))})),bm25:m(C({k1:m(G()),b:m(G())}))}),providers:C({openai:C({base_url:w,api_key:w,model:w}),ollama:C({base_url:w,model:w})}),vector_store:C({adapter:m(w),collection_name:m(w),qdrant:C({url:w,api_key:w}),lancedb:C({path:w})})});function Lg(e){let t=$R(e);return t.ok?{success:!0,data:t.value}:{success:!1}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2d377bc4-c624-561c-9856-405c82099070")}catch{}})();var jR={Epic:2880,Feature:480,Story:480,Milestone:2880,Task:120,Issue:60,Bug:60,Chore:30,Decision:15,Plan:120},Pg=120;function pc(e){return typeof e=="number"&&Number.isFinite(e)&&e>0}function Fg(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n.toLowerCase(),r);return t}var UR=Fg(jR),Mg=new WeakMap;function zR(e){let t=Mg.get(e);if(t)return t;let n=Fg(e);return Mg.set(e,n),n}function a2(e,t){let n=(e??"").trim().toLowerCase();if(n.length===0)return Pg;if(t){let o=zR(t).get(n);if(pc(o))return Math.floor(o)}let r=UR.get(n);return pc(r)?Math.floor(r):Pg}function mc(e){let t={};if(e===null||typeof e!="object"||Array.isArray(e))return t;for(let[n,r]of Object.entries(e)){let o=n.trim();o.length===0||!pc(r)||(t[o]=Math.floor(r))}return t}import{stat as qR}from"node:fs/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="60da76ea-0bd3-56a9-a2bc-d88ba76e1013")}catch{}})();var ji=new Map;function $g(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}async function GR(e){try{let t=await qR(e);return{path:e,mtime_ms:t.mtimeMs,size:t.size}}catch{return{path:e,mtime_ms:null,size:null}}}async function St(e){let t=$g(e),n=await Promise.all(t.map(r=>GR(r)));return n.sort((r,o)=>r.path.localeCompare(o.path)),n}function Ur(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1){let r=e[n],o=t[n];if(r.path!==o.path||r.mtime_ms!==o.mtime_ms||r.size!==o.size)return!1}return!0}function jg(e){return ji.get(e)}function Ui(e,t){let n=$g(t.tracked_paths),r=[...t.signatures].map(o=>({path:o.path,mtime_ms:o.mtime_ms,size:o.size})).sort((o,i)=>o.path.localeCompare(i.path));ji.set(e,{tracked_paths:n,signatures:r,value:t.value})}function kt(e){if(e){ji.delete(e);return}ji.clear()}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a434b9ea-4692-51c5-8761-0f1759fff394")}catch{}})();var VR="settings:write",Vg=Symbol("pm.settings.persist_source"),BR=128,HR=new Set(["off","advisory","strict"]);function Ug(e){return structuredClone(Vs[e])}function WR(e){return e==="minimal"||e==="default"||e==="strict"||e==="custom"?e:S.governance.preset}function zg(e,t){let n=typeof t.create_default_type=="string"?t.create_default_type.trim():void 0;return n&&n.length>0&&(e.create_default_type=n),(t.workflow_enforcement==="off"||t.workflow_enforcement==="warn"||t.workflow_enforcement==="strict")&&(e.workflow_enforcement=t.workflow_enforcement),t.require_close_reason===!1&&(e.require_close_reason=!1),e.duplicate_detection_mode=t.duplicate_detection_mode,e.duplicate_detection_threshold=t.duplicate_detection_threshold,e.duplicate_detection_limit=t.duplicate_detection_limit,e}function KR(e){return e.preset==="custom"?zg({preset:"custom",ownership_enforcement:e.ownership_enforcement,create_mode_default:e.create_mode_default,close_validation_default:e.close_validation_default,parent_reference:e.parent_reference,metadata_profile:e.metadata_profile,force_required_for_stale_lock:e.force_required_for_stale_lock},e):zg({preset:e.preset},e)}function YR(e){let t=typeof e.create_default_type=="string"?e.create_default_type.trim():void 0,n={};t&&t.length>0&&(n.create_default_type=t),(e.workflow_enforcement==="off"||e.workflow_enforcement==="warn"||e.workflow_enforcement==="strict")&&(n.workflow_enforcement=e.workflow_enforcement),typeof e.require_close_reason=="boolean"&&(n.require_close_reason=e.require_close_reason),HR.has(String(e.duplicate_detection_mode))&&(n.duplicate_detection_mode=e.duplicate_detection_mode);let r=e.duplicate_detection_threshold;[typeof r=="number",Number.isFinite(r),Number(r)>=0,Number(r)<=1].every(Boolean)&&(n.duplicate_detection_threshold=r);let o=e.duplicate_detection_limit;return[typeof o=="number",Number.isSafeInteger(o),Number(o)>=0,Number(o)<=20].every(Boolean)&&(n.duplicate_detection_limit=o),n}function qi(e){let t=e.governance??{},n=WR(t.preset),r=YR(t);if(n==="custom"){let s=Ug("default"),a=r.require_close_reason??s.require_close_reason;return{preset:n,ownership_enforcement:t.ownership_enforcement??s.ownership_enforcement,create_mode_default:t.create_mode_default??s.create_mode_default,close_validation_default:t.close_validation_default??s.close_validation_default,parent_reference:t.parent_reference??s.parent_reference,metadata_profile:t.metadata_profile??s.metadata_profile,force_required_for_stale_lock:t.force_required_for_stale_lock??s.force_required_for_stale_lock,...r,require_close_reason:a,duplicate_detection_mode:r.duplicate_detection_mode??s.duplicate_detection_mode,duplicate_detection_threshold:r.duplicate_detection_threshold??s.duplicate_detection_threshold,duplicate_detection_limit:r.duplicate_detection_limit??s.duplicate_detection_limit}}let o=Ug(n),i=r.require_close_reason??o.require_close_reason;return{preset:n,...o,...r,require_close_reason:i}}function Bg(){return structuredClone(S)}function Hg(e){return e==="cache_only"||e==="semantic_configured"||e==="semantic_auto"?e:S.search.mutation_refresh_policy}function Wg(e){return typeof e=="boolean"?e:S.search.query_expansion.enabled}function Kg(e){return typeof e!="string"?S.search.query_expansion.provider:e.trim()}function Yg(e){return typeof e=="boolean"?e:S.search.rerank.enabled}function Xg(e){return typeof e!="string"?S.search.rerank.model:e.trim()}function Jg(e){return typeof e=="number"&&Number.isFinite(e)&&Number.isInteger(e)&&e>0?e:S.search.rerank.top_k}function Qg(e){if(typeof e!="string")return S.vector_store.collection_name;let n=e.trim().replaceAll(/[^a-zA-Z0-9_-]/g,"_").slice(0,BR);return n.length>0?n:S.vector_store.collection_name}function gc(e){return{present:Array.isArray(e),values:Array.isArray(e)?structuredClone(e):[]}}function XR(e,t){let n=e.schema,r=gc(n?.statuses),o=gc(n?.fields),i=gc(n?.type_workflows);return{source_settings:structuredClone(e),has_source_item_type_definitions:Array.isArray(e.item_types?.definitions),source_item_type_definitions:qn(e.item_types?.definitions),has_source_schema_statuses:r.present,source_schema_statuses:r.values,has_source_schema_fields:o.present,source_schema_fields:o.values,has_source_schema_type_workflows:i.present,source_schema_type_workflows:i.values,runtime_item_type_definitions:qn(t.item_types?.definitions),runtime_schema_statuses:structuredClone(t.schema.statuses),runtime_schema_fields:structuredClone(t.schema.fields),runtime_schema_type_workflows:structuredClone(t.schema.type_workflows??[])}}function wc(e,t){Object.defineProperty(e,Vg,{value:t,writable:!0,configurable:!0,enumerable:!1})}function Ec(e){let t=e[Vg];if(!(!t||typeof t!="object"))return t}function JR(e){let t=Ec(e);if(t){let n=structuredClone(t);n.source_settings.item_format=e.item_format,wc(e,n)}}function zi(e){let t=structuredClone(e.settings),n=Ec(e.settings);return n&&wc(t,n),{settings:t,metadata:{has_explicit_item_format:e.metadata.has_explicit_item_format},warnings:[...e.warnings]}}function QR(e,t,n){let r=Ge(t);return[n,fe(e,r.files.types,ce.types),fe(e,r.files.statuses,ce.statuses),fe(e,r.files.fields,ce.fields),fe(e,r.files.workflows,ce.workflows)]}async function ZR(e,t,n){let r=await St(t);Ui(e,{tracked_paths:t,signatures:r,value:zi(n)})}async function eN(e,t,n){try{await ZR(e,t,n)}catch{kt(e)}}function qg(e,t){return e.find(n=>n.path===t)}function tN(e,t,n){for(let r of n){let o=qg(e,r),i=qg(t,r);if(!o||!i||!Ur([o],[i]))return!1}return!0}async function _c(e,t,n,r,o){try{let i=await St(t);if(!tN(r,i,o)){kt(e);return}Ui(e,{tracked_paths:t,signatures:i,value:zi(n)})}catch{kt(e)}}function nN(e,t){let n=Ge(e.schema),r=qn(e.item_types?.definitions);if(!t)return{item_type_definitions:r,schema_statuses:n.statuses,schema_fields:n.fields,schema_type_workflows:n.type_workflows};let o=n.type_workflows??[],i=re(r,t.runtime_item_type_definitions),s=re(n.statuses,t.runtime_schema_statuses),a=re(n.fields,t.runtime_schema_fields),l=re(o,t.runtime_schema_type_workflows);return{item_type_definitions:i?t.has_source_item_type_definitions?qn(t.source_item_type_definitions):[]:r,schema_statuses:s?t.has_source_schema_statuses?structuredClone(t.source_schema_statuses):[]:n.statuses,schema_fields:a?t.has_source_schema_fields?structuredClone(t.source_schema_fields):[]:n.fields,schema_type_workflows:l?t.has_source_schema_type_workflows?structuredClone(t.source_schema_type_workflows):void 0:n.type_workflows}}function zr(e){return{settings:Bg(),metadata:{has_explicit_item_format:!1},warnings:e?[e]:[]}}function rN(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e.item_format;return t==="toon"||t==="json_markdown"}function hc(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function Zg(e){let t=S.agent_guidance,n=e?.template_version;return{prompt_completed:e?.prompt_completed===!0,declined:e?.declined===!0,declined_at:typeof e?.declined_at=="string"?e.declined_at:t.declined_at,template_version:typeof n=="number"&&Number.isInteger(n)&&n>0?n:t.template_version,last_checked_files:hc(e?.last_checked_files??t.last_checked_files)}}function Ue(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function oN(e){return e==="off"||e==="warn"||e==="enforce"?e:S.extensions.policy.mode}function iN(e){return e==="off"||e==="warn"||e==="enforce"?e:S.extensions.policy.trust_mode}function e_(e){return e==="none"||e==="restricted"||e==="strict"?e:S.extensions.policy.default_sandbox_profile}function sN(e){let t=e.name.trim().toLowerCase();if(t.length===0)return null;let n={name:t};e.disabled===!0&&(n.disabled=!0),e.require_trusted===!0&&(n.require_trusted=!0),e.require_provenance===!0&&(n.require_provenance=!0),e.sandbox_profile!==void 0&&(n.sandbox_profile=e_(e.sandbox_profile));let r=Ue(e.allowed_capabilities),o=Ue(e.blocked_capabilities),i=Ue(e.allowed_surfaces),s=Ue(e.blocked_surfaces),a=Ue(e.allowed_commands),l=Ue(e.blocked_commands),c=Ue(e.allowed_actions),d=Ue(e.blocked_actions),u=Ue(e.allowed_services),p=Ue(e.blocked_services);return r.length>0&&(n.allowed_capabilities=r),o.length>0&&(n.blocked_capabilities=o),i.length>0&&(n.allowed_surfaces=i),s.length>0&&(n.blocked_surfaces=s),a.length>0&&(n.allowed_commands=a),l.length>0&&(n.blocked_commands=l),c.length>0&&(n.allowed_actions=c),d.length>0&&(n.blocked_actions=d),u.length>0&&(n.allowed_services=u),p.length>0&&(n.blocked_services=p),n}function aN(e){let t=new Map;for(let n of e??[]){let r=sN(n);r&&t.set(r.name,r)}return[...t.values()].sort((n,r)=>n.name.localeCompare(r.name))}function yc(e){return e==="block"||e==="warn"?e:void 0}function lN(e){if(typeof e=="string")return yc(e);if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let t=yc(e.global),n=yc(e.project);return t===void 0&&n===void 0?void 0:{...t!==void 0?{global:t}:{},...n!==void 0?{project:n}:{}}}}function ve(e,t){return Ue(e?.[t]??S.extensions.policy[t])}function t_(e){let t=lN(e?.pm_max_version_exceeded_mode);return{mode:oN(e?.mode),trust_mode:iN(e?.trust_mode),...t!==void 0?{pm_max_version_exceeded_mode:t}:{},require_provenance:e?.require_provenance===!0,trusted_extensions:ve(e,"trusted_extensions"),default_sandbox_profile:e_(e?.default_sandbox_profile),allowed_extensions:ve(e,"allowed_extensions"),blocked_extensions:ve(e,"blocked_extensions"),allowed_capabilities:ve(e,"allowed_capabilities"),blocked_capabilities:ve(e,"blocked_capabilities"),allowed_surfaces:ve(e,"allowed_surfaces"),blocked_surfaces:ve(e,"blocked_surfaces"),allowed_commands:ve(e,"allowed_commands"),blocked_commands:ve(e,"blocked_commands"),allowed_actions:ve(e,"allowed_actions"),blocked_actions:ve(e,"blocked_actions"),allowed_services:ve(e,"allowed_services"),blocked_services:ve(e,"blocked_services"),extension_overrides:aN(e?.extension_overrides??S.extensions.policy.extension_overrides)}}function n_(e){return[...new Set((e??[]).map(n=>n.trim().toLowerCase().replaceAll("-","_")))].filter(n=>n.length>0).sort((n,r)=>n.localeCompare(r)).filter(n=>["author","acceptance_criteria","estimated_minutes","close_reason","reviewer","risk","confidence","sprint","release"].includes(n))}function xt(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function J(e,t){return e===void 0?t:e}function Ae(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:{}}function bc(e){return Array.isArray(e)?e:[]}function cN(e,t,n){return{...t.validation,...e.validation,parent_reference:n.parent_reference,metadata_profile:n.metadata_profile,metadata_required_fields:n_(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:xt(e.validation?.lifecycle_stale_blocker_reason_patterns??t.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:xt(e.validation?.lifecycle_closure_like_blocked_reason_patterns??t.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:xt(e.validation?.lifecycle_closure_like_resolution_patterns??t.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:xt(e.validation?.lifecycle_closure_like_actual_result_patterns??t.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:mc(e.validation?.estimate_defaults_by_type)}}function dN(e,t){return{enabled:e.telemetry?.enabled??t.telemetry.enabled,first_run_prompt_completed:e.telemetry?.first_run_prompt_completed??t.telemetry.first_run_prompt_completed,capture_level:e.telemetry?.capture_level??t.telemetry.capture_level,endpoint:e.telemetry?.endpoint??t.telemetry.endpoint,installation_id:e.telemetry?.installation_id??t.telemetry.installation_id,retention_days:e.telemetry?.retention_days??t.telemetry.retention_days}}function uN(e,t){return{...t.search,...e.search,mutation_refresh_policy:Hg(e.search?.mutation_refresh_policy),query_expansion:{...t.search.query_expansion,...e.search?.query_expansion,enabled:Wg(e.search?.query_expansion?.enabled),provider:Kg(e.search?.query_expansion?.provider)},rerank:{...t.search.rerank,...e.search?.rerank,enabled:Yg(e.search?.rerank?.enabled),model:Xg(e.search?.rerank?.model),top_k:Jg(e.search?.rerank?.top_k)}}}function fN(e,t){return{adapter:e.vector_store.adapter??t.vector_store.adapter,collection_name:Qg(e.vector_store.collection_name),qdrant:{...t.vector_store.qdrant,...e.vector_store.qdrant},lancedb:{...t.vector_store.lancedb,...e.vector_store.lancedb}}}function pN(e,t){return e.item_format==="json_markdown"?"toon":e.item_format??t.item_format}function mN(e,t){return{default_depth:e.context?.default_depth??t.context.default_depth,activity_limit:e.context?.activity_limit??t.context.activity_limit,stale_threshold_days:e.context?.stale_threshold_days??t.context.stale_threshold_days,sections:{...t.context.sections,...e.context?.sections}}}function gN(e,t){return{openai:{...t.providers.openai,...e.providers.openai},ollama:{...t.providers.ollama,...e.providers.ollama}}}function qn(e){let t=(e??[]).map(r=>Oo(r)).filter(r=>r!==null),n=new Map;for(let r of t)n.set(r.name.toLowerCase(),r);return[...n.values()].sort((r,o)=>r.name.localeCompare(o.name))}function r_(e){let t=Bg(),n=qi({governance:e.governance??{preset:"default"}});return{...t,...e,item_format:pN(e,t),locks:{...t.locks,...e.locks},ids:{...t.ids,...e.ids},agent_identity:structuredClone(e.agent_identity??t.agent_identity),mutation_guard:{...t.mutation_guard,...e.mutation_guard},checkpoints:{...t.checkpoints,...e.checkpoints},output:{...t.output,...e.output},history:{...t.history,...e.history,compact_policy:{...t.history.compact_policy,...e.history?.compact_policy}},validation:cN(e,t,n),governance:n,workflow:{definition_of_done:[...e.workflow?.definition_of_done??t.workflow.definition_of_done]},testing:{record_results_to_items:e.testing?.record_results_to_items??t.testing.record_results_to_items},telemetry:dN(e,t),agent_guidance:Zg(e.agent_guidance??t.agent_guidance),item_types:{definitions:qn(e.item_types?.definitions)},schema:Ge(e.schema??t.schema),context:mN(e,t),extensions:{enabled:[...e.extensions.enabled],disabled:[...e.extensions.disabled],policy:t_(e.extensions.policy??t.extensions.policy)},search:uN(e,t),providers:gN(e,t),vector_store:fN(e,t)}}function _N(e){e.agent_identity=x(e.agent_identity,["probes_enabled","identity_vocabulary","harness_signals"]);let t=e.agent_identity;Object.hasOwn(t,"identity_vocabulary")&&(t.identity_vocabulary=x(Ae(t.identity_vocabulary),["version","aliases"])),e.agent_identity.harness_signals=bc(e.agent_identity.harness_signals).map(n=>x(Ae(n),["harness","environment_keys","model_environment_keys","session_environment_keys","provenance_environment_keys","provenance_resolvers","provenance_unavailable_dimensions","argv_markers","client_names"])),e.locks=x(e.locks,["ttl_seconds","wait_ms"]),e.ids=x(e.ids,["token_length"]),e.mutation_guard=x(e.mutation_guard,["require_attributed_author","secret_guard","stale_in_progress_hours"]),e.checkpoints=x(e.checkpoints,["retention_days"]),e.output=x(e.output,["default_format"]),e.history=x(e.history,["missing_stream","compact_policy"]),e.validation=x(e.validation,["sprint_release_format","parent_reference","metadata_profile","metadata_required_fields","lifecycle_stale_blocker_reason_patterns","lifecycle_closure_like_blocked_reason_patterns","lifecycle_closure_like_resolution_patterns","lifecycle_closure_like_actual_result_patterns","estimate_defaults_by_type"]),e.governance=x(e.governance,["preset","ownership_enforcement","create_mode_default","close_validation_default","require_close_reason","parent_reference","metadata_profile","force_required_for_stale_lock","create_default_type","workflow_enforcement","duplicate_detection_mode","duplicate_detection_threshold","duplicate_detection_limit"]),e.workflow=x(e.workflow,["definition_of_done"]),e.testing=x(e.testing,["record_results_to_items"]),e.telemetry=x(e.telemetry,["enabled","first_run_prompt_completed","capture_level","endpoint","installation_id","retention_days"]),e.agent_guidance=x(e.agent_guidance,["prompt_completed","declined","declined_at","template_version","last_checked_files"]),e.item_types=x(e.item_types,["definitions"]),e.schema=x(e.schema,["version","files","statuses","fields","workflow","type_workflows","unknown_field_policy"]),e.schema.files=x(Ae(e.schema.files),["types","statuses","fields","workflows"]),e.schema.workflow=x(Ae(e.schema.workflow),["draft_status","open_status","in_progress_status","blocked_status","close_status","canceled_status"]),e.context=x(e.context,["default_depth","activity_limit","stale_threshold_days","sections"]),e.context.sections=x(Ae(e.context.sections),["hierarchy","activity","progress","blockers","files","workload","staleness","tests"]),e.extensions=x(e.extensions,["enabled","disabled","policy"]),e.extensions.policy=x(Ae(e.extensions.policy),["mode","trust_mode","pm_max_version_exceeded_mode","require_provenance","trusted_extensions","default_sandbox_profile","allowed_extensions","blocked_extensions","allowed_capabilities","blocked_capabilities","allowed_surfaces","blocked_surfaces","allowed_commands","blocked_commands","allowed_actions","blocked_actions","allowed_services","blocked_services","extension_overrides"]),e.extensions.policy.extension_overrides=bc(e.extensions.policy.extension_overrides).map(n=>x(Ae(n),["name","disabled","require_trusted","require_provenance","sandbox_profile","allowed_capabilities","blocked_capabilities","allowed_surfaces","blocked_surfaces","allowed_commands","blocked_commands","allowed_actions","blocked_actions","allowed_services","blocked_services"])),e.search=x(e.search,["score_threshold","hybrid_semantic_weight","max_results","embedding_model","embedding_corpus_max_characters","embedding_batch_size","embedding_timeout_ms","scanner_max_batch_retries","provider","mutation_refresh_policy","query_expansion","rerank"]),e.search.query_expansion=x(Ae(e.search.query_expansion),["enabled","provider"]),e.search.rerank=x(Ae(e.search.rerank),["enabled","model","top_k"]),e.providers=x(e.providers,["openai","ollama"]),e.providers.openai=x(Ae(e.providers.openai),["base_url","api_key","model"]),e.providers.ollama=x(Ae(e.providers.ollama),["base_url","model"]),e.vector_store=x(e.vector_store,["adapter","collection_name","qdrant","lancedb"]),e.vector_store.qdrant=x(Ae(e.vector_store.qdrant),["url","api_key"]),e.vector_store.lancedb=x(Ae(e.vector_store.lancedb),["path"])}function yN(e){return{...e,locks:J(e.locks,S.locks),ids:J(e.ids,S.ids),agent_identity:J(e.agent_identity,S.agent_identity),mutation_guard:J(e.mutation_guard,S.mutation_guard),checkpoints:J(e.checkpoints,S.checkpoints),output:J(e.output,S.output),history:J(e.history,S.history),validation:J(e.validation,S.validation),workflow:J(e.workflow,S.workflow),testing:J(e.testing,S.testing),telemetry:J(e.telemetry,S.telemetry),agent_guidance:J(e.agent_guidance,S.agent_guidance),item_types:J(e.item_types,S.item_types),schema:J(e.schema,S.schema),context:J(e.context,S.context),extensions:J(e.extensions,S.extensions),search:J(e.search,S.search),providers:J(e.providers,S.providers),vector_store:J(e.vector_store,S.vector_store)}}function hN(e,t){return{...e.validation,parent_reference:t.parent_reference,metadata_profile:t.metadata_profile,metadata_required_fields:n_(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:xt(e.validation?.lifecycle_stale_blocker_reason_patterns??S.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:xt(e.validation?.lifecycle_closure_like_blocked_reason_patterns??S.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:xt(e.validation?.lifecycle_closure_like_resolution_patterns??S.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:xt(e.validation?.lifecycle_closure_like_actual_result_patterns??S.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:mc(e.validation?.estimate_defaults_by_type)}}function bN(e){return{...S.search,...e.search,mutation_refresh_policy:Hg(e.search?.mutation_refresh_policy),query_expansion:{...S.search.query_expansion,...e.search?.query_expansion,enabled:Wg(e.search?.query_expansion?.enabled),provider:Kg(e.search?.query_expansion?.provider)},rerank:{...S.search.rerank,...e.search?.rerank,enabled:Yg(e.search?.rerank?.enabled),model:Xg(e.search?.rerank?.model),top_k:Jg(e.search?.rerank?.top_k)}}}function wN(e){return{default_depth:e.context?.default_depth??S.context.default_depth,activity_limit:e.context?.activity_limit??S.context.activity_limit,stale_threshold_days:e.context?.stale_threshold_days??S.context.stale_threshold_days,sections:{...S.context.sections,...e.context?.sections}}}function EN(e){return{...e.vector_store,adapter:e.vector_store?.adapter??S.vector_store.adapter,collection_name:Qg(e.vector_store?.collection_name),qdrant:{...e.vector_store?.qdrant},lancedb:{...e.vector_store?.lancedb}}}function TN(e,t,n,r){return{...e,item_format:"toon",validation:hN(e,t),governance:t,agent_guidance:Zg(e.agent_guidance),item_types:{definitions:r.item_type_definitions},schema:{...n,statuses:r.schema_statuses,fields:r.schema_fields,type_workflows:r.schema_type_workflows},search:bN(e),context:wN(e),extensions:{enabled:hc(e.extensions?.enabled),disabled:hc(e.extensions?.disabled),policy:t_(e.extensions?.policy)},vector_store:EN(e)}}function o_(e,t,n){let r=new Set([...Object.keys(t),...Object.keys(n)]);for(let o of r){let i=t[o],s=n[o];if(!re(i,s)){if(s===void 0){delete e[o];continue}if(typeof i=="object"&&i!==null&&!Array.isArray(i)&&typeof s=="object"&&s!==null&&!Array.isArray(s)){let a=e[o],l=typeof a=="object"&&a!==null&&!Array.isArray(a)?a:{};o_(l,i,s),Object.keys(l).length>0?e[o]=l:delete e[o];continue}e[o]=structuredClone(s)}}}var i_=["version","id_prefix","ids","author_default","agent_identity","mutation_guard","item_format","locks","checkpoints","output","history","validation","governance","workflow","testing","telemetry","agent_guidance","item_types","schema","context","extensions","search","providers","vector_store"];function Gg(e,t){let n=yN(e),r=qi(n),o=Ge(n.schema),i=nN(n,t),s=TN(n,r,o,i),a=x({...s,governance:KR(r)},i_);return _N(a),a}function vN(e,t={}){let n=Gg(e,t.persist_source);if(t.persist_source){let r=r_(t.persist_source.source_settings);r.item_types={definitions:structuredClone(t.persist_source.runtime_item_type_definitions)},r.schema={...r.schema,statuses:structuredClone(t.persist_source.runtime_schema_statuses),fields:structuredClone(t.persist_source.runtime_schema_fields),type_workflows:structuredClone(t.persist_source.runtime_schema_type_workflows)};let o=Gg(r,t.persist_source),i=structuredClone(t.persist_source.source_settings);return o_(i,o,n),`${JSON.stringify(x(i,i_),null,2)}
|
|
83
|
+
`}return`${JSON.stringify(n,null,2)}
|
|
84
|
+
`}async function Ct(e){let t=ye(e),n=[t];await $e({path:t,scope:"project"});let r=jg(e);if(r){let c=await St(r.tracked_paths);if(Ur(c,r.signatures))return zi(r.value)}let o=await St([t]),i;try{i=await W(t)}catch{return zr("settings_read_fs_error")}if(i===null){let c=zr();return await _c(e,[t],c,o,[t]),c}let s=await St([t]);if(!Ur(o,s))return kt(e),Ct(e);let a;try{a=JSON.parse(i)}catch{let c=zr("settings_read_invalid_json");return await _c(e,[t],c,s,[t]),c}let l=Lg(a);if(!l.success){let c=zr("settings_read_invalid_schema");return await _c(e,[t],c,s,[t]),c}try{let c=r_(l.data),d=QR(e,c.schema,t);n=d;let u=await St(d),p=await mp(e,c.schema),f=await gp(e,c.schema),y=await St(d),g={...c,item_types:{definitions:qn([...c.item_types.definitions,...bc(f.type_definitions_from_file)])},schema:f.schema};wc(g,XR(l.data,g));let h={settings:g,metadata:{has_explicit_item_format:rN(a)},warnings:[...l.data.item_format==="json_markdown"?["settings_item_format_legacy_json_markdown_coerced_to_toon"]:[],...p.created_paths.map(E=>`runtime_schema_bootstrap_created:${E}`),...f.warnings]};return p.created_paths.length===0?Ur(u,y)?Ui(e,{tracked_paths:d,signatures:y,value:zi(h)}):kt(e):kt(e),h}catch{let c=zr("settings_read_merge_failed");return await eN(e,n,c),c}}async function He(e){return(await Ct(e)).settings}async function qr(e,t,n=VR){let r=ye(e),o=vN(t,{persist_source:Ec(t)});try{await sc({pmRoot:e,filePath:r,raw:o,op:n,author:Rr(void 0,t.author_default),lockTtlSeconds:t.locks.ttl_seconds,lockWaitMs:t.locks.wait_ms,recordCreation:!1}),await le({path:r,scope:"project",op:n})}finally{kt(e)}}import{spawnSync as a_}from"node:child_process";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="12bfc6e7-8979-58e8-8276-98cc859f3e32")}catch{}})();var AN="PM_DISABLE_OLLAMA_AUTO_DEFAULTS",SN="PM_OLLAMA_MODEL",kN="http://localhost:11434",xN="qwen3-embedding:0.6b",CN=".agents/pm/search/lancedb/",ON=1500,IN=2500,RN=/qwen.*(?:embed|embedding)|(?:embed|embedding).*qwen/i,NN=/embed|embedding/i,We=L;function DN(){let e=We(process.env[AN]);if(!e)return!1;let t=e.toLowerCase();return t==="1"||t==="true"||t==="yes"}function s_(e){return e.some(t=>We(t)!==null)}function LN(e){let t=We(e);return!!(t&&t.toLowerCase()!=="ollama")}function PN(e){let t=We(e);return!!(t&&t.toLowerCase()!=="lancedb")}function MN(e){return LN(e.search?.provider)||PN(e.vector_store?.adapter)||s_([e.providers?.openai?.base_url,e.providers?.openai?.model,e.providers?.openai?.api_key])?!0:s_([e.vector_store?.qdrant?.url,e.vector_store?.qdrant?.api_key])}function FN(){let e=a_("ollama",["--version"],{encoding:"utf8",timeout:ON});return e.error?!1:e.status===0}function $N(e){let t=e.split(/\r?\n/).map(i=>i.trim()).filter(i=>i.length>0);if(t.length===0)return null;let n=t.map(i=>i.split(/\s+/)[0]?.trim()).filter(i=>!!(i&&i.length>0)).filter(i=>i.toUpperCase()!=="NAME");if(n.length===0)return null;let r=n.find(i=>RN.test(i));return r||(n.find(i=>NN.test(i))??null)}function jN(e){let t=We(e.providers?.ollama?.model);if(t)return t;let n=We(process.env[SN]);if(n)return n;let r=a_("ollama",["list"],{encoding:"utf8",timeout:IN});if(!r.error&&r.status===0){let o=$N(typeof r.stdout=="string"?r.stdout:"");if(o)return o}return null}function UN(e){return{baseUrl:We(e.providers?.ollama?.base_url)===null,model:We(e.providers?.ollama?.model)===null,lancedbPath:We(e.vector_store?.lancedb?.path)===null,embeddingModel:We(e.search?.embedding_model)===null}}function zN(e){return e.baseUrl||e.model||e.lancedbPath||e.embeddingModel}function qN(e,t,n){if(!t.baseUrl&&!t.model)return;let r=e.providers??={},o=r.ollama??={};t.baseUrl&&(o.base_url=kN),t.model&&(o.model=n)}function GN(e,t){if(!t.lancedbPath)return;let n=e.vector_store??={},r=n.lancedb??={};r.path=CN}function VN(e,t,n){if(!t.embeddingModel)return;let r=e.search??={};r.embedding_model=n}function Gn(e){let t={settings:e,auto_ollama_defaults_applied:!1};if(DN()||MN(e))return t;let n=UN(e);if(!zN(n)||n.model&&!FN())return t;let r=structuredClone(e),o=jN(r);return o?(qN(r,n,o),GN(r,n),VN(r,n,o),{settings:r,auto_ollama_defaults_applied:!0}):{...t,auto_ollama_defaults_skipped_reason:"no_installed_embedding_model",auto_ollama_defaults_remediation:`Run ollama pull ${xN} or configure providers.ollama.model explicitly (and search.embedding_model if you need an override).`}}import{spawn as BN}from"node:child_process";import{mkdirSync as l_,rmSync as d_,statSync as HN}from"node:fs";import Gi 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]="d8d5f7e9-5293-564b-bc44-f5ba30336893")}catch{}})();var u_="reindex",WN="search/pending-refresh.json",KN="search/pending-refresh.gate.lock",YN=3e4,XN="PM_SEARCH_REFRESH_INLINE",f_="PM_SEARCH_REFRESH_CHILD",JN=3e4;function c_(e){if(typeof e!="string")return!1;let t=e.trim().toLowerCase();return t==="1"||t==="true"||t==="yes"||t==="on"}function vc(){if(c_(process.env[XN])||c_(process.env[f_]))return!0;let e=(process.env.NODE_ENV??"").trim().toLowerCase();return typeof process.env.VITEST=="string"||typeof process.env.VITEST_WORKER_ID=="string"||e==="test"}function p_(e){return Gi.join(e,WN)}function m_(e){return Gi.join(e,KN)}function QN(e){let t=m_(e);try{if(Date.now()-HN(t).mtimeMs<YN)return!1;d_(t,{recursive:!0,force:!0})}catch{}try{return l_(Gi.dirname(t),{recursive:!0}),l_(t),!0}catch{return!1}}function ZN(e){try{d_(m_(e),{recursive:!0,force:!0})}catch{}}async function g_(e,t,n){for(let r=0;r<50;r+=1){if(QN(e))try{return await t()}finally{ZN(e)}await e0(20)}return n}function e0(e){return new Promise(t=>{setTimeout(t,e)})}async function Ac(e){let t=await W(p_(e));if(!t||t.trim().length===0)return[];try{let n=JSON.parse(t);return Array.isArray(n.ids)?n.ids.filter(r=>typeof r=="string"&&r.length>0):[]}catch{return[]}}async function __(e,t){await P(p_(e),`${JSON.stringify({ids:t})}
|
|
85
|
+
`)}async function Tc(e,t){let n=t.filter(i=>typeof i=="string"&&i.trim().length>0);if(n.length===0)return;let r=async()=>{let i=await Ac(e),s=[...new Set([...i,...n])].sort((a,l)=>a.localeCompare(l));await __(e,s)};await g_(e,async()=>(await r(),!0),!1)||await r()}async function t0(e){return g_(e,async()=>{let t=await Ac(e);return t.length>0&&await __(e,[]),t},[])}function n0(){return Gi.join(nt(import.meta.url,["../../.."]),"dist","cli","search-refresh.js")}function Sc(e){try{let t=BN(process.execPath,[n0()],{detached:!0,stdio:"ignore",env:{...process.env,PM_PATH:e,[f_]:"1"}});t.on("error",()=>{}),t.unref()}catch{}}function r0(e){setTimeout(()=>Sc(e),JN)}async function y_(e,t){await Tc(e,t),Sc(e)}async function F2(e,t,n=r0){let r=[],o=[];if(!await Y(e))return{processed:o,rounds:0,warnings:r};let i;try{let u=await Ct(e),p=u.warnings.find(f=>f.startsWith("settings_read_"));if(p)return n(e),{processed:o,rounds:0,warnings:[`search_background_refresh_settings_read_failed:${p}`]};i=Gn(u.settings).settings}catch(u){return n(e),{processed:o,rounds:0,warnings:[`search_background_refresh_settings_read_failed:${$(u)}`]}}let s=null;try{s=await Re(e,u_,i.locks.ttl_seconds,Rr(void 0,"pm-search-refresh"),!1,i.governance.force_required_for_stale_lock,i.locks.wait_ms)}catch{}if(!s)return{processed:o,rounds:0,warnings:r};let a=0,l=!1,c=!1;try{for(;;){let u=await t0(e);if(u.length===0)break;a+=1;try{let p=await t(e,u);if(r.push(...p.warnings),p.warnings.some(f=>f.startsWith("search_semantic_refresh_skipped:settings_read_failed:"))){await Tc(e,u),l=!0,c=!0;break}o.push(...p.refreshed)}catch(p){r.push(`search_background_refresh_failed:${$(p)}`),await Tc(e,u),l=!0;break}}}finally{await s?.()}return c&&n(e),(l?[]:await Ac(e)).length>0&&Sc(e),{processed:[...new Set(o)].sort((u,p)=>u.localeCompare(p)),rounds:a,warnings:r}}import sn from"node:fs/promises";import b_ from"node:path";import{randomUUID as o0}from"node:crypto";import{createRequire as i0}from"node:module";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e94075b0-810d-506c-b6a2-ae322526c078")}catch{}})();var s0="metadata-query-index.sqlite",Gr="4";function a0(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}var Vi;function l0(e,t){let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=22?a0(t):null}function Vr(){return Vi!==void 0||(Vi=l0(process.versions.node,i0(import.meta.url))),Vi}function h_(e,t){return Math.max(0,Math.floor(e===void 0?t:e))}function Vn(e){return b_.join(e,"runtime",s0)}function c0(e){e.exec(`
|
|
86
|
+
PRAGMA foreign_keys = ON;
|
|
87
|
+
PRAGMA journal_mode = OFF;
|
|
88
|
+
PRAGMA synchronous = OFF;
|
|
89
|
+
CREATE TABLE metadata (
|
|
90
|
+
key TEXT PRIMARY KEY,
|
|
91
|
+
value TEXT NOT NULL
|
|
92
|
+
) STRICT;
|
|
93
|
+
CREATE TABLE items (
|
|
94
|
+
id TEXT PRIMARY KEY,
|
|
95
|
+
relative_path TEXT NOT NULL UNIQUE,
|
|
96
|
+
metadata_json TEXT NOT NULL,
|
|
97
|
+
status TEXT NOT NULL,
|
|
98
|
+
type TEXT NOT NULL,
|
|
99
|
+
priority INTEGER NOT NULL,
|
|
100
|
+
updated_at TEXT NOT NULL,
|
|
101
|
+
created_at TEXT NOT NULL,
|
|
102
|
+
parent TEXT,
|
|
103
|
+
assignee TEXT,
|
|
104
|
+
sprint TEXT,
|
|
105
|
+
release TEXT
|
|
106
|
+
) STRICT;
|
|
107
|
+
CREATE INDEX items_default_order
|
|
108
|
+
ON items(priority, updated_at DESC, id);
|
|
109
|
+
CREATE INDEX items_status_default_order
|
|
110
|
+
ON items(status, priority, updated_at DESC, id);
|
|
111
|
+
CREATE INDEX items_type_default_order
|
|
112
|
+
ON items(type, priority, updated_at DESC, id);
|
|
113
|
+
CREATE INDEX items_parent_default_order
|
|
114
|
+
ON items(parent, priority, updated_at DESC, id);
|
|
115
|
+
CREATE TABLE item_metadata_keys (
|
|
116
|
+
item_id TEXT NOT NULL,
|
|
117
|
+
key TEXT NOT NULL,
|
|
118
|
+
PRIMARY KEY(item_id, key),
|
|
119
|
+
FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
|
|
120
|
+
) STRICT;
|
|
121
|
+
CREATE INDEX item_metadata_keys_key_item
|
|
122
|
+
ON item_metadata_keys(key, item_id);
|
|
123
|
+
CREATE TABLE item_linked_files (
|
|
124
|
+
item_id TEXT NOT NULL,
|
|
125
|
+
path TEXT NOT NULL,
|
|
126
|
+
scope TEXT NOT NULL,
|
|
127
|
+
note TEXT,
|
|
128
|
+
PRIMARY KEY(item_id, path, scope),
|
|
129
|
+
FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
|
|
130
|
+
) STRICT;
|
|
131
|
+
CREATE INDEX item_linked_files_path_scope_item
|
|
132
|
+
ON item_linked_files(path, scope, item_id);
|
|
133
|
+
CREATE VIRTUAL TABLE item_search USING fts5(
|
|
134
|
+
id UNINDEXED,
|
|
135
|
+
title,
|
|
136
|
+
description,
|
|
137
|
+
tags,
|
|
138
|
+
tokenize = 'unicode61'
|
|
139
|
+
);
|
|
140
|
+
`)}function Hi(e,t,n){e.prepare("INSERT INTO metadata(key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value").run(t,n)}function w_(e,t){let n=t.metadata;e.prepare(`INSERT INTO items(
|
|
141
|
+
id, relative_path, metadata_json, status, type, priority,
|
|
142
|
+
updated_at, created_at, parent, assignee, sprint, release
|
|
143
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
144
|
+
ON CONFLICT(id) DO UPDATE SET
|
|
145
|
+
relative_path = excluded.relative_path,
|
|
146
|
+
metadata_json = excluded.metadata_json,
|
|
147
|
+
status = excluded.status,
|
|
148
|
+
type = excluded.type,
|
|
149
|
+
priority = excluded.priority,
|
|
150
|
+
updated_at = excluded.updated_at,
|
|
151
|
+
created_at = excluded.created_at,
|
|
152
|
+
parent = excluded.parent,
|
|
153
|
+
assignee = excluded.assignee,
|
|
154
|
+
sprint = excluded.sprint,
|
|
155
|
+
release = excluded.release`).run(n.id,t.relativePath,JSON.stringify(n),n.status,n.type,n.priority,n.updated_at,n.created_at,n.parent??null,n.assignee??null,n.sprint??null,n.release??null),e.prepare("DELETE FROM item_metadata_keys WHERE item_id = ?").run(n.id),e.prepare("DELETE FROM item_linked_files WHERE item_id = ?").run(n.id),e.prepare("DELETE FROM item_search WHERE id = ?").run(n.id),e.prepare("INSERT INTO item_search(id, title, description, tags) VALUES (?, ?, ?, ?)").run(n.id,n.title,n.description,n.tags.join(" "));let r=e.prepare("INSERT INTO item_metadata_keys(item_id, key) VALUES (?, ?)");for(let i of Object.keys(n))r.run(n.id,i);let o=e.prepare("INSERT INTO item_linked_files(item_id, path, scope, note) VALUES (?, ?, ?, ?)");for(let i of t.linkedFiles??[])o.run(n.id,i.path,i.scope,i.note??null)}async function E_(e){let t=Vn(e.pmRoot),n=Vr();if(!n){await sn.rm(t,{force:!0});return}await sn.mkdir(b_.dirname(t),{recursive:!0});let r=`${t}.${o0()}.tmp`,o;try{o=new n(r),c0(o),o.exec("BEGIN IMMEDIATE"),Hi(o,"version",Gr),Hi(o,"context_fingerprint",e.contextFingerprint),Hi(o,"source_cursor",e.sourceCursor);for(let i of e.rows)w_(o,i);o.exec("COMMIT"),o.close(),o=void 0,await sn.rm(t,{force:!0}),await sn.rename(r,t)}catch(i){throw o?.close(),await Promise.allSettled([sn.rm(r,{force:!0})]),i}}function Wi(e){return Object.fromEntries(e.prepare("SELECT key, value FROM metadata").all().map(t=>[String(t.key),String(t.value)]))}async function T_(e){let t=Vn(e.pmRoot),n;try{await sn.access(t);let r=Vr();if(!r)return!1;n=new r(t),n.exec("PRAGMA foreign_keys = ON");let o=Wi(n);if(o.version!==Gr||o.context_fingerprint!==e.contextFingerprint||o.source_cursor!==e.expectedSourceCursor)return n.close(),!1;n.exec("BEGIN IMMEDIATE");let i=n.prepare("DELETE FROM items WHERE relative_path = ?"),s=n.prepare("SELECT id FROM items WHERE relative_path = ?"),a=n.prepare("DELETE FROM item_search WHERE id = ?");for(let l of e.deletedRelativePaths??[]){let c=s.get(l);i.run(l),c&&a.run(c.id)}return e.row&&w_(n,e.row),Hi(n,"source_cursor",e.sourceCursor),n.exec("COMMIT"),n.close(),!0}catch{try{n?.exec("ROLLBACK")}catch{}return n?.close(),!1}}function Bi(e,t,n,r,o){!r||r.length===0||(e.push(`${n} ${o} (${r.map(()=>"?").join(", ")})`),t.push(...r))}function d0(e){let t=[],n=[];Bi(t,n,"status",e.statuses,"IN"),Bi(t,n,"status",e.excludeStatuses,"NOT IN"),Bi(t,n,"type",e.types,"IN"),Bi(t,n,"id",e.ids,"IN");for(let r of e.metadataKeys??[])t.push("EXISTS (SELECT 1 FROM item_metadata_keys AS indexed_key WHERE indexed_key.item_id = items.id AND indexed_key.key = ?)"),n.push(r);for(let[r,o]of[["parent",e.parent],["assignee",e.assignee],["sprint",e.sprint],["release",e.release]])o!==void 0&&(t.push(`${r} = ?`),n.push(o));return e.priority!==void 0&&(t.push("priority = ?"),n.push(e.priority)),{where:t.length===0?"":` WHERE ${t.join(" AND ")}`,parameters:n}}async function u0(e){let t=Vr();if(!t)return null;let n=e.query??{},{where:r,parameters:o}=d0(n),i;try{i=new t(Vn(e.pmRoot),{readOnly:!0});let s=Wi(i);if(s.version!==Gr||s.source_cursor!==e.expectedSourceCursor)return i.close(),null;let a=i.prepare(`SELECT COUNT(*) AS count FROM items${r}`).get(...o),l=[],c="";n.limit!==void 0?(c+=" LIMIT ?",l.push(Math.max(0,Math.floor(n.limit))),n.offset!==void 0&&(c+=" OFFSET ?",l.push(Math.max(0,Math.floor(n.offset))))):n.offset!==void 0&&(c+=" LIMIT -1 OFFSET ?",l.push(Math.max(0,Math.floor(n.offset))));let u=i.prepare(`SELECT metadata_json FROM items${r}
|
|
156
|
+
ORDER BY ${n.terminalStatuses&&n.terminalStatuses.length>0?`CASE WHEN status IN (${n.terminalStatuses.map(()=>"?").join(", ")}) THEN 1 ELSE 0 END ASC, `:""}priority ASC, updated_at DESC, id ASC${c}`).all(...o,...n.terminalStatuses??[],...l).map(p=>{let f=JSON.parse(String(p.metadata_json));if(!f.id)throw new TypeError("Indexed metadata row has no id");return f});return i.close(),{source_cursor:s.source_cursor,total:Number(a.count),items:u}}catch{return i?.close(),null}}async function f0(e){let t=Vr();if(!t||e.paths.length===0)return null;let n;try{n=new t(Vn(e.pmRoot),{readOnly:!0});let r=Wi(n);if(r.version!==Gr||r.source_cursor!==e.expectedSourceCursor)return n.close(),null;let o=e.paths.map(()=>"?").join(", "),i=e.scope===void 0?"":" AND scope = ?",s=[...e.paths,...e.scope===void 0?[]:[e.scope]],a=`path IN (${o})${i}`,l=n.prepare(`SELECT COUNT(DISTINCT item_id) AS count
|
|
157
|
+
FROM item_linked_files
|
|
158
|
+
WHERE ${a}`).get(...s),c=h_(e.limit,50),d=h_(e.offset,0),u=n.prepare(`SELECT items.id, items.metadata_json
|
|
159
|
+
FROM items
|
|
160
|
+
WHERE EXISTS (
|
|
161
|
+
SELECT 1 FROM item_linked_files
|
|
162
|
+
WHERE item_linked_files.item_id = items.id AND ${a}
|
|
163
|
+
)
|
|
164
|
+
ORDER BY items.priority ASC, items.updated_at DESC, items.id ASC
|
|
165
|
+
LIMIT ? OFFSET ?`).all(...s,c,d),p=[];if(u.length>0){let f=u.map(h=>String(h.id)),y=n.prepare(`SELECT item_id, path, scope, note
|
|
166
|
+
FROM item_linked_files
|
|
167
|
+
WHERE item_id IN (${f.map(()=>"?").join(", ")})
|
|
168
|
+
AND ${a}
|
|
169
|
+
ORDER BY path ASC, scope ASC`).all(...f,...s),g=new Map(f.map(h=>[h,[]]));for(let h of y){let E=String(h.item_id),O=g.get(E);O.push({path:String(h.path),scope:String(h.scope),...h.note===null?{}:{note:String(h.note)}}),g.set(E,O)}for(let h of u){let E=JSON.parse(String(h.metadata_json));p.push({item:E,files:g.get(String(h.id))})}}return n.close(),{source_cursor:r.source_cursor,total:Number(l.count),matches:p}}catch{return n?.close(),null}}async function p0(e){let t=Vr();if(!t)return null;let n;try{n=new t(Vn(e.pmRoot),{readOnly:!0});let r=Wi(n);if(r.version!==Gr||r.source_cursor!==e.expectedSourceCursor)return n.close(),null;let i=n.prepare(`SELECT items.metadata_json
|
|
170
|
+
FROM item_search
|
|
171
|
+
JOIN items ON items.id = item_search.id
|
|
172
|
+
WHERE item_search MATCH ?
|
|
173
|
+
ORDER BY bm25(item_search), items.priority, items.updated_at DESC, items.id
|
|
174
|
+
LIMIT ?`).all(e.query,Math.max(0,Math.floor(e.limit))).map(s=>JSON.parse(String(s.metadata_json)));return n.close(),{source_cursor:r.source_cursor,items:i}}catch{return n?.close(),null}}async function Ki(e){await sn.rm(Vn(e),{force:!0})}import oe from"node:fs/promises";import B from"node:path";import{createHash as m0,randomUUID as x_}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8ed70856-9cba-599d-8b53-21a981af1f40")}catch{}})();var Ke=8,xc=500,g0="metadata-derived-index",_0="metadata-cache.json",y0="metadata-cache-bodies.json",h0="metadata-cache-collections.json",b0="metadata-cache-delta.json",w0="metadata-cache-manifest.json",v_=4,E0=["comments","notes","learnings","files","tests","test_runs","docs"];function C_(){return Tr(bt())}function Xi(e){let t={...e},n={};for(let r of E0)r in t&&(n[r]=t[r],delete t[r]);return{light:t,heavy:n}}function O_(e,t){return!t||Object.keys(t).length===0?e:{...e,...t}}function I_(e,t,n,r){let o=m0("sha256");o.update(`format:${e??"default"}`);let i=Object.entries(t).sort(([s],[a])=>s.localeCompare(a)).map(([s,a])=>`${s}=${a}`).join(",");return o.update(`|types:${i}`),n&&o.update(`|schema:${JSON.stringify(n)}`),r.length>0&&o.update(`|extension_fields:${r.join(",")}`),o.digest("hex").slice(0,16)}function Ji(e){return B.join(e,"runtime",_0)}function Qi(e){return B.join(e,"runtime",y0)}function Zi(e){return B.join(e,"runtime",h0)}function Cc(e){return B.join(e,"runtime",b0)}function Oc(e){return B.join(e,"runtime",w0)}function es(e,t){let n=B.extname(e);return`${e.slice(0,-n.length)}.${t}${n}`}var T0=24,Ne=new Map,ts=new WeakMap;function Ic(e){return ts.get(e)??e.source_cursor}function v0(e,t){let n=Ic(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){ts.set(e,n);for(let[r,o]of Object.entries(t.changes))o.entry?e.entries[r]=o.entry:delete e.entries[r];e.directory_signatures=t.directory_signatures,e.source_cursor=t.source_cursor}}function A0(e,t){if(!e)return;let n=Ic(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){ts.set(e,n);for(let[r,o]of Object.entries(t.changes))o.body?e.bodies[r]=o.body:delete e.bodies[r];e.source_cursor=t.source_cursor}}function S0(e,t){if(!e)return;let n=Ic(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){ts.set(e,n);for(let[r,o]of Object.entries(t.changes))o.collections?e.collections[r]=o.collections:delete e.collections[r];e.source_cursor=t.source_cursor}}function k0(e,t,n,r){!e||!r||e.context_fingerprint!==r.context_fingerprint||(v0(e,r),A0(t,r),S0(n,r))}function kc(e,t){Ne.size>=T0&&!Ne.has(e)&&gn(Ne),Ne.set(e,t)}async function Ot(e,t){let n;try{n=await oe.stat(e)}catch{return Ne.delete(e),null}let r=Ne.get(e);if(r&&Br(r.signature,n.mtimeMs,n.ctimeMs,n.size))return Ne.delete(e),Ne.set(e,r),r.envelope;let o;try{o=t(await oe.readFile(e,"utf8"))}catch{o=null}return kc(e,{signature:{mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size},envelope:o}),o}async function x0(e,t,n){let r=a=>{let l=JSON.parse(a);return l.version!==Ke||typeof l.source_cursor!="string"||typeof l.entries!="object"||l.entries===null?null:l},o=Ji(e),i=await Ot(o,r);if(!t||i===null||i.context_fingerprint===t)return i;let s=await Ot(es(o,t),r);return s===null&&Kr(n,`metadata_cache_context_changed:${i.context_fingerprint}->${t}`),s}async function C0(e,t){let n=i=>{let s=JSON.parse(i);return s.version!==Ke||typeof s.source_cursor!="string"||typeof s.bodies!="object"||s.bodies===null?null:s},r=Qi(e),o=await Ot(r,n);return t&&o?.context_fingerprint!==t?await Ot(es(r,t),n):o}async function O0(e,t){let n=i=>{let s=JSON.parse(i);return s.version!==Ke||typeof s.source_cursor!="string"||typeof s.collections!="object"||s.collections===null?null:s},r=Zi(e),o=await Ot(r,n);return t&&o?.context_fingerprint!==t?await Ot(es(r,t),n):o}async function Rc(e){let t=Cc(e),n=await Ot(t,r=>{let o=JSON.parse(r);return o.version!==Ke||typeof o.base_source_cursor!="string"||typeof o.source_cursor!="string"||typeof o.changes!="object"||o.changes===null?null:o});if(n)return{envelope:n,invalid:!1};try{return await oe.stat(t),{envelope:null,invalid:!0}}catch{return{envelope:null,invalid:!1}}}async function Nc(e){let t=Oc(e),n=await Ot(t,r=>{let o=JSON.parse(r);return o.version!==Ke||typeof o.context_fingerprint!="string"||typeof o.source_cursor!="string"||!Number.isInteger(o.entry_count)||o.entry_count<0||typeof o.directory_signatures!="object"||o.directory_signatures===null?null:o});if(n)return n;try{await oe.stat(t),await Bn(e)}catch{}return null}async function Hr(e,t){await oe.mkdir(B.dirname(e),{recursive:!0}),await P(e,JSON.stringify(t));try{let r=await oe.stat(e);kc(e,{signature:{mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size},envelope:t})}catch{Ne.delete(e)}let n=B.dirname(B.dirname(e));if(e===Ji(n)||e===Qi(n)||e===Zi(n)){let r=es(e,t.context_fingerprint);await P(r,JSON.stringify(t));try{let l=await oe.stat(r);kc(r,{signature:{mtime_ms:l.mtimeMs,ctime_ms:l.ctimeMs,size:l.size},envelope:t})}catch{Ne.delete(r)}let o=B.dirname(e),i=B.extname(e),s=B.basename(e,i),a=(await oe.readdir(o,{withFileTypes:!0}).catch(()=>[])).filter(l=>l.isFile()&&l.name!==B.basename(e)&&l.name.startsWith(`${s}.`)&&l.name.endsWith(i)).map(l=>B.join(o,l.name));if(a.length>v_){let l=(await Promise.all(a.map(async c=>{try{return{path:c,mtime:(await oe.stat(c)).mtimeMs}}catch{return null}}))).filter(c=>c!==null);for(let c of l.sort((d,u)=>d.mtime-u.mtime).slice(0,Math.max(0,l.length-v_)))await oe.rm(c.path,{force:!0}),Ne.delete(c.path)}}}function I0(e,t,n){return n?t===n&&e!==n:t==="toon"&&e!=="toon"}function R_(e,t,n){return e===void 0||I0(e,t,n)}function Kr(e,t){e&&!e.includes(t)&&e.push(t)}function Br(e,t,n,r){return e.mtime_ms===t&&e.ctime_ms===n&&e.size===r}async function R0(e,t,n){let r=B.join(e,t);try{let o=await oe.readdir(r);return{folder:t,dirPath:r,files:o}}catch(o){return typeof o=="object"&&o!==null&&"code"in o&&o.code!=="ENOENT"&&Kr(n,`item_list_directory_read_failed:${t}`),{folder:t,dirPath:r,files:[]}}}async function N0(e,t){try{let n=await oe.stat(B.join(e,t));return[t,{exists:!0,mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size}]}catch{return[t,{exists:!1,mtime_ms:0,ctime_ms:0,size:0}]}}async function Yi(e,t){return Object.fromEntries(await Promise.all(t.map(async n=>await N0(e,n))))}function Wr(e,t){return!e||Object.keys(e).length!==Object.keys(t).length?!1:Object.entries(t).every(([n,r])=>{let o=e[n];return o!==void 0&&o.exists===r.exists&&Br(o,r.mtime_ms,r.ctime_ms,r.size)})}function D0(e){return Ro.some(t=>e.toLowerCase().endsWith(t))}function L0(e,t,n,r,o,i){r||(e.metadata=!0),t&&!o&&(e.body=!0),n&&!i&&(e.collections=!0)}async function P0(e,t,n){if(n)for(let r of await $e({path:e,scope:"project"}))Kr(t,r)}function A_(e,t,n,r){if(e)return t&&n?n.collections:r}async function M0(e,t,n){let r=await oe.stat(e),o=r.mtimeMs,i=r.ctimeMs,{size:s}=r,a=dr(e);await P0(e,n.warnings,n.dispatchReadHooks);let l=n.previousEntries[t],c=l!==void 0&&Br(l,o,i,s),d=n.previousBodies[t],u=d!==void 0&&Br(d,o,i,s),p=n.previousCollections[t],f=p!==void 0&&Br(p,o,i,s);if(!(!c||n.includeBody&&!u||n.includeCollections&&!f))return{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:l.metadata,heavyMetadata:A_(n.includeCollections,f,p,void 0),bodyLength:l.body_length,body:n.includeBody?d.body:void 0};let g=await oe.readFile(e,"utf8"),h=Yt(g,{format:a,schema:n.schema,extensionFieldNames:n.extensionFieldNames,onWarning:O=>Kr(n.warnings,O)}),E=Xi(h.metadata);return L0(n.state.misses,n.includeBody,n.includeCollections,c,u,f),{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:c?l.metadata:E.light,heavyMetadata:A_(n.includeCollections,f,p,E.heavy),bodyLength:c?l.body_length:h.body.length,body:n.includeBody?h.body:void 0}}function F0(e,t,n,r){n.state.newEntries[t]={mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size,metadata:r.lightMetadata,body_length:r.bodyLength},n.includeBody&&r.body!==void 0&&(n.state.newBodies[t]={mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size,body:r.body}),n.includeCollections&&r.heavyMetadata!==void 0&&(n.state.newCollections[t]={mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size,collections:r.heavyMetadata});let o=n.includeCollections?O_(r.lightMetadata,r.heavyMetadata):r.lightMetadata,i=n.state.documentsById.get(o.id),s={metadata:o,body:r.body,item_format:r.itemFormat,item_path:e};R_(i?.itemFormat,r.itemFormat,n.preferredFormat)&&n.state.documentsById.set(o.id,{candidate:s,itemFormat:r.itemFormat})}async function $0(e,t,n,r){try{let o=await M0(t,n,r);F0(t,n,r,o)}catch{Kr(r.warnings,`item_list_item_read_failed:${e}/${B.basename(t)}`)}}function j0(e,t){return e&&e.context_fingerprint===t?e.entries:{}}function U0(e,t){return e&&e.context_fingerprint===t?e.bodies:{}}function z0(e,t){return e&&e.context_fingerprint===t?e.collections:{}}function q0(){return{newEntries:{},newBodies:{},newCollections:{},documentsById:new Map,misses:{metadata:!1,body:!1,collections:!1}}}function G0(e,t){let n=[];for(let{folder:r,dirPath:o,files:i}of e)for(let s of i){if(!D0(s))continue;let a=B.join(o,s),l=B.relative(t.pmRoot,a);n.push($0(r,a,l,t))}return n}async function V0(e){if(!(!(e.state.misses.metadata||Object.keys(e.previousEntries).length!==Object.keys(e.state.newEntries).length||!Wr(e.existingCache?.directory_signatures,e.directorySignatures))&&e.existingCache!==null&&e.existingCache.context_fingerprint===e.contextFingerprint))try{await Hr(Ji(e.pmRoot),{version:Ke,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,directory_signatures:e.directorySignatures,entries:e.state.newEntries}),await Hr(Oc(e.pmRoot),{version:Ke,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,entry_count:Object.keys(e.state.newEntries).length,directory_signatures:e.directorySignatures});let n=[...e.state.documentsById.values()].map(({candidate:r})=>({relativePath:B.relative(e.pmRoot,r.item_path),metadata:Xi(r.metadata).light,linkedFiles:r.metadata.files??[]}));n.length>=e.minimumIndexedItems?await E_({pmRoot:e.pmRoot,contextFingerprint:e.contextFingerprint,sourceCursor:e.sourceCursor,rows:n}):await Ki(e.pmRoot)}catch{}}async function B0(e){!(e.state.misses.body||Object.keys(e.previousBodies).length!==Object.keys(e.state.newBodies).length)&&e.existingBodyCache!==null&&e.existingBodyCache.context_fingerprint===e.contextFingerprint||await Hr(Qi(e.pmRoot),{version:Ke,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,bodies:e.state.newBodies}).catch(()=>{})}async function H0(e){!(e.state.misses.collections||Object.keys(e.previousCollections).length!==Object.keys(e.state.newCollections).length)&&e.existingCollectionsCache!==null&&e.existingCollectionsCache.context_fingerprint===e.contextFingerprint||await Hr(Zi(e.pmRoot),{version:Ke,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,collections:e.state.newCollections}).catch(()=>{})}async function ns(e,t,n={}){let r=await Nc(e);return n.required!==!0&&(r===null||r.entry_count<xc)?async()=>{}:Re(e,g0,30,t,!1,!1,3e3)}async function W0(e,t){let n=await Nc(e);if(n===null)return null;let r=await Rc(e);if(r.invalid)return await Bn(e),null;let o=r.envelope?.context_fingerprint===n.context_fingerprint&&r.envelope.base_source_cursor===n.source_cursor?r.envelope.source_cursor:n.source_cursor,i=r.envelope?.context_fingerprint===n.context_fingerprint&&r.envelope.base_source_cursor===n.source_cursor?r.envelope.directory_signatures:n.directory_signatures;return t&&!Wr(i,await Yi(e,t))?null:{source_cursor:o,entry_count:n.entry_count}}function S_(e,t){let n=B.relative(e,t);return n===""||n===".."||n.startsWith(`..${B.sep}`)||B.isAbsolute(n)?null:n}async function Bn(e){await Promise.all([Ji(e),Qi(e),Zi(e),Cc(e),Oc(e)].map(async t=>{await oe.rm(t,{force:!0}),Ne.delete(t)})),await Ki(e)}async function K0(e){if(e.mutation.document===null)return{entry:null,body:null,collections:null};let t=await oe.stat(e.mutation.itemPath),n=Xi(e.mutation.document.metadata),r={mtime_ms:t.mtimeMs,ctime_ms:t.ctimeMs,size:t.size};return{entry:{...r,metadata:n.light,body_length:e.mutation.document.body.length},body:{...r,body:e.mutation.document.body},collections:{...r,collections:n.heavy}}}function Y0(e,t,n){return e?.context_fingerprint===t&&e.base_source_cursor===n?structuredClone(e.changes):{}}async function rs(e){let t=S_(e.pmRoot,e.itemPath),n=e.previousItemPath?S_(e.pmRoot,e.previousItemPath):void 0;if(t===null||n===null)return await Bn(e.pmRoot),["metadata_derived_index_path_invalidated"];try{let r=I_(e.preferredFormat,e.typeToFolder,e.schema,C_()),o=await Nc(e.pmRoot);if(o===null||o.context_fingerprint!==r)return[];let i=o.source_cursor,s=await Rc(e.pmRoot);if(s.invalid)return await Bn(e.pmRoot),["metadata_derived_index_refresh_failed"];let a=Y0(s.envelope,r,i),l=s.envelope?.context_fingerprint===r&&s.envelope.base_source_cursor===i?s.envelope.source_cursor:i;n!==void 0&&(a[n]={entry:null,body:null,collections:null}),a[t]=await K0({mutation:e});let c=x_();return await Hr(Cc(e.pmRoot),{version:Ke,context_fingerprint:r,base_source_cursor:i,source_cursor:c,directory_signatures:await Yi(e.pmRoot,[...new Set(Object.values(e.typeToFolder))]),changes:a}),await T_({pmRoot:e.pmRoot,contextFingerprint:r,expectedSourceCursor:l,sourceCursor:c,row:e.document===null?null:{relativePath:t,metadata:Xi(e.document.metadata).light,linkedFiles:e.document.metadata.files},deletedRelativePaths:[...n===void 0?[]:[n],...e.document===null?[t]:[]]})||await Ki(e.pmRoot),[]}catch{return await Bn(e.pmRoot).catch(()=>{}),["metadata_derived_index_refresh_failed"]}}function X0(e){return[...e.documentsById.values()].sort((t,n)=>t.candidate.metadata.id.localeCompare(n.candidate.metadata.id)).map(t=>t.candidate)}function k_(e,t,n){return e?.context_fingerprint===t&&e.source_cursor===n}function J0(e,t,n,r,o){return e.every(i=>(!t||r[i]!==void 0)&&(!n||o[i]!==void 0))}function Q0(e){let t=new Map;for(let[n,r]of Object.entries(e.previousEntries)){let o=dr(n);if(!o)continue;let i=e.includeCollections?O_(r.metadata,e.previousCollections[n]?.collections):r.metadata,s=t.get(i.id);R_(s?.itemFormat,o,e.preferredFormat)&&t.set(i.id,{itemFormat:o,candidate:{metadata:i,body:e.includeBody?e.previousBodies[n]?.body:void 0,item_format:o,item_path:B.join(e.pmRoot,n)}})}return[...t.values()].sort((n,r)=>n.candidate.metadata.id.localeCompare(r.candidate.metadata.id)).map(n=>n.candidate)}function Z0(e){return e.forceSourceScan||Ua()||e.existingCache?.context_fingerprint!==e.contextFingerprint||e.entryKeys.length<e.minimumIndexedItems||!Wr(e.existingCache?.directory_signatures,e.directorySignatures)?!1:[!e.includeBody||k_(e.existingBodyCache,e.contextFingerprint,e.existingCache.source_cursor),!e.includeCollections||k_(e.existingCollectionsCache,e.contextFingerprint,e.existingCache.source_cursor)].every(Boolean)&&J0(e.entryKeys,e.includeBody,e.includeCollections,e.previousBodies,e.previousCollections)}async function Yr(e,t,n,r,o,i={}){let s=i.includeBody!==!1,a=i.includeCollections!==!1,l=C_(),c=I_(t,n,o,l),d=await Rc(e);d.invalid&&await Bn(e);let u=await x0(e,c,i.cacheDiagnostics),p=s?await C0(e,c):null,f=a?await O0(e,c):null;k0(u,p,f,d.envelope);let y=j0(u,c),g=U0(p,c),h=z0(f,c),E=[...new Set(Object.values(n))],O=await Yi(e,E),U=Object.keys(y),z=Math.max(1,Math.floor(i.derivedIndexMinimumItems??xc));if(Z0({forceSourceScan:i.forceSourceScan===!0,contextFingerprint:c,existingCache:u,existingBodyCache:p,existingCollectionsCache:f,directorySignatures:O,entryKeys:U,minimumIndexedItems:z,includeBody:s,includeCollections:a,previousBodies:g,previousCollections:h}))return Q0({pmRoot:e,preferredFormat:t,includeBody:s,includeCollections:a,previousEntries:y,previousBodies:g,previousCollections:h});let ie=await Promise.all(E.map(bw=>R0(e,bw,r))),Le=Ua(),Pe=q0(),Mt={pmRoot:e,preferredFormat:t,warnings:r,schema:o,extensionFieldNames:l,includeBody:s,includeCollections:a,dispatchReadHooks:Le,previousEntries:y,previousBodies:g,previousCollections:h,state:Pe};await Promise.all(G0(ie,Mt));let Ft=await Yi(e,E),$s=Wr(O,Ft)?Ft:{},js=Pe.misses.metadata||Object.keys(y).length!==Object.keys(Pe.newEntries).length||!Wr(u?.directory_signatures,$s)||u===null?x_():u.source_cursor;return await V0({pmRoot:e,contextFingerprint:c,sourceCursor:js,existingCache:u,previousEntries:y,directorySignatures:$s,state:Pe,minimumIndexedItems:z}),s&&await B0({pmRoot:e,contextFingerprint:c,sourceCursor:js,existingBodyCache:p,previousBodies:g,state:Pe}),a&&await H0({pmRoot:e,contextFingerprint:c,sourceCursor:js,existingCollectionsCache:f,previousCollections:h,state:Pe}),X0(Pe)}async function N_(e,t,n,r,o){return(await Yr(e,t,n,r,o,{includeBody:!1})).map(s=>({metadata:s.metadata,body:s.body??""}))}async function D_(e,t,n,r,o){return(await Yr(e,t,n,r,o,{includeBody:!1,includeCollections:!1})).map(s=>({metadata:s.metadata,body:s.body??""}))}import It from"node:fs/promises";import Hn 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]="f43e1170-e797-5a0c-b02e-d31e002ab275")}catch{}})();async function eD(e){try{return await It.access(e),!0}catch{return!1}}function os(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}function tD(e,t){e&&(e.includes(t)||e.push(t))}function L_(e){return e??Tr(bt())}function nD(e){return e==="toon"?["toon","json_markdown"]:e==="json_markdown"?["json_markdown","toon"]:["toon","json_markdown"]}function is(e){return new b(`Tracker root is not a directory at ${e}.`,_.USAGE,{code:"tracker_root_not_directory",reason:"not_a_directory",nextSteps:["Pass the tracker directory itself, usually <workspace>/.agents/pm."]})}async function rD(e){let t=Hn.parse(Hn.resolve(e)).root,n=Hn.dirname(Hn.resolve(e));for(;n!==t;){let r;try{r=await It.stat(n)}catch(o){if(os(o,"ENOTDIR"))throw is(e);if(!os(o,"ENOENT"))throw o;n=Hn.dirname(n);continue}if(!r.isDirectory())throw is(e);break}}async function Dc(e){let t;try{t=await It.stat(e)}catch(n){throw os(n,"ENOENT")?(await rD(e),new b(`Tracker root does not exist at ${e}.`,_.NOT_FOUND,{code:"tracker_root_missing",reason:"missing",nextSteps:["Confirm the tracker root path and retry the SDK read.","Initialize a tracker before enumerating its item metadata."]})):os(n,"ENOTDIR")?is(e):n}if(!t.isDirectory())throw is(e)}async function Xr(e,t,n="pm-",r,o=se){let i=rn(t,n),s=Pi(t),a=i===s?[i]:[i,s],l=Object.entries(o),c=nD(r);for(let d of a)for(let[u]of l)for(let p of c){let f=wn(e,u,d,p,o);if(await eD(f))return{id:d,type:u,itemPath:f,item_format:p}}return null}async function Jr(e,t={}){let n=await It.readFile(e.itemPath,"utf8");await $e({path:e.itemPath,scope:"project"});let r=Yt(n,{format:e.item_format,schema:t.schema,extensionFieldNames:L_(t.extensionFieldNames),onWarning:o=>tD(t.warnings,o)});return{raw:n,document:r}}async function oD(e,t,n=se,r,o){return await Dc(e),(await N_(e,t,n,r,o)).map(s=>s.metadata)}async function iD(e,t,n=se,r,o){return await Dc(e),(await D_(e,t,n,r,o)).map(s=>s.metadata)}async function EB(e,t,n=se,r,o,i={}){return await Dc(e),(await Yr(e,t,n,r,o,{includeBody:!0,forceSourceScan:i.forceSourceScan})).map(a=>({...a.metadata,body:a.body}))}function Lc(e){return{async get(t){let n=await Xr(e.pmRoot,t,e.settings.id_prefix,e.settings.item_format,e.typeToFolder);if(!n)return null;let{document:r}=await Jr(n,{schema:e.settings.schema});return{item:r.metadata,body:r.body}},list:()=>oD(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema)}}async function sD(e,t){let n=new Set(Object.values(t)),r=[];return await Promise.all([...n].map(async o=>{try{let i=await It.readdir(Hn.join(e,o));for(let s of i)for(let a of Ro)if(s.toLowerCase().endsWith(a)){r.push(s.slice(0,-a.length));break}}catch{}})),r}async function aD(e,t,n,r){let o=rn(t,n),i=await sD(e,r);if(i.length===0)return[];let s=Math.max(3,Math.floor(o.length/2));return i.map(l=>({id:l,distance:Fe(l,o,s)})).filter(l=>l.distance!==null).sort((l,c)=>l.distance-c.distance).slice(0,3).map(l=>l.id)}async function P_(e,t,n,r){let o=await aD(e,t,n,r),i=["Confirm the active --path/PM_PATH scope, then retry with a valid id."];return o.length>0&&i.unshift(`Did you mean one of: ${o.join(", ")}?`),new b(`Item ${t} not found`,_.NOT_FOUND,{nextSteps:i})}function lD(e,t){return e==="claim"||t===!0&&(e==="comment_add"||e==="comment_edit"||e==="comment_delete"||e==="note_add"||e==="learning_add"||e==="release"||e==="update"||e==="update_ownership_bypass"||e==="update_audit")}async function M_(e){let t=e.typeToFolder??ar(e.settings,bt()).type_to_folder,n=await Xr(e.pmRoot,e.id,e.settings.id_prefix,e.settings.item_format,t);if(!n)throw await P_(e.pmRoot,e.id,e.settings.id_prefix,t);let r=await Re(e.pmRoot,n.id,e.settings.locks.ttl_seconds,e.author,!!e.force,e.settings.governance.force_required_for_stale_lock,e.settings.locks.wait_ms);try{let o=[],{raw:i,document:s}=await Jr(n,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames,warnings:o}),a=s.metadata.assignee?.trim(),l=s.metadata.claim_principal?.trim()||a,c=Tl(e.author),d=qi(e.settings);if(a&&l!==c&&!e.force&&!lD(e.op,e.bypassAssigneeConflict)){if(d.ownership_enforcement==="strict")throw new b(`Item ${n.id} is assigned to ${a}. Use --force to override.`,_.CONFLICT);d.ownership_enforcement==="warn"&&o.push(`ownership_warning:assignee_conflict:${n.id}:${a}`)}return{typeToFolder:t,located:n,originalRaw:i,document:s,warnings:o,releaseLock:r}}catch(o){throw await r(),o}}function cD(e,t,n){if(!e.handled||typeof e.result!="object"||e.result===null)return{effectiveTargetItemPath:t,effectiveSerializedAfter:n,skipItemWrite:!1};let r=e.result;return{effectiveTargetItemPath:typeof r.target_item_path=="string"&&r.target_item_path.trim().length>0?r.target_item_path:t,effectiveSerializedAfter:typeof r.contents=="string"?r.contents:n,skipItemWrite:r.skip_write===!0}}async function dD(e){if(!e.skipItemWrite){if(e.effectiveTargetItemPath!==e.originalItemPath){await P(e.originalItemPath,e.originalRaw),await It.rm(e.effectiveTargetItemPath,{force:!0});return}await P(e.originalItemPath,e.originalRaw)}}async function uD(e){let t=await M_({pmRoot:e.pmRoot,settings:e.settings,id:e.id,op:e.op,author:e.author,force:e.force,bypassAssigneeConflict:e.bypassAssigneeConflict,extensionFieldNames:e.extensionFieldNames,typeToFolder:e.typeToFolder}),{typeToFolder:n,located:r,originalRaw:o,document:i,warnings:s,releaseLock:a}=t;try{let l=Oe(i,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),c=Oe(structuredClone(i),{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),d=await e.mutate(c);if(e.skipNoop===!0&&d.changedFields.length===0)return{item:l.metadata,body:l.body,changedFields:[],warnings:[...s,...d.warnings??[]]};c.metadata.updated_at=X();let u=Oe(c,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames});await ti({pm_root:e.pmRoot,operation:e.op,before:l,after:u,changed_fields:d.changedFields,sdk:Lc({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:n})});let p=await Li({pmRoot:e.pmRoot,settings:e.settings,itemId:r.id,commandLabel:e.op}),f="toon",y=Or(u,{format:f,schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),g=wn(e.pmRoot,u.metadata.type,r.id,f,n),h=En(e.pmRoot,r.id),E=await Ce("item_store_write",{op:e.op,pm_root:e.pmRoot,item_id:r.id,source_item_path:r.itemPath,target_item_path:g,history_path:h,item_format:f,before:l,after:u,contents:y}),{effectiveTargetItemPath:O,effectiveSerializedAfter:U,skipItemWrite:z}=cD(E,g,y),ie=await ns(e.pmRoot,e.author),Le=[];try{z||await P(O,U),!z&&O!==r.itemPath&&await It.rm(r.itemPath);let Mt=tn({nowIso:u.metadata.updated_at,author:e.author,op:e.op,before:l,after:u,message:e.message});try{await nn(h,Mt)}catch(Ft){throw await dD({skipItemWrite:z,effectiveTargetItemPath:O,originalItemPath:r.itemPath,originalRaw:o}),Ft}z||(Le=await rs({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:n,schema:e.settings.schema,itemPath:O,previousItemPath:r.itemPath,document:u}))}finally{await ie()}let Pe=[...await le({path:O,scope:"project",op:e.op,item_id:u.metadata.id,item_type:u.metadata.type,before:l,after:u,changed_fields:d.changedFields}),...await le({path:h,scope:"project",op:`${e.op}:history`,item_id:u.metadata.id,item_type:u.metadata.type,before:l,after:u,changed_fields:d.changedFields})];return ei({id:u.metadata.id,op:e.op,item_type:u.metadata.type,previous_status:l.metadata.status,status:u.metadata.status,previous:Er(l.metadata,d.changedFields),current:Er(u.metadata,d.changedFields),changed_fields:d.changedFields}),{item:u.metadata,body:u.body,changedFields:d.changedFields,warnings:[...s,...d.warnings??[],...p.warnings,...E.warnings,...Le,...Pe]}}finally{await a()}}async function fD(e){let t=await M_({pmRoot:e.pmRoot,settings:e.settings,id:e.id,op:"delete",author:e.author,force:e.force}),{located:n,originalRaw:r,document:o,warnings:i,releaseLock:s}=t;try{let a=L_(void 0),l=Oe(o,{schema:e.settings.schema,extensionFieldNames:a});await ti({pm_root:e.pmRoot,operation:"delete",before:l,after:null,changed_fields:["deleted"],sdk:Lc({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:t.typeToFolder})});let c=await Li({pmRoot:e.pmRoot,settings:e.settings,itemId:n.id,commandLabel:"delete"}),d=X(),u=nr,p=tn({nowIso:d,author:e.author,op:"delete",before:l,after:u,message:e.message}),f=En(e.pmRoot,n.id),y=await Ce("item_store_delete",{op:"delete",pm_root:e.pmRoot,item_id:n.id,item_path:n.itemPath,history_path:f,before:l}),g=n.itemPath,h=!1;if(y.handled&&typeof y.result=="object"&&y.result!==null){let z=y.result;typeof z.item_path=="string"&&z.item_path.trim().length>0&&(g=z.item_path),z.skip_delete===!0&&(h=!0)}if(e.dryRun===!0)return{item:l.metadata,changedFields:["deleted"],targetPath:g,warnings:[...i,...c.warnings,...y.warnings]};let E=await ns(e.pmRoot,e.author),O=[];try{h||await It.rm(g);try{await nn(f,p)}catch(z){throw h||await P(g,r),z}h||(O=await rs({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:t.typeToFolder,schema:e.settings.schema,itemPath:g,document:null}))}finally{await E()}let U=[...await le({path:g,scope:"project",op:"delete",item_id:l.metadata.id,item_type:l.metadata.type,before:l,after:u,changed_fields:["deleted"]}),...await le({path:f,scope:"project",op:"delete:history",item_id:l.metadata.id,item_type:l.metadata.type,before:l,after:u,changed_fields:["deleted"]})];return ei({id:l.metadata.id,op:"delete",item_type:l.metadata.type,previous_status:l.metadata.status,previous:Er(l.metadata,Object.keys(l.metadata)),changed_fields:["deleted"]}),{item:l.metadata,changedFields:["deleted"],warnings:[...i,...c.warnings,...y.warnings,...O,...U]}}finally{await s()}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b5ce7132-0024-5d42-9cb8-585933beb7c7")}catch{}})();var pD=3e4;function an(e,t,n=pD){let r=e??n;if(!Number.isFinite(r)||r<=0)throw new Error(`${t} timeout must be a positive finite number`);return Math.floor(r)}function ln(e,t){if(e)return e;if(typeof globalThis.fetch=="function")return globalThis.fetch.bind(globalThis);throw new Error(`${t} execution requires a fetch implementation`)}async function mD(e){try{return(await e.text()).replaceAll(/\s+/g," ").trim()}catch(t){return`(failed to read response body: ${$(t)})`}}async function ss(e){let t=new AbortController,n=setTimeout(()=>{t.abort()},e.timeoutMs);try{let r;try{r=await e.fetcher(e.endpoint,{method:e.method,headers:e.headers,body:JSON.stringify(e.body),signal:t.signal})}catch(o){throw o instanceof Error&&o.name==="AbortError"?new Error(`${e.requestLabel} timed out after ${e.timeoutMs}ms`):new Error(`${e.requestLabel} execution failed: ${$(o)}`)}if(!r.ok){let o=await mD(r),i=o.length>0?`: ${o}`:"";throw new Error(`${e.requestLabel} failed with status ${r.status} ${r.statusText}${i}`)}try{return await r.json()}catch(o){throw new Error(`${e.responseLabel} JSON parse failed: ${$(o)}`)}}finally{clearTimeout(n)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="af754be6-8026-530a-8a20-b03d4ed742e1")}catch{}})();function xB(e,t){let n=L(e);if(!n)return"unconfigured";let r=L(t);return r&&r.toLowerCase()===n.toLowerCase()?"configured":"auto-detected"}function gD(e){let t=rr(e),n=t.toLowerCase();return n.endsWith("/embeddings")?t:n.endsWith("/v1")?`${t}/embeddings`:`${t}/v1/embeddings`}function $_(e){let t=e.search?.embedding_model;return L(t)||null}function _D(e){let t=L(e.providers?.openai?.base_url),n=L(e.providers?.openai?.model);if(!t||!n)return null;let r=$_(e),o=L(e.providers?.openai?.api_key);return{name:"openai",base_url:t,model:r??n,...o?{api_key:o}:{}}}function yD(e){let t=L(e.providers?.ollama?.base_url),n=L(e.providers?.ollama?.model);if(!t||!n)return null;let r=$_(e);return{name:"ollama",base_url:t,model:r??n}}function j_(e){let t=(Array.isArray(e)?e:[e]).map(n=>n.trim()).filter(n=>n.length>0);if(t.length===0)throw new Error("Embedding input must include at least one non-empty string");return t}function hD(e){let t=[],n=[],r=new Map;for(let o of e){let i=r.get(o);if(i===void 0){let s=t.length;t.push(o),r.set(o,s),n.push(s);continue}n.push(i)}return{uniqueInputs:t,originalToUniqueIndex:n}}function bD(e){let t=e.map((r,o)=>({embedding:r.embedding,index:r.index,position:o}));if(t.some(r=>r.index!==void 0)){for(let r of t)if(!Number.isInteger(r.index))throw new TypeError(`OpenAI embedding response entry at position ${r.position} is missing a valid integer index`);return[...t].sort((r,o)=>{let i=r.index-o.index;return i!==0?i:r.position-o.position})}return t}function as(e){let t=_D(e),n=yD(e),r=[t,n].filter(a=>a!==null),o=L(e.search?.provider),i=o?o.toLowerCase():null;return{active:(i?r.find(a=>a.name===i):void 0)??r[0]??null,available:r}}function F_(e){let t=rr(e.base_url);return e.name==="openai"?{provider:"openai",endpoint:gD(t),model:e.model}:{provider:"ollama",endpoint:`${t}/api/embed`,model:e.model}}function wD(e,t){let n=j_(t);return e.name==="openai"?{target:F_(e),method:"POST",headers:{"content-type":"application/json",...e.api_key?{authorization:`Bearer ${e.api_key}`}:{}},body:{model:e.model,input:n.length===1?n[0]:n}}:{target:F_(e),method:"POST",headers:{"content-type":"application/json"},body:{model:e.model,input:n}}}function ED(e,t){if(e.name==="openai"){let o=t.data;if(!Array.isArray(o)||o.length===0)throw new Error("OpenAI embedding response must include a non-empty data array");return bD(o).map((s,a)=>{let l=s.embedding;if(!pn(l))throw new Error(`OpenAI embedding response entry at index ${a} is missing a numeric embedding vector`);return[...l]})}let n=t.embedding;if(pn(n))return[[...n]];let r=t.embeddings;if(Array.isArray(r)&&r.length>0)return r.map((o,i)=>{if(!pn(o))throw new Error(`Ollama embedding response entry at index ${i} is missing a numeric embedding vector`);return[...o]});throw new Error("Ollama embedding response must include embedding or embeddings vectors")}async function U_(e,t,n={}){let r=an(n.timeout_ms,"Embedding request"),o=ln(n.fetcher,"Embedding request"),i=j_(t),s=hD(i),a=wD(e,s.uniqueInputs),l=await ss({endpoint:a.target.endpoint,method:a.method,headers:a.headers,body:a.body,timeoutMs:r,fetcher:o,requestLabel:"Embedding request",responseLabel:"Embedding response"}),c=ED(e,l);if(c.length!==s.uniqueInputs.length)throw new Error(`Embedding response cardinality mismatch: expected ${s.uniqueInputs.length} vector(s), received ${c.length}`);return s.originalToUniqueIndex.map(d=>[...c[d]])}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="61c0153b-8fa5-5c26-aa88-ca9807f2d160")}catch{}})();var ls=["title","description","tags","status","type","priority","assignee","parent","goal","value","why_now","risk","confidence","estimated_minutes","acceptance_criteria","resolution","expected_result","actual_result","body","comments","notes","learnings","reminders","events","dependencies","plan"];function Pc(e){let t=e?.search?.corpus_fields;if(!Array.isArray(t))return[...ls];let n=new Set(ls),r=Array.from(new Set(t.filter(o=>typeof o=="string").map(o=>o.trim()).filter(o=>o.length>0&&n.has(o))));return r.length>0?r:[...ls]}var TD=8e3,Mc=3200,cn="...[semantic corpus truncated]",vD="search_embedding_corpus_max_characters_invalid:using_provider_default";function Xe(e){return e.map(t=>t==null?"":String(t).trim()).filter(t=>t.length>0).join(" ")}function AD(e){return(e.reminders??[]).map(t=>Xe([t.at,t.text]))}function SD(e){return(e.events??[]).map(t=>Xe([t.start_at,t.end_at,t.title,t.description,t.location,t.all_day===!0?"all day":void 0,t.timezone,t.recurrence?.freq,t.recurrence?.interval,t.recurrence?.count,t.recurrence?.until,t.recurrence?.by_weekday?.join(" "),t.recurrence?.by_month_day?.join(" "),t.recurrence?.exdates?.join(" ")]))}function kD(e,t){e.push(t.title,t.body,t.status,t.owner,t.evidence,t.blocked_reason,t.superseded_by);for(let n of t.linked_items??[])e.push(`${n.kind} ${n.id}`,n.note);for(let n of t.files??[])e.push(n.path,n.note);for(let n of t.tests??[])e.push(n.command,n.path,n.note);for(let n of t.docs??[])e.push(n.path,n.note)}function xD(e,t){for(let n of t.plan_decisions??[])e.push(n.decision,n.rationale,n.evidence);for(let n of t.plan_discoveries??[])e.push(n.text);for(let n of t.plan_validation??[])e.push(n.text,n.command,n.expected)}function IB(e){let t=[];t.push(e.plan_mode,e.plan_scope,e.plan_harness,e.plan_resume_context);for(let n of e.plan_steps??[])kD(t,n);return xD(t,e),t.filter(n=>typeof n=="string"&&n.length>0).join(" ")}function CD(e){let t=(e.plan_steps??[]).map(s=>Xe([s.order,s.id,s.title,s.body,s.status,s.owner,s.evidence,s.blocked_reason,s.superseded_by,(s.linked_items??[]).map(a=>Xe([a.kind,a.id,a.note])).join(" "),(s.files??[]).map(a=>Xe([a.path,a.note])).join(" "),(s.tests??[]).map(a=>Xe([a.command,a.path,a.note])).join(" "),(s.docs??[]).map(a=>Xe([a.path,a.note])).join(" ")])),n=(e.plan_decisions??[]).map(s=>Xe([s.decision,s.rationale,s.evidence,s.step_id])),r=(e.plan_discoveries??[]).map(s=>Xe([s.text,s.step_id])),o=(e.plan_validation??[]).map(s=>Xe([s.text,s.command,s.expected]));if([e.plan_mode,e.plan_scope,e.plan_harness,e.plan_resume_context,...t,...n,...r,...o].some(s=>s!==void 0))return{mode:e.plan_mode,scope:e.plan_scope,harness:e.plan_harness,resume_context:e.plan_resume_context,steps:t,decisions:n,discoveries:r,validation:o}}function Ye(e){return typeof e=="string"&&e.trim().length>0}var OD={title:e=>e.metadata.title,description:e=>e.metadata.description,tags:e=>e.metadata.tags,status:e=>e.metadata.status,type:e=>e.metadata.type,priority:e=>typeof e.metadata.priority=="number"?e.metadata.priority:void 0,assignee:e=>Ye(e.metadata.assignee)?e.metadata.assignee:void 0,parent:e=>Ye(e.metadata.parent)?e.metadata.parent:void 0,goal:e=>Ye(e.metadata.goal)?e.metadata.goal:void 0,value:e=>Ye(e.metadata.value)?e.metadata.value:void 0,why_now:e=>Ye(e.metadata.why_now)?e.metadata.why_now:void 0,risk:e=>Ye(e.metadata.risk)?e.metadata.risk:void 0,confidence:e=>e.metadata.confidence!==void 0&&e.metadata.confidence!==null?e.metadata.confidence:void 0,estimated_minutes:e=>typeof e.metadata.estimated_minutes=="number"?e.metadata.estimated_minutes:void 0,acceptance_criteria:e=>Ye(e.metadata.acceptance_criteria)?e.metadata.acceptance_criteria:void 0,resolution:e=>Ye(e.metadata.resolution)?e.metadata.resolution:void 0,expected_result:e=>Ye(e.metadata.expected_result)?e.metadata.expected_result:void 0,actual_result:e=>Ye(e.metadata.actual_result)?e.metadata.actual_result:void 0,body:e=>e.body,comments:e=>(e.metadata.comments??[]).map(t=>t.text),notes:e=>(e.metadata.notes??[]).map(t=>t.text),learnings:e=>(e.metadata.learnings??[]).map(t=>t.text),reminders:e=>AD(e.metadata),events:e=>SD(e.metadata),dependencies:e=>(e.metadata.dependencies??[]).map(t=>({id:t.id,kind:t.kind})),plan:e=>CD(e.metadata)};function z_(e,t={}){let n=t.fields??ls,r={};for(let o of n){let i=OD[o];if(!i)continue;let s=i(e);s!==void 0&&(r[o]=s)}return r}function ID(e){return e?.trim().toLowerCase()==="ollama"?Mc:TD}function Wn(e,t){let n=ID(e),r=fu(t);return r!==null?{maxCharacters:r,warning:null}:{maxCharacters:n,warning:t==null?null:vD}}function Fc(e,t={}){let n=JSON.stringify(z_(e,{fields:t.fields})),r=Wn(t.providerName,t.maxCharacters).maxCharacters;if(n.length<=r)return n;if(r<=cn.length)return cn.slice(0,r);let o=Math.max(0,r-cn.length);return`${n.slice(0,o)}${cn}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2c518b97-bc75-5e3f-91e8-d6779d565558")}catch{}})();function RD(e,t){let n=e.search.embedding_batch_size,r=e.search.embedding_timeout_ms,o=e.search.scanner_max_batch_retries,i=Number.isFinite(n)&&n>0?Math.floor(n):1,s=Number.isFinite(r)&&r>0?Math.floor(r):3e4,a=Number.isFinite(o)&&o>=0?Math.floor(o):0;return{batchSize:i,timeoutMs:s,maxRetries:a,maxBatchInputCharacters:Number.POSITIVE_INFINITY,maxInputCharacters:t}}function ND(e,t,n){let r=[],o=[],i=0;for(let s of e){let a=o.length>=t,l=o.length>0&&Number.isFinite(n)&&i+s.length>n;(a||l)&&(r.push(o),o=[],i=0),o.push(s),i+=s.length}return r.push(o),r}function DD(e,t){return e.name!=="ollama"?t:{...t,maxBatchInputCharacters:Mc}}function LD(e,t){if(!Number.isFinite(t)||t<=0||e.length<=t)return e;let n=Math.max(0,t-cn.length);return`${e.slice(0,n)}${cn}`.slice(0,t)}function q_(e){let t=$(e).toLowerCase();return t.includes("timed out")||t.includes("timeout")}function PD(e,t,n,r,o,i){let s=`Embedding batch ${t} failed after ${o} attempt(s): ${$(i)}`,a=`provider=${e.name} model=${e.model} batch_size=${n} timeout_ms=${r}`;return q_(i)?`${s} (${a}; guidance=check provider availability or lower search.embedding_batch_size, raise search.embedding_timeout_ms, or run keyword search while semantic indexing catches up)`:`${s} (${a})`}async function $c(e,t,n,r,o,i){let s=null;for(let a=0;a<=o;a+=1)try{let l=await U_(e,t,{timeout_ms:r});return a>0&&i.push(`search_embedding_batch_retry_succeeded:batch=${n}:attempt=${a+1}:size=${t.length}`),l}catch(l){if(s=l,q_(l)&&t.length>1){let c=Math.ceil(t.length/2),d=t.slice(0,c),u=t.slice(c);return i.push(`search_embedding_batch_split_after_timeout:batch=${n}:size=${t.length}:parts=${d.length}|${u.length}`),[...await $c(e,d,`${n}.1`,r,o,i),...await $c(e,u,`${n}.2`,r,o,i)]}if(a<o){let c=Math.min(1e3*2**a,8e3);await new Promise(d=>setTimeout(d,c))}}throw new Error(PD(e,n,t.length,r,o+1,s))}async function jc(e,t,n,r={}){if(n.length===0)return{vectors:[],warnings:[]};let o=[],i=Wn(e.name,t.search.embedding_corpus_max_characters);i.warning&&o.push(i.warning);let s=DD(e,RD(t,i.maxCharacters)),a=0,l=n.map(p=>{let f=LD(p,s.maxInputCharacters);return f.length<p.length&&(a+=1),f});a>0&&o.push(`search_embedding_input_truncated:count=${a}:max_characters=${s.maxInputCharacters}`);let c=ND(l,s.batchSize,s.maxBatchInputCharacters),d=[],u=0;for(let p=0;p<c.length;p+=1){let f=c[p];r.onProgress?.({batch_index:p+1,batch_total:c.length,batch_size:f.length,completed_inputs:u,total_inputs:l.length,phase:"start"}),d.push(...await $c(e,f,String(p+1),s.timeoutMs,s.maxRetries,o)),u+=f.length,r.onProgress?.({batch_index:p+1,batch_total:c.length,batch_size:f.length,completed_inputs:u,total_inputs:l.length,phase:"complete"})}return{vectors:d,warnings:o}}import{mkdir as MD,readFile as FD,stat as qc,unlink as $D}from"node:fs/promises";import{basename as G_,dirname as Uc,isAbsolute as jD,join as UD,resolve as Gc}from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7bac9506-dcad-5e52-848b-3e2631d4936c")}catch{}})();var Vc="pm_items",zD=/[^a-zA-Z0-9_-]/g,qD=128,GD=".pm-cli-local-vectors",zc=1,dn=new Map;function Zr(e){return(L(e.collection_name)??Vc).replaceAll(zD,"_").slice(0,qD)}function cs(e){if(!pn(e)||e.length===0)throw new Error("Vector values must be a non-empty numeric array");return[...e]}function B_(e){if(!Number.isFinite(e)||e<=0)throw new Error("Vector query limit must be a positive number");return Math.floor(e)}function VD(e){let t=e.result;if(!Array.isArray(t))throw new TypeError("Qdrant query response must include a result array");let n=t.map((r,o)=>{let i=r.id,s=typeof i=="number"?String(i):i,a=L(s);if(!a)throw new Error(`Qdrant query response entry at index ${o} is missing a non-empty id`);let l=r.score;if(typeof l!="number"||!Number.isFinite(l))throw new TypeError(`Qdrant query response entry at index ${o} is missing a finite numeric score`);let c=r.payload;if(c!==void 0&&(typeof c!="object"||c===null||Array.isArray(c)))throw new Error(`Qdrant query response entry at index ${o} must provide payload as an object when set`);return{id:a,score:l,...c?{payload:c}:{}}});return n.sort((r,o)=>r.score!==o.score?o.score-r.score:r.id.localeCompare(o.id)),n}function Bc(e){let t=L(e.result?.status);if(t)return{status:t};let n=L(e.status);if(n)return{status:n};throw new Error("Qdrant upsert response must include status metadata")}async function Qr(e,t,n,r,o){return await ss({endpoint:e,method:t.method,headers:t.headers,body:t.body,timeoutMs:n,fetcher:r,requestLabel:`Vector ${o} request`,responseLabel:`Vector ${o} response`})}function BD(e){let t=L(e.vector_store?.qdrant?.url);if(!t)return null;let n=L(e.vector_store?.collection_name),r=L(e.vector_store?.qdrant?.api_key);return{name:"qdrant",url:t,...n&&n!==Vc?{collection_name:n}:{},...r?{api_key:r}:{}}}function HD(e){let t=Gc(e),n=Uc(t);return G_(t)==="pm"&&G_(n)===".agents"?Uc(n):t}function WD(e,t){return!t||jD(e)?e:Gc(HD(t),e)}function KD(e,t){let n=L(e.vector_store?.lancedb?.path);if(!n)return null;let r=L(e.vector_store?.collection_name);return{name:"lancedb",path:WD(n,t),...r&&r!==Vc?{collection_name:r}:{}}}function YD(e){if(!Array.isArray(e)||e.length===0)throw new Error("Vector upsert records must include at least one entry");return e.map((t,n)=>{let r=L(t.id);if(!r)throw new Error(`Vector upsert record at index ${n} is missing a non-empty id`);let o=cs(t.vector),i=t.payload;if(i!==void 0&&(typeof i!="object"||i===null||Array.isArray(i)))throw new Error(`Vector upsert record at index ${n} must provide payload as an object when set`);return{id:r,vector:o,...i?{payload:i}:{}}})}function XD(e){if(!Array.isArray(e)||e.length===0)throw new Error("Vector delete ids must include at least one entry");let t=e.map((r,o)=>{let i=L(r);if(!i)throw new Error(`Vector delete id at index ${o} is missing a non-empty value`);return i}).sort((r,o)=>r.localeCompare(o)),n=[];for(let r of t)n.at(-1)!==r&&n.push(r);return n}function JD(e){return e.replace(/\/points\?wait=true$/,"/points/delete?wait=true")}function QD(e){return e.replace(/\/points\?wait=true$/,"")}function ds(e){return{"content-type":"application/json",...e.api_key?{"api-key":e.api_key}:{}}}function us(e,t){return Kn(e,t)}function Kn(e,t){return UD(Gc(e),GD,`${t}.json`)}function Hc(e,t){return typeof e=="object"&&e!==null&&e.code===t}function ZD(e,t,n){let r=L(e.id);if(!r)throw new Error(`LanceDB local snapshot '${n}' record at index ${t} is missing a non-empty id`);let o=cs(e.vector),i=e.payload;if(i!==void 0&&(typeof i!="object"||i===null||Array.isArray(i)))throw new Error(`LanceDB local snapshot '${n}' record '${r}' must provide payload as an object when set`);return{id:r,vector:o,...i?{payload:i}:{}}}function eL(e,t,n){let r;try{r=JSON.parse(n)}catch(l){throw new Error(`LanceDB local snapshot at '${e}' is not valid JSON: ${$(l)}`)}if(typeof r!="object"||r===null||Array.isArray(r))throw new Error(`LanceDB local snapshot at '${e}' must be a JSON object`);if(r.version!==zc)throw new Error(`LanceDB local snapshot at '${e}' must include version=${zc}`);let i=L(r.table);if(!i)throw new Error(`LanceDB local snapshot at '${e}' must include a non-empty table value`);if(i!==t)throw new Error(`LanceDB local snapshot at '${e}' table mismatch: expected '${t}', received '${i}'`);let s=r.records;if(!Array.isArray(s))throw new TypeError(`LanceDB local snapshot at '${e}' must include a records array`);let a=new Map;for(let l=0;l<s.length;l+=1){let c=ZD(s[l],l,e);a.set(c.id,c)}return a}async function tL(e){try{let t=await qc(e);return{mtimeMs:t.mtimeMs,size:t.size}}catch(t){if(!Hc(t,"ENOENT"))throw t;return null}}function nL(e,t){if(!t)return null;if(t.mtimeMs===null&&t.size===null&&t.records.size===0)return t.records;let n=new Map;return dn.set(e,{records:n,mtimeMs:null,size:null}),n}function rL(e,t){return e!==void 0&&t!==null&&e.mtimeMs===t.mtimeMs&&e.size===t.size}async function Wc(e,t){let n=us(e,t),r=Kn(e,t),o=await tL(r),i=dn.get(n);if(!o){let a=nL(n,i);if(a)return a}if(rL(i,o))return i.records;let s=new Map;try{let a=await FD(r,"utf8");s=eL(r,t,a)}catch(a){if(!Hc(a,"ENOENT"))throw a}return dn.set(n,{records:s,mtimeMs:o?.mtimeMs??null,size:o?.size??null}),s}function oL(e){let t=[...e.values()];return t.sort((n,r)=>n.id.localeCompare(r.id)),t.map(n=>({id:n.id,vector:[...n.vector],...n.payload?{payload:n.payload}:{}}))}async function H_(e){try{await $D(e)}catch(t){if(!Hc(t,"ENOENT"))throw new Error(`LanceDB local snapshot delete failed at '${e}': ${$(t)}`)}}async function W_(e,t,n){let r=Kn(e,t);if(n.size===0){await H_(r);return}let o=Uc(r);try{await MD(o,{recursive:!0})}catch(s){throw new Error(`LanceDB local snapshot directory create failed at '${o}': ${$(s)}`)}let i=`${JSON.stringify({version:zc,table:t,records:oL(n)})}
|
|
175
|
+
`;try{await P(r,i)}catch(s){throw new Error(`LanceDB local snapshot write failed at '${r}': ${$(s)}`)}}async function iL(e,t){let n=us(e,t),r=Kn(e,t);await H_(r),dn.delete(n)}function V_(e){let t=0;for(let n=0;n<e.length;n+=1)t+=e[n]*e[n];return Math.sqrt(t)}function sL(e,t){let n=0;for(let i=0;i<e.length;i+=1)n+=e[i]*t[i];let r=V_(e),o=V_(t);return r===0||o===0?0:n/(r*o)}function fs(e,t){let n=BD(e),r=KD(e,t),o=[n,r].filter(l=>l!==null),i=L(e.vector_store?.adapter),s=i?i.toLowerCase():null;return{active:(s?o.find(l=>l.name===s):void 0)??o[0]??null,available:o}}function ps(e){let t=Zr(e);if(e.name==="qdrant"){let o=rr(e.url),i=encodeURIComponent(t);return{store:"qdrant",query_target:`${o}/collections/${i}/points/search`,upsert_target:`${o}/collections/${i}/points?wait=true`}}let n=encodeURIComponent(e.path),r=encodeURIComponent(t);return{store:"lancedb",query_target:`lancedb://${n}#${r}`,upsert_target:`lancedb://${n}#${r}`}}function aL(e,t,n){let r=ps(e),o=cs(t),i=B_(n);return e.name==="qdrant"?{target:r,method:"POST",headers:ds(e),body:{vector:o,limit:i,with_payload:!0}}:{target:r,method:"LOCAL",headers:{},body:{table:Zr(e),vector:o,limit:i}}}function lL(e,t){let n=ps(e),r=YD(t);return e.name==="qdrant"?{target:n,method:"POST",headers:ds(e),body:{points:r}}:{target:n,method:"LOCAL",headers:{},body:{table:Zr(e),records:r}}}function cL(e,t){let n=ps(e),r=XD(t);return e.name==="qdrant"?{target:n,method:"POST",headers:ds(e),body:{points:r}}:{target:n,method:"LOCAL",headers:{},body:{table:Zr(e),ids:r}}}async function zB(e,t,n,r={}){let o=aL(e,t,n);if(o.method==="LOCAL"){let l=e,c=o.body,d=await Wc(l.path,c.table);if(d.size===0)return[];let u=cs(c.vector),p=B_(c.limit),f=[],y=0;for(let g of d.values()){if(g.vector.length!==u.length){y++;continue}f.push({id:g.id,score:sL(u,g.vector),...g.payload?{payload:g.payload}:{}})}return y>0&&r.warnings&&r.warnings.push(`vector_dimension_mismatch:${y} records skipped (expected ${u.length} dimensions)`),f.sort((g,h)=>g.score!==h.score?h.score-g.score:g.id.localeCompare(h.id)),f.slice(0,p)}let i=an(r.timeout_ms,"Vector request"),s=ln(r.fetcher,"Vector request"),a=await Qr(o.target.query_target,{method:"POST",headers:o.headers,body:o.body},i,s,"query");return VD(a)}async function Kc(e,t,n={}){let r=lL(e,t);if(r.method==="LOCAL"){let a=e,l=r.body,c=us(a.path,l.table),d=await Wc(a.path,l.table);for(let f of l.records)d.set(f.id,f);await W_(a.path,l.table,d);let u=Kn(a.path,l.table),p=await qc(u);return dn.set(c,{records:d,mtimeMs:p.mtimeMs,size:p.size}),{status:"ok"}}let o=an(n.timeout_ms,"Vector request"),i=ln(n.fetcher,"Vector request"),s=await Qr(r.target.upsert_target,{method:"POST",headers:r.headers,body:r.body},o,i,"upsert");return Bc(s)}async function ms(e,t,n={}){let r=cL(e,t);if(r.method==="LOCAL"){let a=e,l=r.body,c=us(a.path,l.table),d=await Wc(a.path,l.table);if(d.size===0)return{status:"ok"};for(let u of l.ids)d.delete(u);if(await W_(a.path,l.table,d),d.size===0)dn.delete(c);else{let u=Kn(a.path,l.table),p=await qc(u);dn.set(c,{records:d,mtimeMs:p.mtimeMs,size:p.size})}return{status:"ok"}}let o=an(n.timeout_ms,"Vector request"),i=ln(n.fetcher,"Vector request"),s=await Qr(JD(r.target.upsert_target),{method:"POST",headers:r.headers,body:r.body},o,i,"delete");return Bc(s)}async function K_(e,t=[],n={},r){if(e.name==="lancedb")return await iL(e.path,Zr(e)),{status:"ok"};if(r!==void 0){if(!Number.isInteger(r)||r<=0)throw new Error("Vector reset dimension must be a positive integer when provided");let i=ps(e),s=QD(i.upsert_target),a=an(n.timeout_ms,"Vector request"),l=ln(n.fetcher,"Vector request"),c=ds(e);try{await Qr(s,{method:"DELETE",headers:c,body:{}},a,l,"delete")}catch(u){if(!$(u).includes("failed with status 404"))throw u}let d=await Qr(s,{method:"PUT",headers:c,body:{vectors:{size:r,distance:"Cosine"}}},a,l,"upsert");return Bc(d)}let o=t.map(i=>i.trim()).filter(i=>i.length>0);return o.length===0?{status:"ok"}:await ms(e,o,n)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4b3ad5fc-0f86-5f20-a23b-19d447cb0973")}catch{}})();function gs(e,t){let n=L(e),r=L(t);return!n||!r?null:{provider:n,model:r}}function Y_(e){if(e==null)return null;if(typeof e!="object"||Array.isArray(e))throw new Error("Vectorization embedding metadata must be an object when set");let t=gs(e.provider,e.model),n=e.vector_dimension;if(!t||typeof n!="number"||!Number.isInteger(n)||n<=0)throw new Error("Vectorization embedding metadata must include provider, model, and positive vector_dimension");return{...t,vector_dimension:n}}function Yc(e,t){if(!Number.isInteger(t)||t<=0)throw new Error("Vectorization embedding metadata requires a positive vector dimension");return{provider:e.provider,model:e.model,vector_dimension:t}}function Xc(e,t){return!e||e.provider!==t.provider||e.model!==t.model}function Jc(e,t){return!!(e&&e.vector_dimension!==t)}function Qc(e,t){if(e.length===0)throw new Error(`${t} returned no vectors`);let r=e[0].length;if(!Number.isInteger(r)||r<=0)throw new Error(`${t} returned an empty vector`);for(let o=1;o<e.length;o+=1)if(e[o]?.length!==r)throw new Error(`${t} returned mixed vector dimensions`);return r}import Zc 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]="7939a590-3662-5c66-99aa-3835a0dbaecc")}catch{}})();var dL=["index/manifest.json","search/embeddings.jsonl"],J_="search/vectorization-status.json";function uL(e,t){return`search_cache_invalidation_failed:${e}:${String(t)}`}function Yn(e){return[...new Set([...e].map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function Q_(e){return typeof e=="string"&&e.trim().length>0&&Number.isFinite(Date.parse(e))}function Z_(e){let t=new Map;for(let[n,r]of Object.entries(e)){let o=n.trim();o.length===0||!Q_(r)||t.set(o,r)}return Object.fromEntries([...t.entries()].sort((n,r)=>n[0].localeCompare(r[0])))}async function ey(e){let t=Zc.join(e,J_),n=await W(t);if(n===null||n.trim().length===0)return{entries:{},embedding:null,warnings:[]};let r;try{r=JSON.parse(n)}catch{return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]}}if(typeof r!="object"||r===null||r.version!==1||!Array.isArray(r.items))return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};let o=new Map;for(let s of r.items){if(typeof s!="object"||s===null)return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};let a=s.id,l=s.updated_at;if(typeof a!="string"||a.trim().length===0||!Q_(l))return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};o.set(a.trim(),l)}let i=null;try{i=Y_(r.embedding)}catch{return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]}}return{entries:Object.fromEntries([...o.entries()].sort((s,a)=>s[0].localeCompare(a[0]))),embedding:i,warnings:[]}}async function ty(e,t,n){let r=Z_(t),o=Zc.join(e,J_),i=`${JSON.stringify({version:1,generated_at:X(),...n?{embedding:n}:{},items:Object.entries(r).map(([s,a])=>({id:s,updated_at:a}))},null,2)}
|
|
176
|
+
`;await P(o,i)}function fL(e){return{id:e.id,type:e.type,status:e.status,priority:e.priority,updated_at:e.updated_at}}function pL(e){let t=gs(e.name,e.model);if(!t)throw new Error("Embedding provider must include a provider name and model");return t}function eo(e,t){return{refreshed:[],skipped:e,warnings:[t]}}async function mL(e,t,n){if(!n.settings&&!await Y(ye(e)))return eo(t,"search_semantic_refresh_skipped:settings_not_initialized");let r;try{if(n.settings)r=n.settings;else{let a=await Ct(e),l=a.warnings.find(c=>c.startsWith("settings_read_"));if(l)return eo(t,`search_semantic_refresh_skipped:settings_read_failed:${l}`);r=a.settings}}catch(a){return eo(t,`search_semantic_refresh_skipped:settings_read_failed:${$(a)}`)}let o=n.apply_runtime_defaults?Gn(r).settings:r,i=as(o).active;if(!i)return eo(t,"search_semantic_refresh_skipped:provider_unconfigured");let s=fs(o,e).active;return s?{settings:o,provider:i,vectorStore:s}:eo(t,"search_semantic_refresh_skipped:vector_store_unconfigured")}async function gL(e,t,n,r,o,i){let s=[],a=new Set,l=new Set,c=[];for(let d of r){let u=await Xr(e,d,t,n,o);if(!u){l.add(d);continue}try{let p=await Jr(u,{schema:i});c.push({id:p.document.metadata.id,document:p.document})}catch(p){a.add(u.id),s.push(`search_semantic_refresh_item_read_failed:${u.id}:${$(p)}`)}}return c.sort((d,u)=>d.id.localeCompare(u.id)),{documents:c,missingIds:Yn(l),skippedIds:Yn(a),warnings:s}}async function _L(e,t,n){let r=Wn(t.name,e.search.embedding_corpus_max_characters).maxCharacters,o=Pc(e),i=n.map(a=>Fc(a.document,{providerName:t.name,maxCharacters:r,fields:o})),s=await jc(t,e,i);return{vectors:s.vectors,vector_dimension:Qc(s.vectors,"Semantic refresh embedding"),warnings:s.warnings}}async function yL(e,t,n){return await Kc(e,t.map((r,o)=>({id:r.id,vector:n[o],payload:fL(r.document.metadata)}))),{refreshed:t.map(r=>r.id),skipped:[],warnings:[]}}async function hL(e,t){if(t.length===0)return{refreshed:[],skipped:[],warnings:[]};try{return await ms(e,t),{refreshed:[],skipped:[],warnings:[]}}catch(n){return{refreshed:[],skipped:t,warnings:[`search_semantic_refresh_delete_failed:${$(n)}`]}}}async function bL(e){let t=[],n=[];for(let r of dL){let o=Zc.join(e,r);try{if(!await Y(o))continue;await er(o),t.push(r)}catch(i){n.push(uL(r,i))}}return{invalidated:t,warnings:n}}async function X_(e,t,n={}){let r=Yn(t);if(r.length===0)return{refreshed:[],skipped:[],warnings:[]};let o=await mL(e,r,n);if(!("settings"in o))return o;let i=ar(o.settings,bt()),s=await gL(e,o.settings.id_prefix,o.settings.item_format,r,i.type_to_folder,o.settings.schema),a=s.documents.length>0||s.missingIds.length>0?await ey(e):{entries:{},embedding:null,warnings:[]},l=pL(o.provider),c=a.entries,d={refreshed:[],skipped:[],warnings:[]},u=a.embedding;if(s.documents.length>0)if(a.embedding&&Xc(a.embedding,l))d={refreshed:[],skipped:s.documents.map(h=>h.id),warnings:["search_semantic_refresh_requires_reindex:embedding_identity_changed"]};else try{let h=await _L(o.settings,o.provider,s.documents);if(Jc(a.embedding,h.vector_dimension))d={refreshed:[],skipped:s.documents.map(E=>E.id),warnings:[...h.warnings,"search_semantic_refresh_requires_reindex:vector_dimension_changed"]};else{u=Yc(l,h.vector_dimension);let E=await yL(o.vectorStore,s.documents,h.vectors);d={refreshed:E.refreshed,skipped:E.skipped,warnings:[...h.warnings,...E.warnings]}}}catch(h){d={refreshed:[],skipped:s.documents.map(E=>E.id),warnings:[`search_semantic_refresh_failed:${$(h)}`]}}let p=await hL(o.vectorStore,s.missingIds),f=new Set(d.refreshed),y=Object.fromEntries(s.documents.filter(h=>f.has(h.id)).map(h=>[h.id,h.document.metadata.updated_at])),g=[];if(Object.keys(y).length>0||s.missingIds.length>0){let h={...c,...Z_(y)};for(let E of s.missingIds)delete h[E];try{await ty(e,h,u)}catch(E){g.push(`search_vectorization_status_ledger_write_failed:${$(E)}`)}g.push(...a.warnings)}return{refreshed:Yn([...d.refreshed,...p.refreshed]),skipped:Yn([...s.skippedIds,...d.skipped,...p.skipped]),warnings:[...s.warnings,...d.warnings,...p.warnings,...g]}}function wL(e,t){let n=t?Gn(e).settings:e;return!!(as(n).active&&fs(n).active)}async function ed(e,t,n={}){let r=await bL(e),o=Yn(t);if(o.length===0)return{invalidated:r.invalidated,refreshed:[],skipped:[],warnings:r.warnings};if(!await Y(ye(e))){let l=await X_(e,o);return{invalidated:r.invalidated,refreshed:l.refreshed,skipped:l.skipped,warnings:[...r.warnings,...l.warnings]}}let i;try{let l=await Ct(e),c=l.warnings.find(d=>d.startsWith("settings_read_"));if(c)return{invalidated:r.invalidated,refreshed:[],skipped:o,warnings:[...r.warnings,`search_semantic_refresh_skipped:settings_read_failed:${c}`]};i=l.settings}catch(l){return{invalidated:r.invalidated,refreshed:[],skipped:o,warnings:[...r.warnings,`search_semantic_refresh_skipped:settings_read_failed:${$(l)}`]}}if(i.search.mutation_refresh_policy==="cache_only")return{invalidated:r.invalidated,refreshed:[],skipped:o,warnings:r.warnings};let s=i.search.mutation_refresh_policy==="semantic_auto";if(n.background&&wL(i,s))return await y_(e,o),{invalidated:r.invalidated,refreshed:[],skipped:[],warnings:[...r.warnings,"search_semantic_refresh_scheduled_background"],scheduled:!0};let a=await X_(e,o,{settings:i,apply_runtime_defaults:s});return{invalidated:r.invalidated,refreshed:a.refreshed,skipped:a.skipped,warnings:[...r.warnings,...a.warnings]}}import{createRequire as EL}from"node:module";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8eb48648-6e55-5710-990e-6471c7cdcde0")}catch{}})();var ny=new Set(["1","true","yes","on"]);function TL(){return!!(ny.has((process.env.PM_SENTRY_DISABLED??"").trim().toLowerCase())||ny.has((process.env.PM_TELEMETRY_DISABLED??"").trim().toLowerCase())||process.env.VITEST||process.env.VITEST_WORKER_ID)}var ay=/(?:token|secret|password|passwd|api[_-]?key|apikey|authorization|cookie|credentials|bearer|dsn)/i,vL=new RegExp(`\\b(${ay.source})\\s*[:=]\\s*([^\\s,;]+)`,"giu"),AL=/(^|[\s"'`(=])\/(?:[^\s"'`),;]+)/g,SL=/file:\/\/\/?[^\s"'`),;]+/giu,kL=/\b[A-Za-z]:\\[^\s"'`),;]+/g,xL=/\b(?:10\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|172\.(?:1[6-9]|2\d|3[01])\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|192\.168\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d))\b/g,CL=/(?:^|[_-])(path|filename|file|module|cwd|dir|directory|location|source|script)s?$/i;var OL=["[starter-extension] activating","[starter-extension] all 8 capabilities registered.","[starter-extension] commands:","[starter] preflight check for workspace","[starter] output_format service override active","[pm-ext-ts-starter] activating","[pm-ext-ts-starter] all capabilities registered.","run `pm init` first to initialise a pm workspace"];function ry(e){let t=e.trim();return t.length===0?!1:t.startsWith("/")||t.startsWith("file://")||/^[A-Za-z]:\\/.test(t)||t.startsWith("\\\\")?!0:t.includes("/home/")}function Je(e,t){if(t&&CL.test(t)&&ry(e))return"[scrubbed_path]";let n=e.replaceAll(vL,(r,o)=>`${o}=[scrubbed]`).replaceAll(/[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}/giu,"[scrubbed_email]").replaceAll(/bearer\s+[a-z0-9._=-]+/giu,"bearer [scrubbed]").replaceAll(/sntr[ysu]_[A-Za-z0-9_-]+/g,"[scrubbed_sentry_token]").replaceAll(xL,"[scrubbed_ip]").replaceAll(SL,"[scrubbed_path]").replaceAll(kL,"[scrubbed_path]").replaceAll(AL,(r,o)=>`${o}[scrubbed_path]`);return ry(n)?"[scrubbed_path]":n}function Rt(e){let t={};for(let[n,r]of Object.entries(e))ay.test(n)?t[n]="[scrubbed]":typeof r=="string"?t[n]=Je(r,n):Array.isArray(r)?t[n]=r.map(o=>typeof o=="string"?Je(o,n):o&&typeof o=="object"?Rt(o):o):r&&typeof r=="object"?t[n]=Rt(r):t[n]=r;return t}function IL(e){for(let n of["filename","absPath","abs_path","module"]){let r=e[n];typeof r=="string"&&(e[n]=Je(r,n))}let t=e.context_line;typeof t=="string"&&(e.context_line=Je(t,"context_line"));for(let n of["pre_context","post_context"]){let r=e[n];Array.isArray(r)&&(e[n]=r.map(o=>typeof o=="string"?Je(o,n):o))}e.vars&&typeof e.vars=="object"&&(e.vars=Rt(e.vars)),e.data&&typeof e.data=="object"&&(e.data=Rt(e.data))}var RL=EL(import.meta.url),NL=()=>RL("@sentry/node"),td,oy=!1,DL=NL,LL="https://bf7ad2ec76c0051c2ee94e48e8bd6868@o4510603477712896.ingest.de.sentry.io/4511316775338064";function nd(e){return/^\s*PmCliError:/.test(e)}function rd(e){let t=e.trim().toLowerCase();return t.length===0?!1:OL.some(n=>t.includes(n))}function PL(e){return e.logger!=="console"?!1:typeof e.message=="string"&&rd(e.message)?!0:Array.isArray(e.exception?.values)&&e.exception.values.some(t=>typeof t.value=="string"&&rd(t.value))}function ML(e){if(e.logger!=="console")return!1;let t=n=>typeof n=="string"&&/^\(node:\d+\) MaxListenersExceededWarning: Possible EventEmitter memory leak detected\./.test(n);return t(e.message)?!0:Array.isArray(e.exception?.values)&&e.exception.values.some(n=>t(n.value))}function FL(e){return!!(e.exception?.values?.some(t=>t.type==="PmCliError")||e.exception?.values?.some(t=>typeof t.value=="string"&&nd(t.value))||e.logger==="console"&&typeof e.message=="string"&&nd(e.message))}function ly(e){return e.category==="console"&&typeof e.message=="string"&&nd(e.message)}function cy(e){return e.category==="console"&&typeof e.message=="string"&&rd(e.message)}function $L(){return Xs(import.meta.url,["../../.."])??"0.0.0"}function jL(){let e=process.env.SENTRY_ENVIRONMENT?.trim();return e&&e.length>0?e:process.env.VITEST||process.env.VITEST_WORKER_ID||process.env.NODE_ENV==="test"?"test":process.env.CI?"ci":"production"}var iy=.2;function UL(){let e=process.env.SENTRY_TRACES_SAMPLE_RATE?.trim();if(!e)return iy;let t=Number(e);return!Number.isFinite(t)||t<0||t>1?iy:t}function zL(e){if(e.exception?.values){for(let t of e.exception.values)if(t.value&&(t.value=Je(t.value,"value")),t.stacktrace?.frames)for(let n of t.stacktrace.frames)IL(n)}}function dy(e){if(e.breadcrumbs)for(let t of e.breadcrumbs)t.message&&(t.message=Je(t.message)),t.data&&typeof t.data=="object"&&(t.data=Rt(t.data))}function uy(e){if(e.contexts)for(let[t,n]of Object.entries(e.contexts))n&&typeof n=="object"&&(e.contexts[t]=Rt(n))}function sy(e,t){let n=e,r=n[t];r&&typeof r=="object"&&(n[t]=Rt(r))}var qL=e=>{if(FL(e)||PL(e))return null;ML(e)&&(e.level="warning",e.tags={...e.tags,"pm.diagnostic_class":"node_runtime_warning"}),e.message&&(e.message=Je(e.message,"message")),e.transaction&&(e.transaction=Je(e.transaction,"transaction")),zL(e),dy(e),sy(e,"extra"),uy(e);for(let t of["request","user","tags"])sy(e,t);return e},GL=e=>(e.breadcrumbs&&(e.breadcrumbs=e.breadcrumbs.filter(t=>!ly(t)&&!cy(t)),dy(e)),uy(e),e),VL=e=>ly(e)||cy(e)?null:(e.message&&(e.message=Je(e.message,"message")),e.data&&typeof e.data=="object"&&(e.data=Rt(e.data)),e);async function BL(){if(oy)return td;if(oy=!0,TL())return;let e=DL();td=e;let t=process.env.SENTRY_DSN?.trim()||LL,n=$L();return e.init({dsn:t,release:`pm-cli@${n}`,environment:jL(),tracesSampleRate:UL(),enableLogs:!0,attachStacktrace:!0,normalizeDepth:6,shutdownTimeout:3e3,sendDefaultPii:!1,serverName:void 0,integrations:[e.extraErrorDataIntegration({depth:4}),e.captureConsoleIntegration({levels:["warn","error"]})],initialScope:{tags:{"cli.name":"pm-cli","cli.version":n,"runtime.node":process.version,"runtime.platform":process.platform,"runtime.arch":process.arch}},beforeSend:qL,beforeSendTransaction:GL,beforeBreadcrumb:VL}),e}function un(){return td}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e896db69-ed90-53f1-a227-e3d061b3bc8d")}catch{}})();var HL=new Set(["init","config","completion","completion-statuses","completion-tags","completion-types"]),WL=new Set(["list","list-all","list-open","list-in-progress","list-blocked","list-closed","list-canceled","list-draft","search","get","context","calendar","history","activity","aggregate","deps","contracts","stats"]),KL=new Set(["create","update","update-many","close-many","append","close","delete","restore","claim","release","comments","notes","learnings","files","docs","start-task","pause-task","close-task"]),YL=new Set(["test","test-all","test-runs","test-verify","trace-test","test-ping"]),XL=new Set(["health","validate","normalize","reindex","gc","telemetry","extension-doctor"]);function JL(e){return e.trim().replaceAll(/\s+/g," ").toLowerCase()}function fy(e){let t=e?.trim().toLowerCase();return t&&t.length>0?t:void 0}var QL=[{code:"unknown_command",matches:e=>e.includes("unknown command")},{code:"unknown_option",matches:e=>e.includes("unknown option")},{code:"missing_required_option",matches:e=>e.includes("missing required options")||e.includes("missing required option")},{code:"missing_required_argument",matches:e=>e.includes("missing required argument")},{code:"no_update_fields",matches:e=>e.includes("no update flags provided")},{code:"ownership_conflict",matches:e=>e.includes("is assigned to")&&e.includes("use --force")},{code:"lock_conflict",matches:e=>e.includes("is locked")},{code:"terminal_state_conflict",matches:e=>e.includes("already terminal")&&e.includes("use --force")},{code:"tracker_not_initialized",matches:e=>e.includes("tracker is not initialized")},{code:"item_not_found",matches:e=>e.includes(" not found")},{code:"close_through_update",matches:e=>e.includes('use "pm close <id> <text>" to close an item')||e.includes("invalid --status value")&&e.includes('"closed"')},{code:"invalid_argument_value",matches:e=>e.startsWith("invalid ")||e.includes(" must be ")||e.includes(" requires ")},{code:"invalid_command_usage",matches:e=>e.includes("either as positional")&&e.includes("not both")}],ZL=new Map([[_.USAGE,"invalid_command_usage"],[_.NOT_FOUND,"item_not_found"],[_.CONFLICT,"lock_conflict"],[_.DEPENDENCY_FAILED,"dependency_failed"]]);function Xn(e){let t=JL(e),n=t.length>0?t.split(" "):["<unknown>"],r=n[0],o=n[n.length-1],i="other";return HL.has(r)?i="setup":WL.has(r)?i="query":KL.has(r)?i="mutation":YL.has(r)?i="testing":r==="extension"?i="extension":XL.has(r)&&(i="diagnostics"),{command_path:t.length>0?t:"<unknown>",command_root:r,command_leaf:o,command_depth:n.length,command_family:i}}function od(e){if(e.ok)return;let t=fy(e.errorCode);if(t)return t;let n=(e.errorMessage??"").trim().toLowerCase();for(let o of QL)if(o.matches(n))return o.code;let r=Number.isFinite(e.exitCode)?Math.max(0,Math.trunc(e.exitCode)):void 0;return r!==void 0?ZL.get(r)??"command_failed":"command_failed"}function Jn(e){if(e.ok)return"success";let t=fy(e.errorCode);return t==="unknown_command"?"nonexistent_command":t==="unknown_option"?"invalid_option":t==="missing_required_option"?"missing_required_option":t==="missing_required_argument"?"missing_required_argument":t==="health_findings"?"health_findings":t==="validation_findings"?"validation_findings":e.errorCategory==="usage"?"invalid_usage":e.errorCategory==="validation"?"validation_failed":e.errorCategory==="conflict"?"conflict":e.errorCategory==="runtime"?"runtime_failed":"unknown_failed"}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ffe56aed-b794-5bf4-99fd-e3c5fe065163")}catch{}})();var Qn;function Nt(e,t,n){if(n===void 0)return;let r=e;typeof r.setAttribute=="function"&&r.setAttribute(t,n)}function _s(e,t,n){typeof n=="string"&&n.trim().length>0&&e.setTag(t,n)}function eP(e,t,n){e.setTag("pm.ok",t),e.setTag("pm.command_ok",t),typeof n?.exit_code=="number"&&(e.setTag("pm.exit_code",String(n.exit_code)),e.setTag("pm.command_exit_code",String(n.exit_code))),_s(e,"pm.error_code",n?.error_code),_s(e,"pm.error_category",n?.error_category),_s(e,"pm.command_resolution",n?.command_resolution),_s(e,"pm.resolution_stage",n?.resolution_stage)}function tP(e,t,n,r){Nt(e,"pm.ok",t),Nt(e,"pm.command_ok",t),Nt(e,"pm.exit_code",n),Nt(e,"pm.command_exit_code",n),Nt(e,"pm.error_code",r?.error_code),Nt(e,"pm.error_category",r?.error_category),Nt(e,"pm.command_resolution",r?.command_resolution),Nt(e,"pm.resolution_stage",r?.resolution_stage)}function nP(e,t,n,r){let o=un();if(!o)return;let i=Xn(e);o.setTag("pm.command",e),o.setTag("pm.command_root",i.command_root),o.setTag("pm.command_family",i.command_family),typeof r?.source_context=="string"&&r.source_context.trim().length>0&&o.setTag("pm.source_context",r.source_context);let s=t.map(a=>a.startsWith("--")?a.split("=")[0]:a);o.setContext("pm.command",{name:e,root:i.command_root,leaf:i.command_leaf,family:i.command_family,args:s,option_keys:Object.keys(n).sort(),source_context:r?.source_context,source_context_source:r?.source_context_source}),o.addBreadcrumb({category:"pm.command",message:`pm ${e}`,level:"info",data:{args:s,command_root:i.command_root,command_family:i.command_family,source_context:r?.source_context}})}function rP(e){let t=un();t&&(Qn=t.startInactiveSpan({op:"pm.command",name:`pm ${e}`,forceTransaction:!0}))}function oP(e,t,n){if(!Qn)return;let r=e?"true":"false",o=typeof n?.exit_code=="number"?String(n.exit_code):void 0,i=un();i&&eP(i,r,n),tP(Qn,r,o,n),Qn.setStatus(e?{code:1}:{code:2,message:t??"command_failed"}),Qn.end(),Qn=void 0}var iP="unclassified_runtime_error";function sP(e){let t=typeof e=="object"&&e!==null?e:void 0,n=typeof t?.exitCode=="number",r=n?Math.trunc(t?.exitCode):_.GENERIC_FAILURE;return{error_code:typeof t?.code=="string"&&t.code.length>0&&n?t?.code:iP,exit_code:r}}function aP(e){let t=sP(e);return{"pm.error_code":t.error_code,"pm.exit_code":String(t.exit_code)}}function lP(e){if(!dP(e))return;let t=un();if(!t)return;let n=aP(e);if(e instanceof Error){let r={};"exitCode"in e&&typeof e.exitCode=="number"&&(r.exit_code=e.exitCode),"context"in e&&typeof e.context=="object"&&(r.error_context=e.context),t.captureException(e,{extra:r,tags:n})}else t.captureException(new Error(String(e)),{tags:n})}function cP(e){let t=un();if(!t)return;let n=e.command_resolution??Jn({ok:!1,errorCode:e.error_code,errorCategory:e.error_category}),r=e.resolution_stage??"unknown",o={"pm.command":e.command,"pm.error_code":e.error_code,"pm.error_category":e.error_category,"pm.exit_code":e.exit_code,"pm.error_message":e.error_message,"pm.command_resolution":n,"pm.resolution_stage":r,"pm.source_context":e.source_context??""},i=t.logger;if(i&&typeof i.warn=="function"){i.warn("pm_cli_usage_error",o);return}t.captureMessage(`pm_cli_usage_error:${e.error_code}`,{level:"warning",tags:{"pm.command":e.command,"pm.error_code":e.error_code,"pm.error_category":e.error_category,"pm.exit_code":String(e.exit_code),"pm.command_resolution":n,"pm.resolution_stage":r,"pm.source_context":e.source_context??"unknown"},extra:o})}function dP(e){if(e instanceof b||e instanceof Error&&e.name==="AbortError"&&/(?:ctrl\+c|sigint|user[- ]initiated)/i.test(e.message))return!1;if(typeof e=="object"&&e!==null&&"exitCode"in e&&typeof e.exitCode=="number"){if(e instanceof Error&&e.name==="CommandError")return!1;let t=Math.trunc(e.exitCode);return!new Set([_.SUCCESS,_.USAGE,_.NOT_FOUND,_.CONFLICT]).has(t)}return!0}async function uP(e=3e3){let t=un();if(t)try{await t.flush(e)}catch{}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7775a1f2-5167-5853-a2c5-a44d46f8e80e")}catch{}})();var fP=/\b(?:gh[pousr]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{20,})\b/,pP=/\bnpm_[A-Za-z0-9]{36}\b/,mP=/\bxox[baprs]-(?=[A-Za-z0-9-]{20,80}\b)(?=[A-Za-z0-9-]*\d)[A-Za-z0-9-]{20,80}\b/,gP=/-----BEGIN (?:[A-Z0-9]+ )?PRIVATE KEY-----/,_P=/\b(?:AKIA|ASIA)[A-Z0-9]{16}\b/,py=/\b(?:token|secret|password|passwd|api[_-]?key)\s*[:=]\s*["']?([A-Za-z0-9+/=_-]{24,})/gi,yP=[{action:"append",history_scope:"item"},{action:"claim",history_scope:"item"},{action:"close",history_scope:"item"},{action:"close-many",history_scope:"item"},{action:"close-task",history_scope:"item"},{action:"comments",history_scope:"conditional"},{action:"config",history_scope:"conditional"},{action:"copy",history_scope:"item"},{action:"create",history_scope:"item"},{action:"delete",history_scope:"item"},{action:"deps",history_scope:"conditional"},{action:"discover",history_scope:"item"},{action:"docs",history_scope:"conditional"},{action:"files",history_scope:"conditional"},{action:"focus",history_scope:"conditional"},{action:"gc",history_scope:"conditional"},{action:"history-compact",history_scope:"history"},{action:"history-author-acknowledge",history_scope:"workspace"},{action:"history-redact",history_scope:"history"},{action:"history-repair",history_scope:"history"},{action:"init",history_scope:"workspace"},{action:"install",history_scope:"conditional"},{action:"learnings",history_scope:"conditional"},{action:"notes",history_scope:"conditional"},{action:"package",history_scope:"conditional"},{action:"pause-task",history_scope:"item"},{action:"plan",history_scope:"conditional"},{action:"profile",history_scope:"conditional"},{action:"release",history_scope:"item"},{action:"restore",history_scope:"item"},{action:"schema",history_scope:"conditional"},{action:"start-task",history_scope:"item"},{action:"templates",history_scope:"conditional"},{action:"test",history_scope:"conditional"},{action:"test-all",history_scope:"conditional"},{action:"update",history_scope:"item"},{action:"update-many",history_scope:"item"},{action:"upgrade",history_scope:"conditional"}],sd=new Map(yP.map(e=>[e.action,e]));function hP(e){let t=new Map;for(let r of e)t.set(r,(t.get(r)??0)+1);let n=0;for(let r of t.values()){let o=r/e.length;n-=o*Math.log2(o)}return n}function id(e,t="$",n=new WeakSet){return typeof e=="string"?[{path:t,value:e}]:typeof e!="object"||e===null?[]:n.has(e)?[]:(n.add(e),Array.isArray(e)?e.flatMap((r,o)=>id(r,`${t}[${o}]`,n)):Object.entries(e).flatMap(([r,o])=>id(o,`${t}.${r}`,n)))}function my(e){let t=[];for(let n of id(e)){fP.test(n.value)&&t.push({rule:"github_token",path:n.path}),pP.test(n.value)&&t.push({rule:"npm_token",path:n.path}),mP.test(n.value)&&t.push({rule:"slack_token",path:n.path}),gP.test(n.value)&&t.push({rule:"private_key",path:n.path}),_P.test(n.value)&&t.push({rule:"aws_access_key",path:n.path}),py.lastIndex=0;for(let r of n.value.matchAll(py)){let o=r[1];if(hP(o)>=3.5){t.push({rule:"high_entropy_assignment",path:n.path});break}}}return t.filter((n,r,o)=>o.findIndex(i=>i.rule===n.rule&&i.path===n.path)===r)}function bP(e){let t=e.author.trim()||"unknown";if(e.settings.require_attributed_author&&t.toLowerCase()==="unknown")throw new b("Mutation author is required by workspace policy.",_.USAGE,{code:"mutation_author_required",required:"Pass --author <id>, set PM_AUTHOR, or configure author_default.",nextSteps:["Retry with --author <stable-agent-id>.","Set PM_AUTHOR for this agent session."]});if(e.settings.secret_guard==="off")return{author:t,findings:[],warnings:[],override_applied:!1};let n;try{n=my(e.payload)}catch{return{author:t,findings:[],warnings:["secret_guard_scan_failed_open"],override_applied:!1}}if(n.length===0)return{author:t,findings:n,warnings:[],override_applied:!1};let r=[...new Set(n.map(o=>o.rule))].sort().join(",");if(e.settings.secret_guard==="block"&&e.force!==!0)throw new b(`Mutation blocked by secret guard (${r}). No detected value was logged.`,_.CONFLICT,{code:"mutation_secret_guard_blocked",required:"Remove the credential-shaped content or retry with --force after explicit review.",nextSteps:["Replace the value with a secret-manager reference.","Use pm history-redact if equivalent content already entered history."],recovery:{recovery_mode:"compact",attempted_command:"pm <mutation> [REDACTED]",normalized_args:["[REDACTED]"],suggested_retry:"Remove credential-shaped content, then retry the mutation."}});return{author:t,findings:n,warnings:[`secret_guard_detected:${n.length}:rules=${r}`,...e.settings.secret_guard==="block"&&e.force===!0?["secret_guard_force_override"]:[]],override_applied:e.settings.secret_guard==="block"&&e.force===!0}}function wP(e){return sd.has(e.trim().toLowerCase())}function EP(){return[...sd.keys()].sort((e,t)=>e.localeCompare(t))}function w5(e){return sd.get(e.trim().toLowerCase())}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3ad30a32-0f83-5473-b0a3-349e271d8378")}catch{}})();function TP(e){return e.trim().toLowerCase().replace(/\s+/g," ")}function T5(e){return TP(e).split(/[^a-z0-9]+/).filter(t=>t.length>0)}function ys(e,t){if(e.length===0&&t.length===0)return 1;if(e.length===0||t.length===0)return 0;let n=new Set(e),r=new Set(t),o=0;for(let s of n)r.has(s)&&(o+=1);let i=new Set([...n,...r]).size;return o/i}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="dff9b113-2b29-5154-afbf-f191f2f556a6")}catch{}})();var vP=/\b[a-z][a-z0-9]*-\d+(?:-[a-z0-9]+)*\b/giu;function ad(e){return e.trim().toLowerCase().replace(/\s+/g," ")}function _y(e){return[...new Set(ad(e).match(/[\p{L}\p{N}]+/gu)??[])]}function gy(e){let t=ad(e);return{normalized:t,tokens:_y(t),issueCodes:[...new Set(t.match(vP)?.map(n=>n.toLowerCase())??[])]}}function AP(e,t){return SP(gy(e),gy(t))}function SP(e,t){if(e.normalized===t.normalized)return{score:1,reason:"exact_title"};let n=new Set(e.issueCodes);return t.issueCodes.some(r=>n.has(r))?{score:.99,reason:"issue_code"}:{score:ys(e.tokens,t.tokens),reason:"title_token_jaccard"}}import kP from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="376bb9d2-e202-57e7-86c8-d70a7d3fa7ab")}catch{}})();function hs(e){return(e??"in_progress").trim().toLowerCase().replaceAll("-","_")}function xP(e,t){return[e.updated_at,t].map(r=>({value:r,time:Date.parse(r??"")})).filter(r=>typeof r.value=="string"&&Number.isFinite(r.time)).sort((r,o)=>o.time-r.time)[0]?.value??e.updated_at}function yy(e,t){let n=Math.max(1,Math.trunc(t.threshold_hours)),r=(t.now??new Date).getTime(),o=hs(t.in_progress_status),i=[];for(let s of e){if(hs(String(s.status))!==o||(s.assignee?.trim().length??0)>0)continue;let a=xP(s,t.last_history_activity?.(s)),l=Date.parse(a);if(!Number.isFinite(l))continue;let c=Math.max(0,Math.floor((r-l)/36e5));c>=n&&i.push({id:s.id,last_activity_at:a,age_hours:c})}return i.sort((s,a)=>a.age_hours-s.age_hours||s.id.localeCompare(a.id)),{threshold_hours:n,count:i.length,items:i,remediation:"Claim active work with `pm claim <id>` or return abandoned work to open with `pm update <id> --status open`."}}async function CP(e,t,n){let r=new Map;return await Promise.all(t.filter(o=>hs(String(o.status))===hs(n.in_progress_status)&&(o.assignee?.trim().length??0)===0).map(async o=>{let i;try{i=await Tt(kP.join(e,"history",`${o.id}.jsonl`),o.id)}catch{return}let s=i.map(a=>a.ts).filter(a=>Number.isFinite(Date.parse(a))).sort((a,l)=>Date.parse(l)-Date.parse(a))[0];s&&r.set(o.id,s)})),yy(t,{...n,last_history_activity:o=>r.get(o.id)})}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c43dd9f2-78ac-5c22-970a-0016a06b87b3")}catch{}})();var OP=Object.freeze({"<":"<",">":">",""":'"',"'":"'","&":"&"}),IP=/&(?:lt|gt|quot|#39|amp);/g;function RP(e){return typeof e!="string"||!e.includes("<")&&!e.includes(">")?e:e.replace(IP,t=>OP[t])}function NP(e){return ld(e,new WeakMap)}function ld(e,t){if(typeof e=="string")return RP(e);if(Array.isArray(e)){if(t.has(e))return t.get(e);let n=[];t.set(e,n);for(let r of e)n.push(ld(r,t));return n}if(e!==null&&typeof e=="object"){if(!DP(e))return e;if(t.has(e))return t.get(e);let n=e,r=Object.create(Object.getPrototypeOf(e));t.set(e,r);for(let[o,i]of Object.entries(n))Object.defineProperty(r,o,{value:ld(i,t),enumerable:!0,writable:!0,configurable:!0});return r}return e}function DP(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0ce743d1-917a-5c96-b038-c95e3922bc48")}catch{}})();function LP(e){let t=null;return()=>(t??=e(),t)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="868dfae8-2575-5d5f-8425-c7e68aefdc84")}catch{}})();function hy(e){return e.split(/[\s,|]+/).map(t=>t.trim()).filter(t=>t.startsWith("--"))}function PP(e){return hy(e)[0]??null}function MP(e,t){let n=PP(t);if(n===null)return!1;let r=o=>o.slice(2).replaceAll("-","_");return hy(e).some(o=>!o.slice(2).includes("-")||n===o?!1:r(n)===r(o))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4ecab833-db06-5baa-bfe6-d28b4c97f85a")}catch{}})();function FP(e,t){if(e==null)return[];let n=t?.separators??/,/,o=e.split(n).map(a=>a.trim()).filter(a=>a.length>0),s=t?.unique!==!1?Array.from(new Set(o)):o;return t?.sort===!0?[...s].sort():s}import by from"node:fs/promises";import bs from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4baf0ef3-2412-51cf-9ade-18b5c6e610d1")}catch{}})();function $P(e){return"json_markdown"}function wy(e,t){return bs.relative(e,t).replaceAll("\\","/")}function jP(e){return String(e).replaceAll(/[^a-zA-Z0-9._-]+/g,"_").slice(0,120)}async function UP(e,t,n="item_format:migrate",r=se,o){if(t!=="toon")throw new Error("Only toon item-format migration targets are supported. Markdown item files are legacy read-only input.");let i=new Set,s=new Set,a=[],l=0,c=$P(t),d=Object.entries(r);for(let[u,p]of d){let f=bs.join(e,p),y=[];try{y=await by.readdir(f)}catch{continue}let g=new Map;for(let E of y){let O=bs.join(f,E),U=dr(O);if(!U)continue;let z=bs.extname(E),ie=E.slice(0,E.length-z.length).trim();if(ie.length===0)continue;let Le=g.get(ie)??{};Le[U]=O,g.set(ie,Le)}let h=[...g.keys()].sort((E,O)=>E.localeCompare(O));for(let E of h){let O=g.get(E);l+=1;let U=O[c];if(!U)continue;let z=O[t]??U,ie=z===O[t]?t:c;try{let Le=await by.readFile(z,"utf8"),Pe=Yt(Le,{format:ie,schema:o,onWarning:au=>a.push(`item_format_migration_parse_warning:${E}:${au}`)}),Mt=wn(e,u,E,t,r),Ft=Or(Pe,{format:t,schema:o});await W(Mt)!==Ft&&(await P(Mt,Ft),a.push(...await le({path:Mt,scope:"project",op:n})),i.add(E)),await er(U),s.add(wy(e,U)),a.push(...await le({path:U,scope:"project",op:`${n}:remove`})),i.add(E)}catch(Le){a.push(`item_format_migration_skipped:${wy(e,z)}:${jP(Le)}`)}}}return{target_format:t,scanned:l,migrated:[...i].sort((u,p)=>u.localeCompare(p)),removed:[...s].sort((u,p)=>u.localeCompare(p)),warnings:a}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f280c1df-b134-57c3-91f6-cbf5a37e6e31")}catch{}})();var zP=new Set(["completed","superseded"]);function qP(e){return e!==void 0&&zP.has(e)}function GP(e){if(e.type.trim().toLowerCase()!=="plan")return!1;let t=e.plan_steps??[];return t.length>0&&t.every(n=>n.status==="completed")}import VP from"node:readline/promises";import{stdin as BP,stdout as Ey}from"node:process";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="6783b122-a1a8-5f86-9ac5-2c3e811622ed")}catch{}})();var HP="PM_TELEMETRY_PROMPT",Ty=new Set(["0","false","no","off"]),WP=new Set(["init","completion","completion-statuses","completion-tags","completion-types"]);function KP(e){return typeof e!="string"?!1:Ty.has(e.trim().toLowerCase())}function YP(e){if(typeof e!="string")return!1;let t=e.trim().toLowerCase();return t.length===0?!1:!Ty.has(t)}function XP(e,t){if(t.json===!0||t.quiet===!0||process.stdin.isTTY!==!0||process.stdout.isTTY!==!0||KP(process.env[HP])||YP(process.env.CI))return!0;let n=e.trim().toLowerCase();return n.length===0?!0:WP.has(n)}function JP(e){let t=e.trim().toLowerCase();return!(t==="n"||t==="no")}async function QP(e){let n=`pm telemetry helps improve reliability and usage diagnostics.
|
|
177
|
+
It is enabled by default and can be changed anytime via:
|
|
178
|
+
pm config global set telemetry-tracking --policy disabled
|
|
179
|
+
Enable telemetry now? [${e?"Y/n":"y/N"}] `,r=VP.createInterface({input:BP,output:Ey});try{let o=await r.question(n);return o.trim().length===0?e:JP(o)}finally{r.close()}}async function ZP(e,t){if(!XP(e,t))try{let n=mt(process.cwd()),r=await He(n);if(r.telemetry.first_run_prompt_completed)return;let o=await QP(r.telemetry.enabled);r.telemetry.enabled=o,r.telemetry.first_run_prompt_completed=!0,await qr(n,r,"telemetry:first_run_prompt"),Ey.write(`Telemetry ${o?"enabled":"disabled"} for this CLI install. Update any time with pm config global set telemetry-tracking --policy ${o?"disabled":"enabled"}.
|
|
180
|
+
`)}catch{}}import Ze from"node:crypto";import{spawn as eM}from"node:child_process";import{mkdirSync as cd,rmSync as tM,statSync as Ry}from"node:fs";import{mkdir as dd,readdir as nM,rm as _d,stat as Ny}from"node:fs/promises";import yd from"node:os";import Se from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="fea9d81b-3deb-51f4-9ec3-76396ae1307d")}catch{}})();var rM=Se.join("runtime","telemetry","events.jsonl"),oM=Se.join("runtime","telemetry","state.json"),iM=Se.join("runtime","telemetry","otel-spans.jsonl"),sM=8,vy=500,Es=1,Ay=1,aM=100,lM=36e5,cM=3e4,Dy=5e3,dM=864e5,Ts=65536,Ly=6,Py=20,My=15,uM=8192,Fy=[25,50,100,200],fM=3600*1e3,$y=6e4,pM=6e4,mM="OTEL_EXPORTER_OTLP_TRACES_ENDPOINT",gM="OTEL_EXPORTER_OTLP_ENDPOINT",_M="OTEL_SERVICE_NAME",yM="PM_TELEMETRY_DISABLED",hM="PM_NO_TELEMETRY",Sy=new Set(["1","true","yes","on"]),bM="PM_TELEMETRY_OTEL_DISABLED",wM=new Set(["1","true","yes","on"]),EM="PM_TELEMETRY_INLINE_FLUSH",jy="PM_TELEMETRY_FLUSH_CHILD",TM="PM_TELEMETRY_SOURCE_CONTEXT",vM=["user","automation","test","dogfood"],ky=Promise.resolve(),xy=Promise.resolve();var AM=new Set(vM),SM=new Set(["1","true","yes","on"]),vs=Ze.randomUUID(),kM=["token","secret","password","passwd","api_key","apikey","authorization","cookie","session","credentials","bearer"],xM=new Set(["literal","literals","regex","regexes","replacement","replacements"]),Uy="(?:token|secret|password|passwd|api[_-]?key|apikey|authorization|cookie|session|credentials|bearer|literals?|regex(?:es)?|replacements?)",CM=new RegExp(`\\b(${Uy})\\s*([:=])\\s*([^\\s,;]+)`,"giu"),OM=new RegExp(`(--${Uy})(=|\\s+)([^\\s,;]+)`,"giu"),IM=/(^|[\s"'`(=])\/(?:[^\s"'`),;]+)/g,RM=/bearer\s+[a-z0-9._=-]+/giu,NM=/\b(?:10\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|172\.(?:1[6-9]|2\d|3[01])\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|192\.168\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d))\b/g;function to(e){return Se.join(e,rM)}function As(e){return Se.join(e,iM)}function DM(e){return Se.dirname(to(e))}function zy(e){return Se.join(e,oM)}function hd(e){return Se.join(e,"runtime","telemetry","flush.lock")}function qy(e){return Se.join(e,"runtime","telemetry","flush.spawn.lock")}function LM(){return Se.join(nt(import.meta.url,["../../.."]),"dist","cli","telemetry-flush.js")}function PM(){if(fd(process.env[EM])||fd(process.env[jy]))return!0;let e=(process.env.NODE_ENV??"").trim().toLowerCase();return typeof process.env.VITEST=="string"||typeof process.env.VITEST_WORKER_ID=="string"||e==="test"}async function MM(e){let t=await W(zy(e));if(!t||t.trim().length===0)return{};try{let n=JSON.parse(t);return typeof n!="object"||n===null||Array.isArray(n)?{}:n}catch{return{}}}async function Qe(e,t){try{let r={...await MM(e),...t},o=Object.fromEntries(Object.entries(r).filter(([,i])=>i!==void 0).sort((i,s)=>i[0].localeCompare(s[0])));await P(zy(e),`${JSON.stringify(o,null,2)}
|
|
181
|
+
`)}catch{}}function ud(e){let t=e.trim().toLowerCase().replaceAll("-","_").replaceAll(/[^a-z0-9_]+/g,"_"),n=t.split("_").filter(r=>r.length>0);return xM.has(t)||kM.some(r=>t===r||t.endsWith(`_${r}`)||n.includes(r))}function Gy(e){return e.replaceAll(CM,(n,r,o)=>`${r}${o}[redacted]`).replaceAll(OM,(n,r,o)=>`${r}${o}[redacted]`)}function Vy(e){return e.replaceAll(IM,(t,n)=>`${n}[redacted_path]`)}function By(e){let t=e>=65&&e<=90,n=e>=97&&e<=122,r=e>=48&&e<=57;return t||n||r}function Hy(e){if(!e)return!1;let t=e.charCodeAt(0);return By(t)?!0:e==="."||e==="_"||e==="%"||e==="+"||e==="-"}function Wy(e){if(!e)return!1;let t=e.charCodeAt(0);return By(t)?!0:e==="."||e==="-"}function FM(e){let t=e.indexOf("@");if(t<=0||t!==e.lastIndexOf("@")||t===e.length-1)return!1;let n=e.slice(0,t),r=e.slice(t+1),o=r.lastIndexOf(".");if(o<=0||o===r.length-1||r.length-(o+1)<2)return!1;for(let i of n)if(!Hy(i))return!1;for(let i of r)if(!Wy(i))return!1;return!0}function $M(e){let t="",n=0;for(;n<e.length;){let r=e.indexOf("@",n);if(r<0){t+=e.slice(n);break}let o=r-1;for(;o>=n&&Hy(e[o]);)o-=1;o+=1;let i=r+1;for(;i<e.length&&Wy(e[i]);)i+=1;let s=e.slice(o,i);if(FM(s)){t+=e.slice(n,o),t+="[redacted_email]",n=i;continue}t+=e.slice(n,r+1),n=r+1}return t}function Ky(e){return $M(e).replaceAll(RM,"bearer [redacted_token]").replaceAll(NM,"[redacted_ip]")}function jM(e){let t=Ky(e),n=Gy(t),r=Vy(n),o=r.trim();return o.startsWith("/")&&o.length>1?"[redacted_path]":r.length>512?`${r.slice(0,509)}...`:r}function UM(e){let t=Ky(e),n=Gy(t),r=Vy(n),o=r.trim();return o.startsWith("/")&&o.length>1?"[redacted_path]":r.length>2048?`${r.slice(0,2045)}...`:r}function Q(e,t="redacted"){return t==="max"?UM(e):jM(e)}function fn(e,t,n="redacted",r=0){if(t&&ud(t))return"[redacted]";if(e==null)return e;if(typeof e=="string")return Q(e,n);if(typeof e=="number"||typeof e=="boolean")return e;if(r>=Ly)return"[depth_truncated]";if(Array.isArray(e))return e.slice(0,Py).map(o=>fn(o,void 0,n,r+1));if(typeof e=="object"){let o=e,i={};for(let[s,a]of Object.entries(o))i[s]=fn(a,s,n,r+1);return i}return String(e)}function Yy(e,t="redacted"){let n=[],r=!1;for(let o of e){let i=Q(o,t);if(r){n.push("[redacted]"),r=!1;continue}if(i.startsWith("--")){let s=i.slice(2),a=s.indexOf("=");if(a>=0){let l=s.slice(0,a),c=s.slice(a+1);ud(l)?n.push(`--${l}=[redacted]`):n.push(`--${l}=${Q(c,t)}`);continue}if(ud(s)){n.push(`--${s}`),r=!0;continue}}n.push(i)}return n}function Xy(e){let t=e?.trim().toLowerCase();return t==="minimal"||t==="redacted"||t==="max"?t:"redacted"}function fd(e){return SM.has((e??"").trim().toLowerCase())}function Jy(e){let t=typeof e=="string"?e.trim():"";return t.length>0?t:"0.0.0"}function bd(e){let t=e?.trim();return t&&t.length>0?t:void 0}function wd(e,t){return Number.isFinite(e)?Math.max(0,Math.trunc(e)):t?0:1}function Qy(e){if(!e.ok)return typeof e.errorCategory=="string"&&e.errorCategory.trim().length>0?e.errorCategory:typeof e.errorCode=="string"&&e.errorCode.trim().length>0?bo(e.errorCode):"unknown"}function Zy(e){let t=(process.env[TM]??"").trim().toLowerCase();if(AM.has(t))return{source_context:t,source_context_source:"env_override"};let n=(process.env.NODE_ENV??"").trim().toLowerCase();if(typeof process.env.VITEST=="string"||typeof process.env.VITEST_WORKER_ID=="string"||n==="test")return{source_context:"test",source_context_source:"inferred"};let r=process.stdin.isTTY!==!0||process.stdout.isTTY!==!0,o=fd(process.env.CI),i=e.json===!0||e.quiet===!0;return r||o||i?{source_context:"automation",source_context_source:"inferred"}:{source_context:"user",source_context_source:"inferred"}}function de(e,t){return Ze.createHash("sha256").update(`${e}:${t}`).digest("hex")}function Ed(e,t){let n=(El()??"").trim(),r=Ir({env:process.env,argv:process.argv}),o=r.harness!==void 0||r.model!==void 0;return e==="minimal"?{has_author_context:n.length>0,has_agent_context:o}:{...n.length>0?{author_context_hash:de(t,n)}:{},...r.harness?{agent_harness_hash:de(t,r.harness)}:{},...r.model?{agent_model_hash:de(t,r.model)}:{},...r.model_source?{agent_model_source:r.model_source}:{}}}function pd(e,t=0){if(e==null||typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(t>=Ly)return"[depth_truncated]";if(Array.isArray(e))return e.slice(0,Py).map(n=>pd(n,t+1));if(typeof e=="object"){let n=e,r={},o=Object.keys(n).sort((i,s)=>i.localeCompare(s));for(let i of o)r[i]=pd(n[i],t+1);return r}return String(e)}function md(e,t){return de(e,JSON.stringify(pd(t)))}function eh(e,t){return{hashes:t.map(n=>de(e,n)),digest:de(e,t.join("\0"))}}function th(e,t,n,r){let o=Q(typeof r=="string"?r:"","redacted"),i=typeof n=="string"&&n.length>0?n:"unknown_error",s=`${t}\0${i}\0${o}`;return de(e,s)}function Td(){return Sy.has((process.env[yM]??"").trim().toLowerCase())||Sy.has((process.env[hM]??"").trim().toLowerCase())}function zM(){if(wM.has((process.env[bM]??"").trim().toLowerCase()))return null;let e=(process.env[mM]??"").trim();if(e.length>0)try{return new URL(e).toString()}catch{return null}let t=(process.env[gM]??"").trim();if(t.length===0)return null;try{let n=new URL(t),r=n.pathname.replace(/\/+$/,"");return r.endsWith("/v1/traces")||(n.pathname=`${r.length===0?"":r}/v1/traces`),n.toString()}catch{return null}}function Cy(e){let t=Date.parse(e),n=Number.isNaN(t)?Date.now():t;return`${BigInt(n)*1000000n}`}function De(e,t){return{key:e,value:{stringValue:t}}}function qM(e,t){return{key:e,value:{boolValue:t}}}function Oy(e,t){return{key:e,value:{intValue:String(Math.max(0,Math.trunc(t)))}}}function GM(e,t,n,r){if(typeof e.otel_traces_endpoint!="string"||e.otel_traces_endpoint.trim().length===0||typeof e.otel_trace_id!="string"||e.otel_trace_id.length===0||typeof e.otel_span_id!="string"||e.otel_span_id.length===0)return null;let o=Q((process.env[_M]??"").trim()),i=o.length>0?o:"pm-cli",s=wd(t.exit_code,t.ok),a=bd(t.error_code),l=Qy({ok:t.ok,errorCode:a,errorCategory:t.error_category}),c=[De("pm.command",Q(e.command)),De("pm.version",e.pm_version),De("pm.source_context",e.source_context),De("pm.source_context_source",e.source_context_source),De("pm.installation_id",e.installation_id),De("pm.session_id",vs),De("pm.pm_root_hash",e.pm_root_hash),De("pm.cwd_hash",e.cwd_hash),qM("pm.ok",t.ok),Oy("pm.exit_code",s),Oy("pm.duration_ms",r)];typeof a=="string"&&c.push(De("pm.error_code",a)),typeof l=="string"&&c.push(De("pm.error_category",l)),typeof t.error=="string"&&t.error.trim().length>0&&c.push(De("pm.error",Q(t.error)));let d={resourceSpans:[{resource:{attributes:[De("service.name",i)]},scopeSpans:[{scope:{name:"pm-cli.telemetry",version:"1"},spans:[{traceId:e.otel_trace_id,spanId:e.otel_span_id,name:`pm.command.${Q(e.command)}`,kind:1,startTimeUnixNano:Cy(e.started_at),endTimeUnixNano:Cy(n),attributes:c,status:{code:t.ok?1:2,message:t.ok?"":Q(typeof t.error=="string"?t.error:"command_failed")}}]}]}]};return{endpoint:e.otel_traces_endpoint,payload:d}}function VM(e,t="redacted"){if(e==null)return{type:"nullish"};if(typeof e=="string")return{type:"string",value:Q(e,t)};if(typeof e=="number"||typeof e=="boolean")return{type:typeof e,value:e};if(Array.isArray(e))return{type:"array",length:e.length,sample:e.slice(0,5).map(n=>fn(n,void 0,t))};if(typeof e=="object"){let n=e,r=Object.keys(n).sort((s,a)=>s.localeCompare(a)),o={},i=0;for(let s of r.slice(0,25)){let a=fn(n[s],s,t),l=JSON.stringify(a).length;if(i+l>uM){o[s]="[preview_truncated]";break}i+=l,o[s]=a}return{type:"object",key_count:r.length,keys_preview:r.slice(0,50),preview:o}}return{type:typeof e,value:String(e)}}function BM(e){let{captureLevel:t,context:n,pmVersion:r,sourceContext:o,pmRootHash:i,cwdHash:s,installationId:a}=e,l=Xn(n.command),c=eh(a,n.args),d=de(a,`${n.command}\0${n.args.join("\0")}`),u=md(a,n.options),p=md(a,n.global),f=Ed(t,a);return t==="minimal"?{capture_level:t,pm_version:r,source_context:o.source_context,source_context_source:o.source_context_source,command_taxonomy:l,command_args_digest:c.digest,command_invocation_digest:d,command_options_digest:u,global_options_digest:p,...f}:{pm_version:r,source_context:o.source_context,source_context_source:o.source_context_source,command_taxonomy:l,...f,command_args:Yy(n.args,t),command_args_hashes:c.hashes,command_args_digest:c.digest,command_invocation_digest:d,command_options:fn(n.options,void 0,t),command_options_digest:u,global_options:fn(n.global,void 0,t),global_options_digest:p,pm_root_hash:i,cwd_hash:s,capture_level:t,runtime:{node:process.version,platform:process.platform,arch:process.arch,hostname_hash:de(a,yd.hostname()),stdin_tty:process.stdin.isTTY===!0,stdout_tty:process.stdout.isTTY===!0}}}function HM(e){let{captureLevel:t,pmVersion:n,sourceContext:r,outcome:o,durationMs:i,startedAt:s,command:a,installationId:l,commandTaxonomy:c,exitCode:d,errorCode:u,errorCategory:p,commandResolution:f,resolutionStage:y}=e,g=o.ok===!1?th(l,a,u,o.error):void 0,h=Ed(t,l);return t==="minimal"?{capture_level:t,pm_version:n,source_context:r.source_context,source_context_source:r.source_context_source,command_taxonomy:c,command_resolution:f,resolution_stage:y,ok:o.ok,exit_code:d,error_code:u,error_category:p,error:o.error?Q(o.error,"redacted"):void 0,error_fingerprint:g,duration_ms:i,...h}:{capture_level:t,pm_version:n,source_context:r.source_context,source_context_source:r.source_context_source,command_taxonomy:c,command_resolution:f,resolution_stage:y,...h,ok:o.ok,exit_code:d,error_code:u,error_category:p,error:o.error?Q(o.error,t):void 0,error_fingerprint:g,duration_ms:i,started_at:s,result_summary:VM(o.result,t)}}function WM(e){let{captureLevel:t,pmVersion:n,sourceContext:r,command:o,commandTaxonomy:i,commandResolution:s,resolutionStage:a,args:l,options:c,pmRootHash:d,cwdHash:u,installationId:p,errorCode:f,errorMessage:y,errorCategory:g,exitCode:h}=e,E=eh(p,l),O=de(p,o),U=md(p,c),z=th(p,o,f,y),ie=Ed(t,p);return t==="minimal"?{capture_level:t,pm_version:n,source_context:r.source_context,source_context_source:r.source_context_source,command_taxonomy:i,command_resolution:s,resolution_stage:a,attempted_command_digest:O,attempted_args_digest:E.digest,attempted_options_digest:U,error_code:f,error_category:g,exit_code:h,error:Q(y,"redacted"),error_fingerprint:z,...ie}:{capture_level:t,pm_version:n,source_context:r.source_context,source_context_source:r.source_context_source,command_taxonomy:i,command_resolution:s,resolution_stage:a,...ie,attempted_command:Q(o,t),attempted_command_digest:O,attempted_args:Yy(l,t),attempted_args_hashes:E.hashes,attempted_args_digest:E.digest,attempted_options:fn(c,void 0,t),attempted_options_digest:U,error_code:f,error_category:g,exit_code:h,error:Q(y,t),error_fingerprint:z,pm_root_hash:d,cwd_hash:u,runtime:{node:process.version,platform:process.platform,arch:process.arch,hostname_hash:de(p,yd.hostname()),stdin_tty:process.stdin.isTTY===!0,stdout_tty:process.stdout.isTTY===!0}}}async function vd(e){let t=await He(e),n=!1;return t.telemetry.installation_id.trim().length===0&&(t.telemetry.installation_id=Ze.randomUUID(),n=!0),n&&await qr(e,t,"telemetry:install_id"),{installationId:t.telemetry.installation_id,endpoint:t.telemetry.endpoint,retentionDays:Math.max(1,Math.trunc(t.telemetry.retention_days))}}async function Ad(e,t){let r=JSON.stringify({client_schema_version:Ay,event:t,attempts:0});if(r.length>Ts){let o={...t,payload:{...t.payload,result_summary:{truncated:!0,reason:"payload_size_exceeded",original_bytes:r.length}}};r=JSON.stringify({client_schema_version:Ay,event:o,attempts:0})}await no(async()=>{await ut(to(e),r)})}function nh(e){let t=[];for(let n of e.split(`
|
|
182
|
+
`)){let r=n.trim();if(r.length!==0)try{let o=JSON.parse(r);o&&typeof o=="object"&&o.event&&typeof o.event=="object"&&typeof o.attempts=="number"&&(o.client_schema_version===void 0||typeof o.client_schema_version=="number"&&Number.isFinite(o.client_schema_version))&&t.push(o)}catch{}}return t}function rh(e){let t=Math.min(cM*2**Math.max(e-1,0),lM);return new Date(Date.now()+t).toISOString()}function oh(e){if(typeof e!="string"||e.trim().length===0)return!0;let t=Date.parse(e);return Number.isNaN(t)?!0:t<=Date.now()}function KM(e){return oh(e.next_attempt_after)}function ih(e){let t=Number.isFinite(e)?Math.max(1,Math.trunc(e)):1;return Date.now()-t*dM}function YM(e,t){let n=e.event?.occurred_at;if(typeof n!="string"||n.trim().length===0)return!1;let r=Date.parse(n);return Number.isNaN(r)?!1:r<t}function Sd(e,t){let n=ih(t),r=[],o=0;for(let i of e){if(JSON.stringify(i).length>Ts||YM(i,n)||i.attempts>=My){o+=1;continue}r.push(i)}return{entries:r,prunedCount:o}}async function ws(e,t){let n=t.map(o=>JSON.stringify(o)).join(`
|
|
183
|
+
`),r=n.length>0?`${n}
|
|
184
|
+
`:"";for(let o=0;;o+=1)try{await P(to(e),r);return}catch(i){let s=Fy[o];if(s===void 0||!sh(i))throw i;await ah(s)}}function sh(e){if(typeof e!="object"||e===null||!("code"in e))return!1;let t=e.code;return t==="EACCES"||t==="EBUSY"||t==="EPERM"}function ah(e){return new Promise(t=>{setTimeout(t,e)})}async function XM(e,t){let n={id:Ze.randomUUID(),endpoint:t.endpoint,payload:t.payload,enqueued_at:X(),attempts:0},r=JSON.stringify(n);r.length>Ts||await no(async()=>{await ut(As(e),r)})}function JM(e){let t=JSON.stringify([e.endpoint,e.enqueued_at,e.payload]);return Ze.createHash("sha256").update(t).digest("hex").slice(0,32)}function lh(e){let t=[];for(let n of e.split(`
|
|
185
|
+
`)){let r=n.trim();if(r.length!==0)try{let o=JSON.parse(r);o&&typeof o=="object"&&typeof o.endpoint=="string"&&o.endpoint.trim().length>0&&"payload"in o&&typeof o.attempts=="number"&&Number.isFinite(o.attempts)&&((typeof o.id!="string"||o.id.length===0)&&(o.id=JM(o)),t.push(o))}catch{}}return t}function QM(e,t){if(typeof e.enqueued_at!="string"||e.enqueued_at.trim().length===0)return!1;let n=Date.parse(e.enqueued_at);return Number.isNaN(n)?!1:n<t}function ch(e,t){let n=ih(t),r=[],o=0;for(let i of e){if(JSON.stringify(i).length>Ts||QM(i,n)||i.attempts>=My){o+=1;continue}r.push(i)}if(r.length>vy){let i=r.length-vy;return o+=i,{entries:r.slice(i),prunedCount:o}}return{entries:r,prunedCount:o}}async function ZM(e,t){let n=t.map(o=>JSON.stringify(o)).join(`
|
|
186
|
+
`),r=n.length>0?`${n}
|
|
187
|
+
`:"";for(let o=0;;o+=1)try{await P(As(e),r);return}catch(i){let s=Fy[o];if(s===void 0||!sh(i))throw i;await ah(s)}}async function Iy(e,t,n,r){return no(async()=>{let o=await W(As(e)),i=o===null?[]:lh(o),s=[];for(let l of i){if(n.has(l.id))continue;let c=r.get(l.id);s.push(c?{...l,attempts:c.attempts,next_attempt_after:c.next_attempt_after}:l)}let{entries:a}=ch(s,t);return await ZM(e,a),a.length})}async function eF(e,t){let n=await W(As(e));if(n===null||n.trim().length===0){await Qe(e,{pending_otel_spans:0});return}let r=lh(n),{entries:o,prunedCount:i}=ch(r,t),s=o.filter(y=>oh(y.next_attempt_after)).slice(0,sM);if(s.length===0){let y=i>0?await Iy(e,t,new Set,new Map):o.length;await Qe(e,{pending_otel_spans:y});return}let a=X(),l=new Set,c=new Map,d=0,u;await Promise.all(s.map(async y=>{try{let g=await fetch(y.endpoint,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(y.payload),signal:AbortSignal.timeout(Dy)});if(!g.ok)throw new Error(`local_otel_export_http_${g.status}`);l.add(y.id),d+=1}catch(g){u=g instanceof Error?Q(g.message,"redacted"):"local_otel_export_failed";let h=y.attempts+1;c.set(y.id,{attempts:h,next_attempt_after:rh(h)})}}));let p=await Iy(e,t,l,c),f={pending_otel_spans:p,last_otel_attempt_at:a};d>0&&(f.last_otel_success_at=a),u!==void 0?(f.last_otel_failure_at=a,f.last_otel_failure_error=u):p===0&&(f.last_otel_failure_at=void 0,f.last_otel_failure_error=void 0),await Qe(e,f)}async function dh(e,t,n){try{await oF(e,t,n)}catch{}try{await eF(e,n)}catch{}}async function tF(e,t=fM){try{let n=DM(e),r=await nM(n,{withFileTypes:!0}),o=Date.now()-Math.max(0,t);await Promise.all(r.filter(i=>i.isFile()&&/^\.events\.jsonl\.\d+\.\d+\.[a-f0-9]+\.tmp$/.test(i.name)).map(async i=>{let s=Se.join(n,i.name);(await Ny(s)).mtimeMs<o&&await _d(s,{force:!0})}))}catch{}}async function no(e){let t=xy.catch(()=>{}).then(e);return xy=t.catch(()=>{}),t}async function kd(e){let t=await W(to(e));return t===null||t.trim().length===0?[]:nh(t)}async function nF(e,t,n){return no(async()=>{let r=await kd(e),{entries:o}=Sd(r,n),i=o.filter(s=>!t.has(s.event.event_id));return await ws(e,i),i})}async function rF(e,t,n,r){return no(async()=>{let o=await kd(e),{entries:i}=Sd(o,r),s=i.map(a=>{if(!t.has(a.event.event_id))return a;let l=a.attempts+1;return{...a,attempts:l,last_attempt_at:n,next_attempt_after:rh(l)}});return await ws(e,s),s})}async function oF(e,t,n){await tF(e);let r=t.trim();if(r.length===0)return;let o=await W(to(e));if(o===null||o.trim().length===0){await Qe(e,{endpoint:r,queue_entries:0});return}let i=nh(o);if(i.length===0){await Qe(e,{endpoint:r,queue_entries:0});return}let{entries:s,prunedCount:a}=Sd(i,n);if(s.length===0){await ws(e,[]),await Qe(e,{endpoint:r,queue_entries:0});return}let l=s.filter(f=>KM(f)).slice(0,aM);if(l.length===0){a>0&&await ws(e,s),await Qe(e,{endpoint:r,queue_entries:s.length});return}let c=new Set(l.map(f=>f.event.event_id)),d=X(),u={"content-type":"application/json"},p=process.env.PM_TELEMETRY_INGEST_KEY?.trim();p&&(u["x-pm-telemetry-key"]=p);try{let f=await fetch(r,{method:"POST",headers:u,body:JSON.stringify({schema_version:Es,events:l.map(y=>y.event)}),signal:AbortSignal.timeout(Dy)});if(!f.ok)throw new Error(`telemetry_flush_http_${f.status}`)}catch(f){let y=await rF(e,c,d,n),g=f instanceof Error?Q(f.message,"redacted"):"telemetry_flush_failed";await Qe(e,{endpoint:r,queue_entries:y.length,last_attempted_flush_at:d,last_failed_flush_at:d,last_failed_flush_error:g});return}try{let f=await nF(e,c,n);await Qe(e,{endpoint:r,queue_entries:f.length,last_attempted_flush_at:d,last_successful_flush_at:d,last_failed_flush_at:void 0,last_failed_flush_error:void 0})}catch(f){let y=f instanceof Error?Q(f.message,"redacted"):"telemetry_flush_failed",g=await kd(e).catch(()=>s);await Qe(e,{endpoint:r,queue_entries:g.length,last_attempted_flush_at:d,last_failed_flush_at:d,last_failed_flush_error:y})}}async function iF(e){let t=hd(e);await dd(Se.dirname(t),{recursive:!0});try{return await dd(t),!0}catch(n){if(typeof n!="object"||n===null||!("code"in n)||n.code!=="EEXIST")throw n}try{let n=await Ny(t);return Date.now()-n.mtimeMs<$y?!1:(await _d(t,{recursive:!0,force:!0}),await dd(t),!0)}catch{return!1}}function sF(e,t){try{return Date.now()-Ry(e).mtimeMs<t}catch{return!1}}function uh(e){try{tM(e,{recursive:!0,force:!0})}catch{}}function fh(e){if(typeof e!="object"||e===null||!("code"in e))return;let t=e.code;return typeof t=="string"?t:void 0}function aF(e){try{return cd(e),!0}catch(t){let n=fh(t);if(n==="EEXIST"||n!=="ENOENT")return!1}try{return cd(Se.dirname(e),{recursive:!0}),cd(e),!0}catch{return!1}}function lF(e){if(sF(hd(e),$y))return!1;let t=qy(e);try{if(Date.now()-Ry(t).mtimeMs<pM)return!1;uh(t)}catch(n){if(fh(n)!=="ENOENT")return!1}return aF(t)}function gd(e){uh(qy(e))}async function cF(e,t,n){let r=await iF(e);if(gd(e),!!r)try{await dh(e,t,n)}finally{try{await _d(hd(e),{recursive:!0,force:!0})}catch{}}}function xd(e,t,n){if(PM()){let r=ky,o=dh(e,t,n);ky=Promise.allSettled([r,o]).then(()=>{});return}try{if(!lF(e))return;let o=eM(process.execPath,[LM()],{detached:!0,stdio:"ignore",cwd:yd.tmpdir(),env:{...process.env,PM_GLOBAL_PATH:e,[jy]:"1"}});o.on("error",()=>{gd(e)}),o.unref()}catch{gd(e)}}async function lH(e=mt(process.cwd())){if(!Td())try{if(!(await He(e)).telemetry.enabled)return;let{endpoint:n,retentionDays:r}=await vd(e);await cF(e,n,r)}catch{}}async function dF(e){if(Td()||e.command==="telemetry"&&e.args.some(t=>t.trim().toLowerCase()==="clear"))return null;try{let t=mt(process.cwd()),n=await He(t);if(!n.telemetry.enabled)return null;let r=Xy(n.telemetry.capture_level),{installationId:o,endpoint:i,retentionDays:s}=await vd(t),a=Jy(e.pm_version),l=Zy(e.global),c=de(o,e.pm_root),d=de(o,process.cwd()),u=zM(),p=X(),f={schema_version:Es,event_id:Ze.randomUUID(),event_type:"command_start",occurred_at:p,installation_id:o,session_id:vs,command:e.command,payload:BM({captureLevel:r,context:e,pmVersion:a,sourceContext:l,pmRootHash:c,cwdHash:d,installationId:o})};await Ad(t,f),xd(t,i,s);let y=Xn(e.command);return{started_at:p,started_at_ms:Date.now(),command:e.command,command_taxonomy:y,pm_version:a,source_context:l.source_context,source_context_source:l.source_context_source,installation_id:o,pm_root_hash:c,cwd_hash:d,endpoint:i,retention_days:s,global_pm_root:t,capture_level:r,otel_traces_endpoint:u??void 0,otel_trace_id:u?Ze.randomBytes(16).toString("hex"):void 0,otel_span_id:u?Ze.randomBytes(8).toString("hex"):void 0}}catch{return null}}async function uF(e,t){if(e)try{let n=X(),r=Math.max(0,Date.now()-e.started_at_ms),o=bd(od({ok:t.ok,errorCode:t.error_code,errorMessage:t.error,exitCode:t.exit_code})),i=Qy({ok:t.ok,errorCode:o,errorCategory:t.error_category}),s=wd(t.exit_code,t.ok),a=t.command_resolution??Jn({ok:t.ok,errorCode:o,errorCategory:i}),l=t.resolution_stage??"execute",c={schema_version:Es,event_id:Ze.randomUUID(),event_type:"command_finish",occurred_at:n,installation_id:e.installation_id,session_id:vs,command:e.command,payload:HM({captureLevel:e.capture_level,pmVersion:e.pm_version,sourceContext:{source_context:e.source_context,source_context_source:e.source_context_source},outcome:t,durationMs:r,startedAt:e.started_at,command:e.command,installationId:e.installation_id,commandTaxonomy:e.command_taxonomy,exitCode:s,errorCode:o,errorCategory:i,commandResolution:a,resolutionStage:l})};await Ad(e.global_pm_root,c);let d=GM(e,{...t,exit_code:s,error_code:o,error_category:i},n,r);d&&await XM(e.global_pm_root,d),xd(e.global_pm_root,e.endpoint,e.retention_days)}catch{}}async function fF(e){if(!Td())try{let t=mt(process.cwd()),n=await He(t);if(!n.telemetry.enabled)return;let r=Xy(n.telemetry.capture_level),{installationId:o,endpoint:i,retentionDays:s}=await vd(t),a=Jy(e.pm_version),l=Zy(e.global),c=de(o,e.pm_root),d=de(o,process.cwd()),u=X(),p=bd(od({ok:!1,errorCode:e.error_code,errorMessage:e.error_message,exitCode:e.exit_code})),f=e.error_category??bo(p),y=wd(e.exit_code,!1),g=e.command.trim().length>0?e.command:"<unknown>",h=Xn(g),E=e.command_resolution??Jn({ok:!1,errorCode:p,errorCategory:f}),O=e.resolution_stage??"unknown",U={schema_version:Es,event_id:Ze.randomUUID(),event_type:"command_error",occurred_at:u,installation_id:o,session_id:vs,command:Q(g,"redacted"),payload:WM({captureLevel:r,pmVersion:a,sourceContext:l,command:g,commandTaxonomy:h,commandResolution:E,resolutionStage:O,args:e.args,options:e.options,pmRootHash:c,cwdHash:d,installationId:o,errorCode:p,errorCategory:f,exitCode:y,errorMessage:e.error_message})};await Ad(t,U),xd(t,i,s)}catch{}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="16d4bbae-03b7-5316-8e26-77f33affdcf6")}catch{}})();(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="940f11a8-f40d-5169-ba74-e91920d32c4a")}catch{}})();var pF={fetch:"get",read:"get",show:"get",view:"get",comment:"comments",note:"notes",learning:"learnings"};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3b9b9ebe-8d98-5983-8257-b7b77c7e6194")}catch{}})();var Cd=[{target:"status",keys:["status"]},{target:"type",keys:["type"]},{target:"tag",keys:["tag","tags"]},{target:"priority",keys:["priority"]},{target:"deadlineBefore",keys:["deadlineBefore"]},{target:"deadlineAfter",keys:["deadlineAfter"]},{target:"updatedAfter",keys:["updatedAfter"]},{target:"updatedBefore",keys:["updatedBefore"]},{target:"createdAfter",keys:["createdAfter"]},{target:"createdBefore",keys:["createdBefore"]},{target:"ids",keys:["ids"]},{target:"assignee",keys:["assignee"]},{target:"assigneeFilter",keys:["assigneeFilter","assignee_filter"]},{target:"parent",keys:["parent"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"limit",keys:["limit"]},{target:"offset",keys:["offset"]},{target:"after",keys:["after"]},{target:"fields",keys:["fields"]},{target:"sort",keys:["sort"]},{target:"order",keys:["order"]},{target:"treeDepth",keys:["treeDepth","tree_depth"]}],Ss=[{target:"mode",keys:["mode"]},{target:"matchMode",keys:["matchMode","match_mode"]},{target:"minScore",keys:["minScore","min_score"]},{target:"semanticWeight",keys:["semanticWeight","semantic_weight"]},{target:"status",keys:["status"]},{target:"type",keys:["type"]},{target:"tag",keys:["tag","tags"]},{target:"priority",keys:["priority"]},{target:"deadlineBefore",keys:["deadlineBefore"]},{target:"deadlineAfter",keys:["deadlineAfter"]},{target:"updatedAfter",keys:["updatedAfter"]},{target:"updatedBefore",keys:["updatedBefore"]},{target:"createdAfter",keys:["createdAfter"]},{target:"createdBefore",keys:["createdBefore"]},{target:"assignee",keys:["assignee"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"parent",keys:["parent"]},{target:"fields",keys:["fields"]},{target:"limit",keys:["limit"]},{target:"after",keys:["after"]}],mF=[{target:"view",keys:["view"]},{target:"date",keys:["date"]},{target:"from",keys:["from"]},{target:"to",keys:["to"]},{target:"limit",keys:["limit"]},{target:"type",keys:["type"]},{target:"tag",keys:["tag"]},{target:"priority",keys:["priority"]},{target:"status",keys:["status"]},{target:"assignee",keys:["assignee"]},{target:"assigneeFilter",keys:["assigneeFilter","assignee_filter"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"include",keys:["include"]},{target:"recurrenceLookaheadDays",keys:["recurrenceLookaheadDays","recurrence_lookahead_days"]},{target:"recurrenceLookbackDays",keys:["recurrenceLookbackDays","recurrence_lookback_days"]},{target:"occurrenceLimit",keys:["occurrenceLimit","occurrence_limit"]},{target:"format",keys:["format"]}],ks=[{target:"date",keys:["date"]},{target:"from",keys:["from"]},{target:"to",keys:["to"]},{target:"type",keys:["type"]},{target:"tag",keys:["tag"]},{target:"priority",keys:["priority"]},{target:"assignee",keys:["assignee"]},{target:"assigneeFilter",keys:["assigneeFilter","assignee_filter"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"parent",keys:["parent"]},{target:"limit",keys:["limit","maxItems","max_items"]},{target:"after",keys:["after"]},{target:"format",keys:["format"]},{target:"depth",keys:["depth"]},{target:"fields",keys:["fields"]},{target:"activityLimit",keys:["activityLimit","activity_limit"]},{target:"staleThreshold",keys:["staleThreshold","stale_threshold"]},{target:"tokenBudget",keys:["tokenBudget","token_budget"]}],xs=[{target:"type",keys:["type"]},{target:"tag",keys:["tag"]},{target:"priority",keys:["priority"]},{target:"assignee",keys:["assignee"]},{target:"assigneeFilter",keys:["assigneeFilter","assignee_filter"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"parent",keys:["parent"]},{target:"limit",keys:["limit"]},{target:"blockedLimit",keys:["blockedLimit","blocked_limit"]},{target:"format",keys:["format"]},{target:"tokenBudget",keys:["tokenBudget","token_budget"]}],Od=[{target:"id",keys:["id"]},{target:"op",keys:["op"]},{target:"author",keys:["author"]},{target:"from",keys:["from"]},{target:"to",keys:["to"]},{target:"limit",keys:["limit"]}];function ct(e,t){for(let n of t.keys){let r=e[n];if(typeof r=="string")return r}}function Cs(e,t){for(let n of t.keys)if(Object.hasOwn(e,n))return e[n]}function Os(e,t){for(let n of t.keys){let r=e[n];if(Array.isArray(r))return r}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f7e87e15-b5f3-53ab-86e2-768e94d5d329")}catch{}})();var Id=[{target:"title",keys:["title"],option:"--title, -t <value>",description:"Item title [required] (or pass title as the first positional argument)"},{target:"id",keys:["id"],option:"--id <value>",description:"Explicit item id (normalized with the configured id_prefix)"},{target:"description",keys:["description"],option:"--description, -d <value>",description:"Item description (allow empty string)"},{target:"type",keys:["type"],option:"--type <value>",description:"Item type (built-ins plus any configured custom types)"},{target:"template",keys:["template"],option:"--template <value>",description:"Apply named create template defaults before explicit flags"},{target:"createMode",keys:["createMode","create_mode"],option:"--create-mode <value>",description:"Create required-option policy mode: strict|progressive",aliasOptions:[{option:"--create_mode <value>",description:"Alias for --create-mode"}]},{target:"schedulePreset",keys:["schedulePreset","schedule_preset"],option:"--schedule-preset <value>",description:"Scheduling preset for Reminder|Meeting|Event: lightweight",aliasOptions:[{option:"--schedule_preset <value>",description:"Alias for --schedule-preset"}]},{target:"status",keys:["status"],option:"--status, -s <value>",description:"Item status"},{target:"closeReason",keys:["closeReason","close_reason"],option:"--close-reason <value>",description:"Close reason when creating directly in a terminal status",aliasOptions:[{option:"--close_reason <value>",description:"Alias for --close-reason"}]},{target:"completedAt",keys:["completedAt","completed_at"],option:"--completed-at <value>",description:"Actual completion time for a terminal imported item",aliasOptions:[{option:"--completed_at <value>",description:"Alias for --completed-at"}]},{target:"priority",keys:["priority"],option:"--priority, -p <value>",description:"Priority 0..4"},{target:"tags",keys:["tags"],option:"--tags <value>",description:"Comma-separated tags"},{target:"addTags",keys:["addTags","add_tags"],option:"--add-tags <value>",description:"Add tags additively on top of --tags (repeatable; CSV accepted)",repeatable:!0,aliasOptions:[{option:"--add_tags <value>",description:"Alias for --add-tags"}]},{target:"body",keys:["body"],option:"--body, -b <value>",description:"Item markdown body (allow empty string)"},{target:"deadline",keys:["deadline"],option:"--deadline <value>",description:"Deadline (ISO/date string or relative +6h/+1d/+2w/+6m)"},{target:"estimatedMinutes",keys:["estimate","estimatedMinutes","estimated_minutes"],option:"--estimate, --estimated-minutes <value>",description:"Estimated minutes",aliasOptions:[{option:"--estimated_minutes <value>",description:"Alias for --estimated-minutes"}]},{target:"acceptanceCriteria",keys:["acceptanceCriteria","acceptance_criteria","ac"],option:"--acceptance-criteria <value>",description:"Acceptance criteria (repeatable; values join with '; '; allow empty string)",repeatable:!0,aliasOptions:[{option:"--acceptance_criteria <value>",description:"Alias for --acceptance-criteria"},{option:"--ac <value>",description:"Alias for --acceptance-criteria"}]},{target:"definitionOfReady",keys:["definitionOfReady","definition_of_ready"],option:"--definition-of-ready <value>",description:"Definition of ready (allow empty string)",aliasOptions:[{option:"--definition_of_ready <value>",description:"Alias for --definition-of-ready"}]},{target:"order",keys:["order"],option:"--order <value>",description:"Planning order/rank integer"},{target:"rank",keys:["rank"],option:"--rank <value>",description:"Alias for --order"},{target:"goal",keys:["goal"],option:"--goal <value>",description:"Goal identifier"},{target:"objective",keys:["objective"],option:"--objective <value>",description:"Objective identifier"},{target:"value",keys:["value"],option:"--value <value>",description:"Business value summary"},{target:"impact",keys:["impact"],option:"--impact <value>",description:"Business impact summary"},{target:"outcome",keys:["outcome"],option:"--outcome <value>",description:"Expected outcome summary"},{target:"whyNow",keys:["whyNow","why_now"],option:"--why-now <value>",description:"Why-now rationale",aliasOptions:[{option:"--why_now <value>",description:"Alias for --why-now"}]},{target:"author",keys:["author"],option:"--author <value>",description:"Mutation author"},{target:"message",keys:["message"],option:"--message <value>",description:"History message (allow empty string)"},{target:"assignee",keys:["assignee"],option:"--assignee <value>",description:"Item assignee"},{target:"parent",keys:["parent"],option:"--parent <value>",description:"Parent item ID"},{target:"allowMissingParent",keys:["allowMissingParent","allow_missing_parent"],option:"--allow-missing-parent",description:"Allow creating with an unresolved parent reference and emit a validation warning"},{target:"allowUnresolvedDeps",keys:["allowUnresolvedDeps","allow_unresolved_deps"],option:"--allow-unresolved-deps",description:"Allow unresolved local dependency targets and emit explicit warning receipts"},{target:"reviewer",keys:["reviewer"],option:"--reviewer <value>",description:"Reviewer"},{target:"risk",keys:["risk"],option:"--risk <value>",description:"Risk level: low|med|medium|high|critical (med persists as medium)"},{target:"confidence",keys:["confidence"],option:"--confidence <value>",description:"Confidence level: 0..100|low|med|medium|high (med persists as medium)"},{target:"sprint",keys:["sprint"],option:"--sprint <value>",description:"Sprint identifier"},{target:"release",keys:["release"],option:"--release <value>",description:"Release identifier"},{target:"blockedBy",keys:["blockedBy","blocked_by"],option:"--blocked-by <value>",description:"Set latest blocked-by item ID or reason; resolved item IDs append a blocked_by dependency edge",aliasOptions:[{option:"--blocked_by <value>",description:"Alias for --blocked-by"}]},{target:"blockedReason",keys:["blockedReason","blocked_reason"],option:"--blocked-reason <value>",description:"Blocked reason",aliasOptions:[{option:"--blocked_reason <value>",description:"Alias for --blocked-reason"}]},{target:"unblockNote",keys:["unblockNote","unblock_note"],option:"--unblock-note <value>",description:"Unblock rationale note",aliasOptions:[{option:"--unblock_note <value>",description:"Alias for --unblock-note"}]},{target:"reporter",keys:["reporter"],option:"--reporter <value>",description:"Issue reporter"},{target:"severity",keys:["severity"],option:"--severity <value>",description:"Issue severity: low|med|medium|high|critical (med persists as medium)"},{target:"environment",keys:["environment"],option:"--environment <value>",description:"Issue environment context"},{target:"reproSteps",keys:["reproSteps","repro_steps"],option:"--repro-steps <value>",description:"Issue reproduction steps",aliasOptions:[{option:"--repro_steps <value>",description:"Alias for --repro-steps"}]},{target:"resolution",keys:["resolution"],option:"--resolution <value>",description:"Issue resolution summary"},{target:"expectedResult",keys:["expectedResult","expected_result","expected"],option:"--expected-result <value>",description:"Issue expected behavior",aliasOptions:[{option:"--expected_result <value>",description:"Alias for --expected-result"},{option:"--expected <value>",description:"Short alias for --expected-result"}]},{target:"actualResult",keys:["actualResult","actual_result","actual"],option:"--actual-result <value>",description:"Issue observed behavior",aliasOptions:[{option:"--actual_result <value>",description:"Alias for --actual-result"},{option:"--actual <value>",description:"Short alias for --actual-result"}]},{target:"affectedVersion",keys:["affectedVersion","affected_version"],option:"--affected-version <value>",description:"Affected version identifier",aliasOptions:[{option:"--affected_version <value>",description:"Alias for --affected-version"}]},{target:"fixedVersion",keys:["fixedVersion","fixed_version"],option:"--fixed-version <value>",description:"Fixed version identifier",aliasOptions:[{option:"--fixed_version <value>",description:"Alias for --fixed-version"}]},{target:"component",keys:["component"],option:"--component <value>",description:"Issue component ownership"},{target:"regression",keys:["regression"],option:"--regression [value]",description:"Regression marker; bare flag means true, or pass true|false|1|0"},{target:"customerImpact",keys:["customerImpact","customer_impact"],option:"--customer-impact <value>",description:"Customer impact summary",aliasOptions:[{option:"--customer_impact <value>",description:"Alias for --customer-impact"}]},{target:"dep",keys:["dep"],option:"--dep <value>",description:"Seed dependency entry (key=value CSV, markdown key:value lines, or - for stdin; repeatable)",repeatable:!0},{target:"typeOption",keys:["typeOption","type_option"],option:"--type-option <value>",description:"Type option key=value or key=<name>,value=<value> (also accepts key:value and markdown pairs; use - for stdin; repeatable)",repeatable:!0,aliasOptions:[{option:"--type_option <value>",description:"Alias for --type-option"}]},{target:"field",keys:["field"],option:"--field <name=value>",description:"Set a field declared by an active extension registerItemFields registration (repeatable)",repeatable:!0},{target:"unset",keys:["unset"],option:"--unset <field>",description:"Clear scalar metadata field by name (repeatable)",repeatable:!0},{target:"reminder",keys:["reminder"],option:"--reminder <value>",description:"Seed reminder entry at=<iso|relative>,text=<text> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"event",keys:["event"],option:"--event <value>",description:"Seed event entry start=<iso|relative>,end=<iso|relative>,duration=<relative|30min|PT30M>,title=<text>,all_day=<true|false>,recur_* fields (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"comment",keys:["comment"],option:"--comment <value>",description:"Seed comment entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0},{target:"note",keys:["note"],option:"--note <value>",description:"Seed note entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0},{target:"learning",keys:["learning"],option:"--learning <value>",description:"Seed learning entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0},{target:"file",keys:["file"],option:"--file <value>",description:"Seed linked file entry (CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0},{target:"test",keys:["test"],option:"--test <value>",description:"Seed linked test entry (CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0},{target:"doc",keys:["doc"],option:"--doc <value>",description:"Seed linked doc entry (CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0}],Rd=Id.filter(e=>e.repeatable!==!0).map(e=>({target:e.target,keys:e.keys})),Is=Id.filter(e=>e.repeatable===!0).map(e=>({target:e.target,keys:e.keys})),Nd=[{target:"title",keys:["title"],option:"--title, -t <value>",description:"Set title"},{target:"description",keys:["description"],option:"--description, -d <value>",description:"Set description"},{target:"body",keys:["body"],option:"--body, -b <value>",description:"Set body (allow empty string)"},{target:"status",keys:["status"],option:"--status, -s <value>",description:"Set status (use close command for closed)"},{target:"closeReason",keys:["closeReason","close_reason"],option:"--close-reason <value>",description:"Set close reason",aliasOptions:[{option:"--close_reason <value>",description:"Alias for --close-reason"}]},{target:"priority",keys:["priority"],option:"--priority, -p <value>",description:"Set priority"},{target:"type",keys:["type"],option:"--type <value>",description:"Set type"},{target:"tags",keys:["tags"],option:"--tags <value>",description:"Set comma-separated tags (replaces existing). Use --add-tags / --remove-tags to mutate additively."},{target:"addTags",keys:["addTags","add_tags"],option:"--add-tags <value>",description:"Add tags to the existing list without replacing it (repeatable; CSV accepted)",repeatable:!0,aliasOptions:[{option:"--add_tags <value>",description:"Alias for --add-tags"}]},{target:"removeTags",keys:["removeTags","remove_tags"],option:"--remove-tags <value>",description:"Remove tags from the existing list (repeatable; CSV accepted)",repeatable:!0,aliasOptions:[{option:"--remove_tags <value>",description:"Alias for --remove-tags"}]},{target:"deadline",keys:["deadline"],option:"--deadline <value>",description:"Set deadline (ISO/date string or relative)"},{target:"estimatedMinutes",keys:["estimate","estimatedMinutes","estimated_minutes"],option:"--estimate, --estimated-minutes <value>",description:"Set estimated minutes",aliasOptions:[{option:"--estimated_minutes <value>",description:"Alias for --estimated-minutes"}]},{target:"acceptanceCriteria",keys:["acceptanceCriteria","acceptance_criteria","ac"],option:"--acceptance-criteria <value>",description:"Replace the complete acceptance-criteria list (repeatable values join with '; '); use --remove-ac plus --add-ac for one-entry repair",repeatable:!0,aliasOptions:[{option:"--acceptance_criteria <value>",description:"Alias for --acceptance-criteria"},{option:"--ac <value>",description:"Alias for --acceptance-criteria"}]},{target:"addAc",keys:["addAc","add_ac"],option:"--add-ac <value>",description:"Add one semicolon-free acceptance criterion without replacing the existing list (repeatable)",repeatable:!0,aliasOptions:[{option:"--add_ac <value>",description:"Alias for --add-ac"}]},{target:"removeAc",keys:["removeAc","remove_ac"],option:"--remove-ac <value>",description:"Remove one semicolon-free acceptance criterion by exact text match; fails if any selector is unmatched (repeatable)",repeatable:!0,aliasOptions:[{option:"--remove_ac <value>",description:"Alias for --remove-ac"}]},{target:"definitionOfReady",keys:["definitionOfReady","definition_of_ready"],option:"--definition-of-ready <value>",description:"Set definition of ready",aliasOptions:[{option:"--definition_of_ready <value>",description:"Alias for --definition-of-ready"}]},{target:"order",keys:["order"],option:"--order <value>",description:"Set planning order/rank integer"},{target:"rank",keys:["rank"],option:"--rank <value>",description:"Alias for --order"},{target:"goal",keys:["goal"],option:"--goal <value>",description:"Set goal identifier"},{target:"objective",keys:["objective"],option:"--objective <value>",description:"Set objective identifier"},{target:"value",keys:["value"],option:"--value <value>",description:"Set business value summary"},{target:"impact",keys:["impact"],option:"--impact <value>",description:"Set business impact summary"},{target:"outcome",keys:["outcome"],option:"--outcome <value>",description:"Set expected outcome summary"},{target:"whyNow",keys:["whyNow","why_now"],option:"--why-now <value>",description:"Set why-now rationale",aliasOptions:[{option:"--why_now <value>",description:"Alias for --why-now"}]},{target:"author",keys:["author"],option:"--author <value>",description:"Mutation author"},{target:"message",keys:["message"],option:"--message <value>",description:"Mutation message"},{target:"assignee",keys:["assignee"],option:"--assignee <value>",description:"Set assignee"},{target:"parent",keys:["parent"],option:"--parent <value>",description:"Set parent item ID"},{target:"allowMissingParent",keys:["allowMissingParent","allow_missing_parent"],option:"--allow-missing-parent",description:"Allow updating to an unresolved parent reference and emit a validation warning"},{target:"allowUnresolvedDeps",keys:["allowUnresolvedDeps","allow_unresolved_deps"],option:"--allow-unresolved-deps",description:"Allow unresolved local dependency targets and emit explicit warning receipts"},{target:"completedAt",keys:["completedAt","completed_at"],option:"--completed-at <value>",description:"Correct the actual completion timestamp on a terminal item"},{target:"reviewer",keys:["reviewer"],option:"--reviewer <value>",description:"Set reviewer"},{target:"risk",keys:["risk"],option:"--risk <value>",description:"Set risk level: low|med|medium|high|critical (med persists as medium)"},{target:"confidence",keys:["confidence"],option:"--confidence <value>",description:"Set confidence level: 0..100|low|med|medium|high (med persists as medium)"},{target:"sprint",keys:["sprint"],option:"--sprint <value>",description:"Set sprint identifier"},{target:"release",keys:["release"],option:"--release <value>",description:"Set release identifier"},{target:"blockedBy",keys:["blockedBy","blocked_by"],option:"--blocked-by <value>",description:"Set latest blocked-by item ID or reason; resolved item IDs append a blocked_by dependency edge",aliasOptions:[{option:"--blocked_by <value>",description:"Alias for --blocked-by"}]},{target:"blockedReason",keys:["blockedReason","blocked_reason"],option:"--blocked-reason <value>",description:"Set blocked reason",aliasOptions:[{option:"--blocked_reason <value>",description:"Alias for --blocked-reason"}]},{target:"unblockNote",keys:["unblockNote","unblock_note"],option:"--unblock-note <value>",description:"Set unblock rationale note",aliasOptions:[{option:"--unblock_note <value>",description:"Alias for --unblock-note"}]},{target:"reporter",keys:["reporter"],option:"--reporter <value>",description:"Set issue reporter"},{target:"severity",keys:["severity"],option:"--severity <value>",description:"Set issue severity: low|med|medium|high|critical (med persists as medium)"},{target:"environment",keys:["environment"],option:"--environment <value>",description:"Set issue environment context"},{target:"reproSteps",keys:["reproSteps","repro_steps"],option:"--repro-steps <value>",description:"Set issue reproduction steps",aliasOptions:[{option:"--repro_steps <value>",description:"Alias for --repro-steps"}]},{target:"resolution",keys:["resolution"],option:"--resolution <value>",description:"Set issue resolution summary"},{target:"expectedResult",keys:["expectedResult","expected_result","expected"],option:"--expected-result <value>",description:"Set issue expected behavior",aliasOptions:[{option:"--expected_result <value>",description:"Alias for --expected-result"},{option:"--expected <value>",description:"Short alias for --expected-result"}]},{target:"actualResult",keys:["actualResult","actual_result","actual"],option:"--actual-result <value>",description:"Set issue observed behavior",aliasOptions:[{option:"--actual_result <value>",description:"Alias for --actual-result"},{option:"--actual <value>",description:"Short alias for --actual-result"}]},{target:"affectedVersion",keys:["affectedVersion","affected_version"],option:"--affected-version <value>",description:"Set affected version identifier",aliasOptions:[{option:"--affected_version <value>",description:"Alias for --affected-version"}]},{target:"fixedVersion",keys:["fixedVersion","fixed_version"],option:"--fixed-version <value>",description:"Set fixed version identifier",aliasOptions:[{option:"--fixed_version <value>",description:"Alias for --fixed-version"}]},{target:"component",keys:["component"],option:"--component <value>",description:"Set issue component ownership"},{target:"regression",keys:["regression"],option:"--regression [value]",description:"Set regression marker; bare flag means true, or pass true|false|1|0"},{target:"customerImpact",keys:["customerImpact","customer_impact"],option:"--customer-impact <value>",description:"Set customer impact summary",aliasOptions:[{option:"--customer_impact <value>",description:"Alias for --customer-impact"}]},{target:"dep",keys:["dep"],option:"--dep <value>",description:"Add dependency entries id=<id>,kind=<value>,author=<value>,created_at=<iso|now>,source_kind=<value> (repeatable)",repeatable:!0},{target:"depRemove",keys:["depRemove","dep_remove"],option:"--dep-remove <value>",description:"Remove dependencies by id or id=<id>,kind=<value>,source_kind=<value> selectors (repeatable)",repeatable:!0,aliasOptions:[{option:"--dep_remove <value>",description:"Alias for --dep-remove"}]},{target:"comment",keys:["comment"],option:"--comment <value>",description:"Append comment seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"note",keys:["note"],option:"--note <value>",description:"Append note seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"learning",keys:["learning"],option:"--learning <value>",description:"Append learning seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"file",keys:["file"],option:"--file <value>",description:"Append linked file path=<value>,scope=<project|global>,note=<text> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"test",keys:["test"],option:"--test <value>",description:"Append linked test command=<value>,path=<value>,scope=<project|global>,timeout_seconds=<n>,pm_context_mode=<schema|tracker|auto> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"doc",keys:["doc"],option:"--doc <value>",description:"Append linked doc path=<value>,scope=<project|global>,note=<text> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"reminder",keys:["reminder"],option:"--reminder <value>",description:"Set reminders at=<iso|relative>,text=<text> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"event",keys:["event"],option:"--event <value>",description:"Set events start=<iso|relative>,end=<iso|relative>,duration=<relative|30min|PT30M>,title=<text>,all_day=<true|false>,recur_* fields (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"typeOption",keys:["typeOption","type_option"],option:"--type-option <value>",description:"Set type options key=value or key=<name>,value=<value> (also accepts key:value and markdown pairs; use - for stdin; repeatable)",repeatable:!0,aliasOptions:[{option:"--type_option <value>",description:"Alias for --type-option"}]},{target:"field",keys:["field"],option:"--field <name=value>",description:"Set a field declared by an active extension registerItemFields registration (repeatable)",repeatable:!0},{target:"unset",keys:["unset"],option:"--unset <field>",description:"Clear scalar metadata field by name (repeatable)",repeatable:!0}],Dd=Nd.filter(e=>e.repeatable!==!0).map(e=>({target:e.target,keys:e.keys})),Rs=Nd.filter(e=>e.repeatable===!0).map(e=>({target:e.target,keys:e.keys}));(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="26955ae3-1aca-503e-9492-46652285d17a")}catch{}})();function te(e){return e.map(t=>({...t}))}var Ld=[{param:"status",flag:"--status"},{param:"type",flag:"--type"},{param:"tag",flag:"--tag"},{param:"priority",flag:"--priority"},{param:"deadlineBefore",flag:"--deadline-before"},{param:"deadlineAfter",flag:"--deadline-after"}],ph=[{param:"updatedAfter",flag:"--updated-after"},{param:"updatedBefore",flag:"--updated-before"},{param:"createdAfter",flag:"--created-after"},{param:"createdBefore",flag:"--created-before"}],gF=[{param:"today",flag:"--today",booleanish:!0},{param:"recent",flag:"--recent",booleanish:!0},...ph],mh=[{param:"assignee",flag:"--assignee"},{param:"assigneeFilter",flag:"--assignee-filter"},{param:"parent",flag:"--parent"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"}],_F=[{param:"assignee",flag:"--assignee"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"},{param:"parent",flag:"--parent"}],yF=[...Ld,...mh],gh=[{param:"filterReviewerMissing",flag:"--filter-reviewer-missing"},{param:"filterRiskMissing",flag:"--filter-risk-missing"},{param:"filterConfidenceMissing",flag:"--filter-confidence-missing"},{param:"filterSprintMissing",flag:"--filter-sprint-missing"},{param:"filterReleaseMissing",flag:"--filter-release-missing"}],hF=[{param:"filterAcMissing",flag:"--filter-ac-missing"},{param:"filterEstimatesMissing",flag:"--filter-estimates-missing"},{param:"filterResolutionMissing",flag:"--filter-resolution-missing"},{param:"filterMetadataMissing",flag:"--filter-metadata-missing"}],_h=[{param:"hasNotes",flag:"--has-notes"},{param:"noNotes",flag:"--no-notes"},{param:"hasLearnings",flag:"--has-learnings"},{param:"noLearnings",flag:"--no-learnings"},{param:"hasFiles",flag:"--has-files"},{param:"noFiles",flag:"--no-files"},{param:"filterFilesMissing",flag:"--filter-files-missing"},{param:"hasDocs",flag:"--has-docs"},{param:"noDocs",flag:"--no-docs"},{param:"filterDocsMissing",flag:"--filter-docs-missing"},{param:"hasTests",flag:"--has-tests"},{param:"noTests",flag:"--no-tests"},{param:"hasComments",flag:"--has-comments"},{param:"noComments",flag:"--no-comments"},{param:"hasDeps",flag:"--has-deps"},{param:"noDeps",flag:"--no-deps"},{param:"hasBody",flag:"--has-body"},{param:"emptyBody",flag:"--empty-body"},{param:"hasLinkedCommand",flag:"--has-linked-command"},{param:"noLinkedCommand",flag:"--no-linked-command"}],Pd=[{param:"for",flag:"--for"},{param:"tokenBudget",flag:"--token-budget"},...te(Ld),...te(gF),{param:"ids",flag:"--ids"},...te(mh),...te(hF),...te(gh),...te(_h),{param:"limit",flag:"--limit"},{param:"offset",flag:"--offset"},{param:"after",flag:"--after"},{param:"fields",flag:"--fields"},{param:"sort",flag:"--sort"},{param:"order",flag:"--order"},{param:"tree",flag:"--tree"},{param:"treeDepth",flag:"--tree-depth"}],Md=[{param:"groupBy",flag:"--group-by"},{param:"sum",flag:"--sum"},{param:"avg",flag:"--avg"},...te(yF)],Fd=[{param:"for",flag:"--for"},{param:"tokenBudget",flag:"--token-budget"},{param:"matchMode",flag:"--match-mode"},{param:"minScore",flag:"--min-score"},{param:"count",flag:"--count",booleanish:!0},{param:"semanticWeight",flag:"--semantic-weight"},...te(Ld),...te(ph),...te(_F),...te(gh),...te(_h),{param:"fields",flag:"--fields"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"}],yh=[{param:"parent",flag:"--parent"},{param:"reviewer",flag:"--reviewer"},{param:"risk",flag:"--risk"},{param:"confidence",flag:"--confidence"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"},{param:"blockedBy",flag:"--blocked-by"},{param:"blockedReason",flag:"--blocked-reason"},{param:"unblockNote",flag:"--unblock-note"},{param:"reporter",flag:"--reporter"},{param:"severity",flag:"--severity"},{param:"environment",flag:"--environment"},{param:"reproSteps",flag:"--repro-steps"},{param:"resolution",flag:"--resolution"},{param:"expectedResult",flag:"--expected-result"},{param:"actualResult",flag:"--actual-result"},{param:"affectedVersion",flag:"--affected-version"},{param:"fixedVersion",flag:"--fixed-version"},{param:"component",flag:"--component"},{param:"regression",flag:"--regression",booleanish:!0},{param:"customerImpact",flag:"--customer-impact"},{param:"definitionOfReady",flag:"--definition-of-ready",allowEmpty:!0},{param:"order",flag:"--order"},{param:"rank",flag:"--rank"},{param:"goal",flag:"--goal"},{param:"objective",flag:"--objective"},{param:"value",flag:"--value"},{param:"impact",flag:"--impact"},{param:"outcome",flag:"--outcome"},{param:"whyNow",flag:"--why-now"}],Ns=te(yh),hh=[{param:"id",flag:"--id"},{param:"title",flag:"--title"},{param:"description",flag:"--description",allowEmpty:!0},{param:"type",flag:"--type"},{param:"template",flag:"--template"},{param:"createMode",flag:"--create-mode"},{param:"schedulePreset",flag:"--schedule-preset"},{param:"status",flag:"--status"},{param:"priority",flag:"--priority"},{param:"tags",flag:"--tags",allowEmpty:!0},{param:"addTags",flag:"--add-tags",repeatable:!0},{param:"body",flag:"--body",allowEmpty:!0},{param:"deadline",flag:"--deadline"},{param:"estimate",flag:"--estimate"},{param:"acceptanceCriteria",flag:"--acceptance-criteria",allowEmpty:!0},{param:"author",flag:"--author"},{param:"message",flag:"--message",allowEmpty:!0},{param:"assignee",flag:"--assignee"},{param:"allowMissingParent",flag:"--allow-missing-parent"},{param:"allowUnresolvedDeps",flag:"--allow-unresolved-deps"},{param:"allowDuplicate",flag:"--allow-duplicate",booleanish:!0},{param:"reminder",flag:"--reminder",repeatable:!0},{param:"event",flag:"--event",repeatable:!0},{param:"typeOption",flag:"--type-option",repeatable:!0},{param:"field",flag:"--field",repeatable:!0},{param:"dep",flag:"--dep",repeatable:!0},{param:"comment",flag:"--comment",repeatable:!0},{param:"note",flag:"--note",repeatable:!0},{param:"learning",flag:"--learning",repeatable:!0},{param:"linkedFile",flag:"--file",repeatable:!0},{param:"linkedTest",flag:"--test",repeatable:!0},{param:"doc",flag:"--doc",repeatable:!0},{param:"unset",flag:"--unset",repeatable:!0},{param:"clearDeps",flag:"--clear-deps"},{param:"clearComments",flag:"--clear-comments"},{param:"clearNotes",flag:"--clear-notes"},{param:"clearLearnings",flag:"--clear-learnings"},{param:"clearFiles",flag:"--clear-files"},{param:"clearTests",flag:"--clear-tests"},{param:"clearDocs",flag:"--clear-docs"},{param:"clearReminders",flag:"--clear-reminders"},{param:"clearEvents",flag:"--clear-events"},{param:"clearTypeOptions",flag:"--clear-type-options"}],$d=te(hh),bh=[{param:"title",flag:"--title"},{param:"description",flag:"--description",allowEmpty:!0},{param:"body",flag:"--body",allowEmpty:!0},{param:"status",flag:"--status"},{param:"closeReason",flag:"--close-reason"},{param:"completedAt",flag:"--completed-at"},{param:"priority",flag:"--priority"},{param:"type",flag:"--type"},{param:"tags",flag:"--tags",allowEmpty:!0},{param:"addTags",flag:"--add-tags",repeatable:!0},{param:"removeTags",flag:"--remove-tags",repeatable:!0},{param:"deadline",flag:"--deadline"},{param:"estimate",flag:"--estimate"},{param:"acceptanceCriteria",flag:"--acceptance-criteria",allowEmpty:!0},{param:"addAc",flag:"--add-ac",repeatable:!0},{param:"removeAc",flag:"--remove-ac",repeatable:!0},{param:"author",flag:"--author"},{param:"message",flag:"--message",allowEmpty:!0},{param:"assignee",flag:"--assignee"},{param:"allowMissingParent",flag:"--allow-missing-parent"},{param:"allowUnresolvedDeps",flag:"--allow-unresolved-deps"},{param:"dep",flag:"--dep",repeatable:!0},{param:"depRemove",flag:"--dep-remove",repeatable:!0},{param:"replaceDeps",flag:"--replace-deps"},{param:"replaceTests",flag:"--replace-tests"},{param:"replaceFiles",flag:"--replace-files"},{param:"replaceDocs",flag:"--replace-docs"},{param:"comment",flag:"--comment",repeatable:!0},{param:"note",flag:"--note",repeatable:!0},{param:"learning",flag:"--learning",repeatable:!0},{param:"linkedFile",flag:"--file",repeatable:!0},{param:"linkedTest",flag:"--test",repeatable:!0},{param:"doc",flag:"--doc",repeatable:!0},{param:"reminder",flag:"--reminder",repeatable:!0},{param:"event",flag:"--event",repeatable:!0},{param:"typeOption",flag:"--type-option",repeatable:!0},{param:"field",flag:"--field",repeatable:!0},{param:"unset",flag:"--unset",repeatable:!0},{param:"clearDeps",flag:"--clear-deps"},{param:"clearComments",flag:"--clear-comments"},{param:"clearNotes",flag:"--clear-notes"},{param:"clearLearnings",flag:"--clear-learnings"},{param:"clearFiles",flag:"--clear-files"},{param:"clearTests",flag:"--clear-tests"},{param:"clearDocs",flag:"--clear-docs"},{param:"clearReminders",flag:"--clear-reminders"},{param:"clearEvents",flag:"--clear-events"},{param:"clearTypeOptions",flag:"--clear-type-options"}],jd=te(bh),Ud=[{param:"filterStatus",flag:"--filter-status"},{param:"filterType",flag:"--filter-type"},{param:"filterTag",flag:"--filter-tag"},{param:"filterPriority",flag:"--filter-priority"},{param:"filterDeadlineBefore",flag:"--filter-deadline-before"},{param:"filterDeadlineAfter",flag:"--filter-deadline-after"},{param:"filterUpdatedAfter",flag:"--filter-updated-after"},{param:"filterUpdatedBefore",flag:"--filter-updated-before"},{param:"filterCreatedAfter",flag:"--filter-created-after"},{param:"filterCreatedBefore",flag:"--filter-created-before"},{param:"filterAssignee",flag:"--filter-assignee"},{param:"filterAssigneeFilter",flag:"--filter-assignee-filter"},{param:"filterParent",flag:"--filter-parent"},{param:"filterSprint",flag:"--filter-sprint"},{param:"filterRelease",flag:"--filter-release"},{param:"filterAcMissing",flag:"--filter-ac-missing"},{param:"filterEstimatesMissing",flag:"--filter-estimates-missing"},{param:"filterResolutionMissing",flag:"--filter-resolution-missing"},{param:"filterMetadataMissing",flag:"--filter-metadata-missing"},{param:"filterReviewerMissing",flag:"--filter-reviewer-missing"},{param:"filterRiskMissing",flag:"--filter-risk-missing"},{param:"filterConfidenceMissing",flag:"--filter-confidence-missing"},{param:"filterSprintMissing",flag:"--filter-sprint-missing"},{param:"filterReleaseMissing",flag:"--filter-release-missing"},{param:"filterHasNotes",flag:"--filter-has-notes"},{param:"filterNoNotes",flag:"--filter-no-notes"},{param:"filterHasLearnings",flag:"--filter-has-learnings"},{param:"filterNoLearnings",flag:"--filter-no-learnings"},{param:"filterHasFiles",flag:"--filter-has-files"},{param:"filterNoFiles",flag:"--filter-no-files"},{param:"filterHasDocs",flag:"--filter-has-docs"},{param:"filterNoDocs",flag:"--filter-no-docs"},{param:"filterHasTests",flag:"--filter-has-tests"},{param:"filterNoTests",flag:"--filter-no-tests"},{param:"filterHasComments",flag:"--filter-has-comments"},{param:"filterNoComments",flag:"--filter-no-comments"},{param:"filterHasDeps",flag:"--filter-has-deps"},{param:"filterNoDeps",flag:"--filter-no-deps"},{param:"filterHasBody",flag:"--filter-has-body"},{param:"filterEmptyBody",flag:"--filter-empty-body"},{param:"filterHasLinkedCommand",flag:"--filter-has-linked-command"},{param:"filterNoLinkedCommand",flag:"--filter-no-linked-command"},{param:"ids",flag:"--ids"},{param:"limit",flag:"--limit"},{param:"offset",flag:"--offset"}],zd=te(Ud),qd=te(Ud),bF=[{param:"view",flag:"--view"},{param:"date",flag:"--date"},{param:"from",flag:"--from"},{param:"to",flag:"--to"},{param:"type",flag:"--type"},{param:"tag",flag:"--tag"},{param:"priority",flag:"--priority"},{param:"status",flag:"--status"},{param:"assignee",flag:"--assignee"},{param:"assigneeFilter",flag:"--assignee-filter"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"},{param:"include",flag:"--include"},{param:"recurrenceLookaheadDays",flag:"--recurrence-lookahead-days"},{param:"recurrenceLookbackDays",flag:"--recurrence-lookback-days"},{param:"occurrenceLimit",flag:"--occurrence-limit"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"},{param:"format",flag:"--format"}],Gd=[{param:"id",flag:"--id"},{param:"op",flag:"--op"},{param:"author",flag:"--author"},{param:"from",flag:"--from"},{param:"to",flag:"--to"},{param:"limit",flag:"--limit"},{param:"unbounded",flag:"--unbounded"},{param:"compact",flag:"--compact"},{param:"full",flag:"--full"},{param:"provenance",flag:"--provenance"},{param:"provenanceSummary",flag:"--provenance-summary"},{param:"harness",flag:"--harness",repeatable:!0},{param:"agentInstance",flag:"--agent-instance",repeatable:!0},{param:"provenanceFilter",flag:"--provenance-filter",repeatable:!0}],Vd=[{param:"for",flag:"--for"},{param:"date",flag:"--date"},{param:"from",flag:"--from"},{param:"to",flag:"--to"},{param:"type",flag:"--type"},{param:"tag",flag:"--tag"},{param:"priority",flag:"--priority"},{param:"assignee",flag:"--assignee"},{param:"assigneeFilter",flag:"--assignee-filter"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"},{param:"parent",flag:"--parent"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"},{param:"format",flag:"--format"},{param:"depth",flag:"--depth"},{param:"fields",flag:"--fields"},{param:"section",flag:"--section",repeatable:!0},{param:"activityLimit",flag:"--activity-limit"},{param:"staleThreshold",flag:"--stale-threshold"},{param:"tokenBudget",flag:"--token-budget"},{param:"explainRanking",flag:"--explain-ranking"},{param:"noTags",flag:"--no-tags"},{param:"noExtensionHealth",flag:"--no-extension-health"}],wF=[{param:"format",flag:"--format"},{param:"maxDepth",flag:"--max-depth"},{param:"collapse",flag:"--collapse"},{param:"summary",flag:"--summary"},{param:"nodeLimit",flag:"--node-limit"},{param:"edgeLimit",flag:"--edge-limit"},{param:"tokenBudget",flag:"--token-budget"},{param:"cursor",flag:"--cursor"},{param:"direction",flag:"--direction"},{param:"kind",flag:"--kind",repeatable:!0}],EF=[{param:"kind",flag:"--kind",repeatable:!0},{param:"maxDepth",flag:"--max-depth"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"},{param:"direction",flag:"--direction"},{param:"maxPaths",flag:"--max-paths"},{param:"sample",flag:"--sample"},{param:"exemptIsolate",flag:"--exempt-isolate",repeatable:!0},{param:"exemptIsolateType",flag:"--exempt-isolate-type",repeatable:!0},{param:"saveBaseline",flag:"--save-baseline"},{param:"rebuild",flag:"--rebuild"},{param:"clear",flag:"--clear"},{param:"summary",flag:"--summary"}];(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f73e79d8-2a65-5a25-8c6f-ec9b06651634")}catch{}})();function ro(e){return[...new Set(Array.from(e,t=>t.trim()).filter(t=>t.length>0))]}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="48d9a5c7-f747-5fac-a534-01a4b3b7af2c")}catch{}})();function Hd(e){return e.startsWith("--")?`--${e.slice(2).replaceAll("_","-")}`:e}function oo(e){let t=new Map;for(let n of e){let r=Hd(n.flag),o=t.get(r)??new Set;n.flag!==r&&o.add(n.flag);for(let i of n.aliases??[])i!==r&&o.add(i);t.set(r,o)}return e.map(n=>{let r=Hd(n.flag);if(n.flag!==r)return n;let o=ro([...n.aliases??[],...t.get(r)]).filter(i=>i!==r);return o.length===0?n:{...n,aliases:o}})}function TF(e){let t=oo(e),n=new Set(t.map(r=>r.flag));return t.filter(r=>{let o=Hd(r.flag);return r.flag===o||!n.has(o)})}var Ds=xa.map(e=>({flag:e.flag,...e.aliases?{aliases:[...e.aliases]}:{},...e.value_name?{value_name:e.value_name}:{}})),vF=[...Ds,{flag:"--version"}],wh=[{flag:"--filter-reviewer-missing"},{flag:"--filter-risk-missing"},{flag:"--filter-confidence-missing"},{flag:"--filter-sprint-missing"},{flag:"--filter-release-missing"},{flag:"--has-notes"},{flag:"--no-notes"},{flag:"--has-learnings"},{flag:"--no-learnings"},{flag:"--has-files"},{flag:"--no-files"},{flag:"--filter-files-missing"},{flag:"--has-docs"},{flag:"--no-docs"},{flag:"--filter-docs-missing"},{flag:"--has-tests"},{flag:"--no-tests"},{flag:"--has-comments"},{flag:"--no-comments"},{flag:"--has-deps"},{flag:"--no-deps"},{flag:"--has-body"},{flag:"--empty-body"},{flag:"--has-linked-command"},{flag:"--no-linked-command"}],Eh=[{flag:"--filter-reviewer-missing"},{flag:"--filter-risk-missing"},{flag:"--filter-confidence-missing"},{flag:"--filter-sprint-missing"},{flag:"--filter-release-missing"},{flag:"--filter-has-notes"},{flag:"--filter-no-notes"},{flag:"--filter-has-learnings"},{flag:"--filter-no-learnings"},{flag:"--filter-has-files"},{flag:"--filter-no-files"},{flag:"--filter-has-docs"},{flag:"--filter-no-docs"},{flag:"--filter-has-tests"},{flag:"--filter-no-tests"},{flag:"--filter-has-comments"},{flag:"--filter-no-comments"},{flag:"--filter-has-deps"},{flag:"--filter-no-deps"},{flag:"--filter-has-body"},{flag:"--filter-empty-body"},{flag:"--filter-has-linked-command"},{flag:"--filter-no-linked-command"},{flag:"--ids",list:!0},{flag:"--limit"},{flag:"--offset"}],Th=Jd([{flag:"--for",value_name:"intent"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--status",list:!0},{flag:"--type",list:!0},{flag:"--tag",aliases:["--tags"],list:!0},{flag:"--priority",list:!0},{flag:"--deadline-before"},{flag:"--deadline-after"},{flag:"--today"},{flag:"--recent"},{flag:"--updated-after"},{flag:"--updated-before"},{flag:"--created-after"},{flag:"--created-before"},{flag:"--ids",list:!0},{flag:"--assignee",list:!0},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--parent"},{flag:"--sprint",list:!0},{flag:"--release",list:!0},{flag:"--filter-ac-missing"},{flag:"--filter-estimates-missing",aliases:["--filter-estimate-missing"]},{flag:"--filter-resolution-missing"},{flag:"--filter-metadata-missing"},...wh,{flag:"--limit"},{flag:"--offset"},{flag:"--after"},{flag:"--no-truncate"},{flag:"--compact"},{flag:"--brief"},{flag:"--full"},{flag:"--fields",list:!0},{flag:"--sort"},{flag:"--order"},{flag:"--tree"},{flag:"--tree-depth"},{flag:"--tree_depth"},{flag:"--include-body"},{flag:"--strict-read"},{flag:"--format"},{flag:"--stream"}],new Set(["--limit","--token-budget","--offset","--after","--no-truncate","--compact","--brief","--full","--fields","--include-body","--strict-read"])),vh=[{flag:"--group-by",list:!0},{flag:"--count"},{flag:"--completion"},{flag:"--sum"},{flag:"--avg"},{flag:"--include-unparented"},{flag:"--include_unparented"},{flag:"--status",list:!0},{flag:"--type",list:!0},{flag:"--tag",list:!0},{flag:"--priority",list:!0},{flag:"--deadline-before"},{flag:"--deadline-after"},{flag:"--assignee",list:!0},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--parent"},{flag:"--sprint",list:!0},{flag:"--release",list:!0}],Ah=[{flag:"--id",value_name:"item-id"},{flag:"--add",aliases:["--comment","--body"]},{flag:"--stdin"},{flag:"--file"},{flag:"--edit"},{flag:"--delete"},{flag:"--limit"},{flag:"--full-history"},{flag:"--author"},{flag:"--message"},{flag:"--force"}];function Jd(e,t){return e.map(n=>t.has(n.flag)?{...n,cursor_semantics:"presentation"}:n)}var Sh=[{flag:"--id",value_name:"item-id"},{flag:"--add",aliases:["--note"]},{flag:"--add-json"},{flag:"--stdin"},{flag:"--file"},{flag:"--edit"},{flag:"--delete"},{flag:"--limit"},{flag:"--since"},{flag:"--event-type"},{flag:"--include-meta"},{flag:"--full-history"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],kh=[{flag:"--id",value_name:"item-id"},{flag:"--add",aliases:["--learning"]},{flag:"--limit"},{flag:"--full-history"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],xh=[{flag:"--id",value_name:"item-id"},{flag:"--add"},{flag:"--add-glob"},{flag:"--remove"},{flag:"--migrate"},{flag:"--note"},{flag:"--list"},{flag:"--append-stable"},{flag:"--validate-paths"},{flag:"--scope"},{flag:"--limit"},{flag:"--offset"},{flag:"--no-truncate"},{flag:"--strict-read"},{flag:"--explain"},{flag:"--lines",value_name:"start:end"},{flag:"--decision-depth",value_name:"n",value_type:"number"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Ch=[{flag:"--id",value_name:"item-id"},{flag:"--add"},{flag:"--add-glob"},{flag:"--remove"},{flag:"--migrate"},{flag:"--note"},{flag:"--list"},{flag:"--validate-paths"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Oh=[{flag:"--id",value_name:"item-id"},{flag:"--limit"},{flag:"--compact"},{flag:"--full"},{flag:"--provenance"},{flag:"--provenance-summary"},{flag:"--harness",repeatable:!0},{flag:"--agent-instance",repeatable:!0},{flag:"--provenance-filter",repeatable:!0},{flag:"--diff"},{flag:"--field"},{flag:"--verify"},{flag:"--strict-exit"},{flag:"--fail-on-warn"},{flag:"--format"}],Ih=[{flag:"--dry-run"},{flag:"--output"},{flag:"--item-path"},{flag:"--prefer"}],Rh=[{flag:"--id",value_name:"item-id"},{flag:"--literal"},{flag:"--regex"},{flag:"--replacement"},{flag:"--dry-run"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Nh=[{flag:"--id",value_name:"item-id"},{flag:"--all"},{flag:"--dry-run"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Dh=[{flag:"--event",repeatable:!0},{flag:"--all-actionable"},{flag:"--attributed-author",aliases:["--attributed_author"]},{flag:"--reviewer"},{flag:"--reason"}],Lh=[{flag:"--id",value_name:"item-id"},{flag:"--before"},{flag:"--ids",list:!0},{flag:"--all-over",value_type:"number"},{flag:"--closed"},{flag:"--all-streams"},{flag:"--min-entries",value_type:"number"},{flag:"--dry-run"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Ph=[{flag:"--description"},{flag:"--default-status",aliases:["--default_status"]},{flag:"--folder"},{flag:"--alias"},{flag:"--role"},{flag:"--order"},{flag:"--type"},{flag:"--commands"},{flag:"--cli-flag"},{flag:"--required"},{flag:"--required-on-create"},{flag:"--no-allow-unset"},{flag:"--required-types"},{flag:"--infer"},{flag:"--min-count"},{flag:"--apply"},{flag:"--to"},{flag:"--migration-id",aliases:["--migration_id"]},{flag:"--dry-run"},{flag:"--author"},{flag:"--force"}],Mh=[{flag:"--dry-run"},{flag:"--author"},{flag:"--force"}],Fh=[{flag:"--title"},{flag:"--description"},{flag:"--scope"},{flag:"--parent"},{flag:"--related"},{flag:"--blocks"},{flag:"--blocked-by",aliases:["--blocked_by"]},{flag:"--harness"},{flag:"--mode"},{flag:"--resume-context",aliases:["--resume_context"]},{flag:"--tags",aliases:["--tag"],list:!0},{flag:"--priority"},{flag:"--status",short:"-s"},{flag:"--create-mode",aliases:["--create_mode"]},{flag:"--deadline"},{flag:"--estimate",aliases:["--estimated-minutes","--estimated_minutes"]},{flag:"--acceptance-criteria",aliases:["--acceptance_criteria","--ac"],repeatable:!0},{flag:"--definition-of-ready",aliases:["--definition_of_ready"]},{flag:"--order"},{flag:"--rank"},{flag:"--goal"},{flag:"--objective"},{flag:"--value"},{flag:"--impact"},{flag:"--outcome"},{flag:"--why-now",aliases:["--why_now"]},{flag:"--assignee"},{flag:"--reviewer"},{flag:"--risk"},{flag:"--confidence"},{flag:"--sprint"},{flag:"--release"},{flag:"--blocked-reason",aliases:["--blocked_reason"]},{flag:"--unblock-note",aliases:["--unblock_note"]},{flag:"--reporter"},{flag:"--severity"},{flag:"--environment"},{flag:"--repro-steps",aliases:["--repro_steps"]},{flag:"--resolution"},{flag:"--expected-result",aliases:["--expected_result","--expected"]},{flag:"--actual-result",aliases:["--actual_result","--actual"]},{flag:"--affected-version",aliases:["--affected_version"]},{flag:"--fixed-version",aliases:["--fixed_version"]},{flag:"--component"},{flag:"--regression"},{flag:"--customer-impact",aliases:["--customer_impact"]},{flag:"--comment",repeatable:!0},{flag:"--note",repeatable:!0},{flag:"--learning",repeatable:!0},{flag:"--reminder",repeatable:!0},{flag:"--event",repeatable:!0},{flag:"--type-option",aliases:["--type_option"],repeatable:!0},{flag:"--body"},{flag:"--claim"},{flag:"--from-search",aliases:["--from_search"]},{flag:"--template"},{flag:"--step-title",aliases:["--step_title"]},{flag:"--step"},{flag:"--step-body",aliases:["--step_body"]},{flag:"--step-owner",aliases:["--step_owner"]},{flag:"--step-status",aliases:["--step_status"]},{flag:"--step-evidence",aliases:["--step_evidence"]},{flag:"--step-blocked-reason",aliases:["--step_blocked_reason"]},{flag:"--step-replacement",aliases:["--step_replacement"]},{flag:"--depends-on",aliases:["--depends_on"]},{flag:"--link"},{flag:"--link-kind",aliases:["--link_kind"]},{flag:"--link-note",aliases:["--link_note"]},{flag:"--promote-to-item-dep",aliases:["--promote_to_item_dep"]},{flag:"--allow-multiple-active",aliases:["--allow_multiple_active"]},{flag:"--file"},{flag:"--test"},{flag:"--doc"},{flag:"--decision-text",aliases:["--decision_text","--decision"]},{flag:"--decision-rationale",aliases:["--decision_rationale"]},{flag:"--decision-evidence",aliases:["--decision_evidence"]},{flag:"--discovery-text",aliases:["--discovery_text","--discovery"]},{flag:"--validation-text",aliases:["--validation_text","--validation"]},{flag:"--validation-command",aliases:["--validation_command"]},{flag:"--validation-expected",aliases:["--validation_expected"]},{flag:"--depth"},{flag:"--field"},{flag:"--fields",list:!0},{flag:"--steps"},{flag:"--materialize-type",aliases:["--materialize_type"]},{flag:"--materialize-parent",aliases:["--materialize_parent"]},{flag:"--materialize-tags",aliases:["--materialize_tags"]},{flag:"--author"},{flag:"--message"},{flag:"--force"}],$h=[{flag:"--id-prefix",aliases:["--prefix"]},{flag:"--preset"},{flag:"--type-preset"},{flag:"--defaults",short:"-y",aliases:["--yes"]},{flag:"--author"},{flag:"--agent-guidance"},{flag:"--with-packages"},{flag:"--no-merge-fence"},{flag:"--workspace"},{flag:"--force"},{flag:"--verbose"}],jh=[{flag:"--criterion"},{flag:"--clear-criteria"},{flag:"--format"},{flag:"--policy"},{flag:"--default-depth"},{flag:"--activity-limit"},{flag:"--stale-threshold-days"},{flag:"--section-hierarchy"},{flag:"--section-activity"},{flag:"--section-progress"},{flag:"--section-blockers"},{flag:"--section-files"},{flag:"--section-workload"},{flag:"--section-staleness"},{flag:"--section-tests"}],Qd=[{flag:"--init"},{flag:"--scaffold"},{flag:"--capability"},{flag:"--install"},{flag:"--uninstall"},{flag:"--explore"},{flag:"--list"},{flag:"--manage"},{flag:"--describe"},{flag:"--markdown"},{flag:"--output"},{flag:"--reload"},{flag:"--watch"},{flag:"--doctor"},{flag:"--catalog"},{flag:"--adopt"},{flag:"--adopt-all"},{flag:"--activate"},{flag:"--deactivate"},{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--gh"},{flag:"--github"},{flag:"--ref"},{flag:"--detail"},{flag:"--trace"},{flag:"--runtime-probe"},{flag:"--fix-managed-state"},{flag:"--isolated"},{flag:"--ignore-global"},{flag:"--strict-exit"},{flag:"--fail-on-warn"}],me=[{flag:"--project"},{flag:"--local"},{flag:"--global"}],Zd=[...me,{flag:"--capability"}],Wd=[...Qd,{flag:"--declarative"}],Uh=[...Zd,{flag:"--declarative"}],zh=[{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--gh"},{flag:"--github"},{flag:"--ref"}],qh=me,Gh=me,Vh=[...me,{flag:"--markdown"},{flag:"--output"}],Bh=me,Hh=me,Wh=me,Kh=[...me,{flag:"--dry-run"}],Yh=[...me,{flag:"--runtime-probe"},{flag:"--fix-managed-state"}],Xh=[...me,{flag:"--watch"}],Jh=[...me,{flag:"--detail"},{flag:"--trace"},{flag:"--fix-managed-state"},{flag:"--isolated"},{flag:"--ignore-global"},{flag:"--strict-exit"},{flag:"--fail-on-warn"}],Qh=[...me,{flag:"--fields",list:!0}],Zh=[...me,{flag:"--gh"},{flag:"--github"},{flag:"--ref"}],eb=[{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--gh"},{flag:"--github"},{flag:"--ref"}],tb=[{flag:"--dry-run"},{flag:"--cli-only"},{flag:"--packages-only"},{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--repair"},{flag:"--tag"},{flag:"--package-name"}],AF=[{flag:"--mode"},{flag:"--progress"}],nb=[{flag:"--id",value_name:"item-id"},{flag:"--reason",value_name:"value"},{flag:"--close-reason",value_name:"value"},{flag:"--completed-at",value_name:"value"},{flag:"--duplicate-of",value_name:"value"},{flag:"--author",value_name:"value"},{flag:"--message",value_name:"value"},{flag:"--validate-close",value_name:"off|warn|strict"},{flag:"--resolution",value_name:"value"},{flag:"--expected-result",aliases:["--expected_result","--expected"],value_name:"value"},{flag:"--actual-result",aliases:["--actual_result","--actual"],value_name:"value"},{flag:"--force",value_type:"boolean"}],rb=[{flag:"--filter-status",list:!0},{flag:"--filter-type"},{flag:"--filter-tag"},{flag:"--filter-priority"},{flag:"--filter-deadline-before"},{flag:"--filter-deadline-after"},{flag:"--filter-updated-after"},{flag:"--filter-updated-before"},{flag:"--filter-created-after"},{flag:"--filter-created-before"},{flag:"--filter-assignee"},{flag:"--filter-assignee-filter"},{flag:"--filter-assignee_filter"},{flag:"--filter-parent"},{flag:"--filter-sprint"},{flag:"--filter-release"},...Eh,{flag:"--reason"},{flag:"--completed-at"},{flag:"--resolution"},{flag:"--expected-result",aliases:["--expected_result","--expected"]},{flag:"--actual-result",aliases:["--actual_result","--actual"]},{flag:"--validate-close"},{flag:"--author"},{flag:"--message"},{flag:"--force"},{flag:"--dry-run"},{flag:"--rollback"},{flag:"--no-checkpoint"}],ob=[{flag:"--id",value_name:"item-id"},{flag:"--body",short:"-b"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],ib=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"},{flag:"--if-available"},{flag:"--next"},{flag:"--type"},{flag:"--tag"},{flag:"--priority"},{flag:"--assignee-filter"},{flag:"--parent"},{flag:"--sprint"},{flag:"--release"},{flag:"--max-attempts"},{flag:"--include-decisions"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--explain-ranking",aliases:["--explain_ranking"]}],sb=[{flag:"--id",value_name:"item-id"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],ab=[{flag:"--id",value_name:"item-id"},{flag:"--dry-run"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],lb=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"}],cb=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"}],db=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"}],ub=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--validate-close",value_name:"off|warn|strict"},{flag:"--force"}],fb=[{flag:"--parent"},{flag:"--allow-missing-parent"},{flag:"--tags"},{flag:"--priority"},{flag:"--body"},{flag:"--description"},{flag:"--author"},{flag:"--message"}],eu=[{flag:"--start"},{flag:"--duration"},{flag:"--end"},{flag:"--location"},{flag:"--timezone"},{flag:"--all-day"},...fb],pb=eu,mb=[{flag:"--at"},{flag:"--text"},...fb],gb=[{flag:"--id",value_name:"item-id"},{flag:"--add"},{flag:"--add-json"},{flag:"--remove"},{flag:"--run"},{flag:"--match"},{flag:"--only-index"},{flag:"--only-last"},{flag:"--background"},{flag:"--timeout"},{flag:"--progress"},{flag:"--env-set"},{flag:"--env-clear"},{flag:"--shared-host-safe"},{flag:"--pm-context"},{flag:"--override-linked-pm-context"},{flag:"--fail-on-context-mismatch"},{flag:"--fail-on-skipped"},{flag:"--fail-on-empty-test-run"},{flag:"--require-assertions-for-pm"},{flag:"--check-context"},{flag:"--auto-pm-context"},{flag:"--measure",list:!0},{flag:"--metric-below"},{flag:"--metric-diff"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],_b=[{flag:"--status"},{flag:"--limit"},{flag:"--offset"},{flag:"--background"},{flag:"--timeout"},{flag:"--progress"},{flag:"--env-set"},{flag:"--env-clear"},{flag:"--shared-host-safe"},{flag:"--pm-context"},{flag:"--override-linked-pm-context"},{flag:"--fail-on-context-mismatch"},{flag:"--fail-on-skipped"},{flag:"--fail-on-empty-test-run"},{flag:"--require-assertions-for-pm"},{flag:"--check-context"},{flag:"--auto-pm-context"}],yb=[{flag:"--limit"}],hb=[{flag:"--status"},{flag:"--limit"},{flag:"--stream"},{flag:"--tail"},{flag:"--force"},{flag:"--author"}],bb=[{flag:"--dry-run"},{flag:"--scope"}],wb=[{flag:"--storage"},{flag:"--metadata-coverage"},{flag:"--field-utilization"},{flag:"--by-assignee"},{flag:"--by-tag"},{flag:"--by-priority"},{flag:"--tag-prefix"},{flag:"--analytics"}],Eb=[{flag:"--status",repeatable:!0,list:!0},{flag:"--since"},{flag:"--threshold"},{flag:"--limit"}],Tb=[{flag:"--strict-directories"},{flag:"--require-merge-drivers"},{flag:"--strict-exit"},{flag:"--fail-on-warn"},{flag:"--check-only"},{flag:"--check-telemetry"},{flag:"--no-refresh"},{flag:"--refresh-vectors"},{flag:"--verbose-stale-items"},{flag:"--verbose-author-events"},{flag:"--brief"},{flag:"--summary"},{flag:"--skip-vectors"},{flag:"--skip-integrity"},{flag:"--skip-drift"},{flag:"--full"}],vb=[{flag:"--check-metadata"},{flag:"--metadata-profile"},{flag:"--check-resolution"},{flag:"--check-lifecycle"},{flag:"--check-stale-blockers"},{flag:"--dependency-cycle-severity"},{flag:"--parent-cycle-severity"},{flag:"--check-files"},{flag:"--scan-mode"},{flag:"--include-pm-internals"},{flag:"--verbose-file-lists"},{flag:"--verbose-diagnostics"},{flag:"--all-affected-ids"},{flag:"--strict-exit"},{flag:"--fail-on-warn"},{flag:"--fix-hints"},{flag:"--auto-fix"},{flag:"--dry-run"},{flag:"--fix-scope"},{flag:"--prune-missing"},{flag:"--check-history-drift"},{flag:"--check-command-references"},{flag:"--check-storage-integrity"},{flag:"--counts"},{flag:"--full"}],Ab=[{flag:"--definition",value_name:"json"},{flag:"--trigger",value_name:"value"},{flag:"--tree",value_name:"value"},{flag:"--gate",value_name:"id"},{flag:"--limit",value_name:"number"},{flag:"--dry-run"},{flag:"--author",value_name:"value"},{flag:"--message",value_name:"value"}],Sb=[{flag:"--assignee"},{flag:"--parent"},{flag:"--allow-missing-parent"},{flag:"--allow-unresolved-deps"},{flag:"--reviewer"},{flag:"--risk"},{flag:"--confidence"},{flag:"--sprint"},{flag:"--release"},{flag:"--blocked-by"},{flag:"--blocked-reason"},{flag:"--unblock-note"},{flag:"--reporter"},{flag:"--severity"},{flag:"--environment"},{flag:"--repro-steps"},{flag:"--resolution"},{flag:"--expected-result"},{flag:"--actual-result"},{flag:"--affected-version"},{flag:"--fixed-version"}],kb=[{flag:"--component"},{flag:"--regression"},{flag:"--customer-impact"},{flag:"--customer_impact"},{flag:"--definition-of-ready"},{flag:"--definition_of_ready"},{flag:"--order"},{flag:"--rank"},{flag:"--goal"},{flag:"--objective"},{flag:"--value"},{flag:"--impact"},{flag:"--outcome"},{flag:"--why-now"},{flag:"--why_now"}],xb=[{short:"-p",flag:"--priority"},{flag:"--type"},{flag:"--tags",aliases:["--tag"],list:!0},{flag:"--add-tags",aliases:["--add_tags"]},{flag:"--remove-tags",aliases:["--remove_tags"]},{flag:"--deadline"},{flag:"--estimate"},{flag:"--estimated-minutes"},{flag:"--estimated_minutes"},{flag:"--acceptance-criteria"},{flag:"--acceptance_criteria"},{flag:"--ac"},{flag:"--add-ac",aliases:["--add_ac"]},{flag:"--remove-ac",aliases:["--remove_ac"]}],Kd=[{flag:"--stdin-json"},{short:"-t",flag:"--title"},{flag:"--id"},{short:"-d",flag:"--description"},{flag:"--type"},{flag:"--template"},{flag:"--create-mode"},{flag:"--create_mode"},{flag:"--schedule-preset"},{flag:"--schedule_preset"},{short:"-s",flag:"--status"},{flag:"--close-reason"},{flag:"--close_reason"},{flag:"--completed-at"},{flag:"--completed_at"},{short:"-p",flag:"--priority"},{flag:"--tags",aliases:["--tag"],list:!0},{flag:"--add-tags",aliases:["--add_tags"]},{short:"-b",flag:"--body"},{flag:"--body-file"},{flag:"--deadline"},{flag:"--estimate"},{flag:"--estimated-minutes"},{flag:"--estimated_minutes"},{flag:"--acceptance-criteria"},{flag:"--acceptance_criteria"},{flag:"--ac"},{flag:"--author"},{flag:"--message"},...Sb,...kb,{flag:"--blocked_by"},{flag:"--blocked_reason"},{flag:"--unblock_note"},{flag:"--repro_steps"},{flag:"--expected_result"},{flag:"--actual_result"},{flag:"--expected"},{flag:"--actual"},{flag:"--affected_version"},{flag:"--fixed_version"},{flag:"--dep"},{flag:"--type-option"},{flag:"--type_option"},{flag:"--field"},{flag:"--reminder"},{flag:"--event"},{flag:"--comment"},{flag:"--note"},{flag:"--learning"},{flag:"--file"},{flag:"--test"},{flag:"--doc"},{flag:"--unset"},{flag:"--clear-deps"},{flag:"--clear-comments"},{flag:"--clear-notes"},{flag:"--clear-learnings"},{flag:"--clear-files"},{flag:"--clear-tests"},{flag:"--clear-docs"},{flag:"--clear-reminders"},{flag:"--clear-events"},{flag:"--clear-type-options"},{flag:"--allow-duplicate",value_type:"boolean"}],Cb=[{flag:"--transaction-id",value_name:"value"},{flag:"--stdin-json"},{flag:"--dry-run"},{flag:"--create-compensation",value_name:"mode"},{flag:"--lock-ttl-seconds",value_name:"n"},{flag:"--lock-wait-ms",value_name:"n"},{flag:"--author",value_name:"value"}],Ob=[{flag:"--id",value_name:"item-id"},{flag:"--transaction-id",value_name:"value",required:!0},{flag:"--reason",value_name:"value"},{flag:"--file",value_name:"value",repeatable:!0},{flag:"--doc",value_name:"value",repeatable:!0},{flag:"--test",value_name:"value",repeatable:!0},{flag:"--comment",value_name:"value",repeatable:!0},{flag:"--note",value_name:"value",repeatable:!0},{flag:"--learning",value_name:"value",repeatable:!0},{flag:"--resolution",value_name:"value"},{flag:"--expected-result",value_name:"value"},{flag:"--actual-result",value_name:"value"},{flag:"--completed-at",value_name:"value"},{flag:"--validate-close",value_name:"off|warn|strict"},{flag:"--lock-ttl-seconds",value_name:"n"},{flag:"--lock-wait-ms",value_name:"n"},{flag:"--dry-run"},{flag:"--force"},{flag:"--author",value_name:"value"}],Ib=[{flag:"--id",value_name:"item-id"},{flag:"--title",value_name:"value"},{flag:"--author",value_name:"value"},{flag:"--message",value_name:"value"},{flag:"--allow-duplicate",value_type:"boolean"}],Rb=[{flag:"--id",value_name:"item-id"},{flag:"--clear"}],Nb=[{flag:"--id",value_name:"item-id"},{flag:"--stdin-json"},{short:"-t",flag:"--title"},{short:"-d",flag:"--description"},{short:"-b",flag:"--body"},{flag:"--body-file"},{short:"-s",flag:"--status"},{flag:"--close-reason"},{flag:"--close_reason"},{flag:"--completed-at"},...xb,...Sb,{flag:"--fixed_version"},...kb,{flag:"--author"},{flag:"--message"},{flag:"--blocked_by"},{flag:"--blocked_reason"},{flag:"--unblock_note"},{flag:"--repro_steps"},{flag:"--expected_result"},{flag:"--actual_result"},{flag:"--expected"},{flag:"--actual"},{flag:"--affected_version"},{flag:"--dep"},{flag:"--dep-remove"},{flag:"--dep_remove"},{flag:"--replace-deps"},{flag:"--replace-tests"},{flag:"--replace-files"},{flag:"--replace-docs"},{flag:"--comment"},{flag:"--note"},{flag:"--learning"},{flag:"--file"},{flag:"--test"},{flag:"--doc"},{flag:"--reminder"},{flag:"--event"},{flag:"--type-option"},{flag:"--type_option"},{flag:"--field"},{flag:"--unset"},{flag:"--clear-deps"},{flag:"--clear-comments"},{flag:"--clear-notes"},{flag:"--clear-learnings"},{flag:"--clear-files"},{flag:"--clear-tests"},{flag:"--clear-docs"},{flag:"--clear-reminders"},{flag:"--clear-events"},{flag:"--clear-type-options"},{flag:"--force"}],Db=[{flag:"--filter-status",list:!0},{flag:"--filter-type",list:!0},{flag:"--filter-tag",list:!0},{flag:"--filter-priority",list:!0},{flag:"--filter-deadline-before"},{flag:"--filter-deadline-after"},{flag:"--filter-updated-after"},{flag:"--filter-updated-before"},{flag:"--filter-created-after"},{flag:"--filter-created-before"},{flag:"--filter-assignee",list:!0},{flag:"--filter-assignee-filter"},{flag:"--filter-assignee_filter"},{flag:"--filter-parent"},{flag:"--filter-sprint",list:!0},{flag:"--filter-release",list:!0},{flag:"--filter-ac-missing"},{flag:"--filter-estimates-missing",aliases:["--filter-estimate-missing"]},{flag:"--filter-resolution-missing"},{flag:"--filter-metadata-missing"},...Eh,{flag:"--dry-run"},{flag:"--rollback"},{flag:"--no-checkpoint"},{short:"-t",flag:"--title"},{short:"-d",flag:"--description"},{short:"-b",flag:"--body"},...xb,{flag:"--definition-of-ready"},{flag:"--definition_of_ready"},{flag:"--order"},{flag:"--rank"},{flag:"--goal"},{flag:"--objective"},{flag:"--value"},{flag:"--impact"},{flag:"--outcome"},{flag:"--why-now"},{flag:"--why_now"},{flag:"--reviewer"},{flag:"--risk"},{flag:"--confidence"},{flag:"--sprint"},{flag:"--release"},{flag:"--reporter"},{flag:"--severity"},{flag:"--environment"},{flag:"--repro-steps"},{flag:"--repro_steps"},{flag:"--resolution"},{flag:"--expected-result"},{flag:"--expected_result"},{flag:"--expected"},{flag:"--actual-result"},{flag:"--actual_result"},{flag:"--actual"},{flag:"--affected-version"},{flag:"--affected_version"},{flag:"--fixed-version"},{flag:"--fixed_version"},{flag:"--component"},{flag:"--regression"},{flag:"--customer-impact"},{flag:"--customer_impact"},{flag:"--allow-unresolved-deps"},{flag:"--dep"},{flag:"--dep-remove"},{flag:"--dep_remove"},{flag:"--replace-deps"},{flag:"--replace-tests"},{flag:"--replace-files"},{flag:"--replace-docs"},{flag:"--comment"},{flag:"--note"},{flag:"--learning"},{flag:"--file"},{flag:"--test"},{flag:"--doc"},{flag:"--reminder"},{flag:"--event"},{flag:"--type-option"},{flag:"--type_option"},{flag:"--unset"},{flag:"--clear-deps"},{flag:"--clear-comments"},{flag:"--clear-notes"},{flag:"--clear-learnings"},{flag:"--clear-files"},{flag:"--clear-tests"},{flag:"--clear-docs"},{flag:"--clear-reminders"},{flag:"--clear-events"},{flag:"--clear-type-options"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Yd=[{flag:"--view"},{flag:"--date"},{flag:"--from"},{flag:"--to"},{flag:"--past"},{flag:"--full-period"},{flag:"--full_period"},{flag:"--type"},{flag:"--tag"},{flag:"--priority"},{flag:"--status"},{flag:"--assignee"},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--sprint"},{flag:"--release"},{flag:"--include"},{flag:"--recurrence-lookahead-days"},{flag:"--recurrence-lookback-days"},{flag:"--occurrence-limit"},{flag:"--limit"},{flag:"--format"}],Lb=[{flag:"--id"},{flag:"--op"},{flag:"--author"},{flag:"--from"},{flag:"--to"},{flag:"--limit"},{flag:"--unbounded"},{flag:"--compact"},{flag:"--full"},{flag:"--provenance"},{flag:"--provenance-summary"},{flag:"--harness",repeatable:!0},{flag:"--agent-instance",repeatable:!0},{flag:"--provenance-filter",repeatable:!0},{flag:"--stream"}],Pb=[{flag:"--since"},{flag:"--type",repeatable:!0},{flag:"--author",repeatable:!0},{flag:"--item",repeatable:!0},{flag:"--limit",value_type:"number"},{flag:"--full"},{flag:"--provenance"},{flag:"--provenance-summary"},{flag:"--harness",repeatable:!0},{flag:"--agent-instance",repeatable:!0},{flag:"--provenance-filter",repeatable:!0},{flag:"--follow"},{flag:"--interval-ms",value_type:"number"}],Xd=Jd([{flag:"--for",value_name:"intent"},{flag:"--date"},{flag:"--from"},{flag:"--to"},{flag:"--past"},{flag:"--type"},{flag:"--tag"},{flag:"--priority"},{flag:"--assignee"},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--sprint"},{flag:"--release"},{flag:"--parent"},{flag:"--limit",aliases:["--max-items"]},{flag:"--after"},{flag:"--format"},{flag:"--depth"},{flag:"--fields",list:!0},{flag:"--section"},{flag:"--activity-limit"},{flag:"--stale-threshold"},{flag:"--explain-ranking"},{flag:"--explain_ranking"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--no-extension-health"},{flag:"--no-tags"}],new Set(["--limit","--after","--format","--fields","--section","--activity-limit","--stale-threshold","--explain-ranking","--explain_ranking","--no-extension-health","--no-tags"])),Mb=[{flag:"--id",value_name:"item-id"},{flag:"--for",value_name:"intent"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--depth"},{flag:"--full",value_type:"boolean"},{flag:"--fields",list:!0},{flag:"--at"},{flag:"--tree"},{flag:"--tree-depth"},{flag:"--tree_depth"},{flag:"--format"}],Fb=[{flag:"--list"},{flag:"--format"},{flag:"--depth"}],$b=[{flag:"--id",value_name:"item-id"},{flag:"--format"},{flag:"--max-depth"},{flag:"--collapse"},{flag:"--summary"},{flag:"--full"},{flag:"--node-limit"},{flag:"--edge-limit"},{flag:"--token-budget"},{flag:"--cursor"},{flag:"--direction"},{flag:"--kind",list:!0}],jb=[{flag:"--kind",list:!0},{flag:"--max-depth"},{flag:"--limit"},{flag:"--after"},{flag:"--direction"},{flag:"--max-paths"},{flag:"--sample"},{flag:"--exempt-isolate",list:!0},{flag:"--exempt-isolate-type",list:!0},{flag:"--save-baseline"},{flag:"--rebuild"},{flag:"--clear"},{flag:"--summary"},{flag:"--full"}],Ub=[{flag:"--mode"},{flag:"--k"},{flag:"--fail-under"},{flag:"--queries"},{flag:"--format"}],Dt=[{flag:"--dry-run"},{flag:"--force"},{flag:"--author"},{flag:"--message"}],zb=[{flag:"--for",value_name:"intent"},{flag:"--type"},{flag:"--tag"},{flag:"--priority"},{flag:"--assignee"},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--sprint"},{flag:"--release"},{flag:"--parent"},{flag:"--limit"},{flag:"--blocked-limit"},{flag:"--blocked_limit"},{flag:"--ready-only"},{flag:"--ready_only"},{flag:"--format"},{flag:"--explain-ranking"},{flag:"--explain_ranking"},{flag:"--token-budget",aliases:["--token_budget"]}],qb=Jd([{flag:"--for",value_name:"intent"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--mode"},{flag:"--semantic"},{flag:"--hybrid"},{flag:"--match-mode"},{flag:"--min-score"},{flag:"--count"},{flag:"--semantic-weight"},{flag:"--include-linked"},{flag:"--title-exact"},{flag:"--phrase-exact"},{flag:"--highlight"},{flag:"--compact"},{flag:"--full"},{flag:"--fields",list:!0},{flag:"--format"},{flag:"--limit"},{flag:"--after"},{flag:"--status",list:!0},{flag:"--type",list:!0},{flag:"--tag",aliases:["--tags"],list:!0},{flag:"--priority",list:!0},{flag:"--deadline-before"},{flag:"--deadline-after"},{flag:"--updated-after"},{flag:"--updated-before"},{flag:"--created-after"},{flag:"--created-before"},{flag:"--assignee",list:!0},{flag:"--sprint",list:!0},{flag:"--release",list:!0},{flag:"--parent"},...wh],new Set(["--highlight","--compact","--full","--fields","--format","--limit","--token-budget","--after"])),Gb=[{flag:"--action"},{flag:"--command"},{flag:"--summary"},{flag:"--schema-only"},{flag:"--flags-only"},{flag:"--availability-only"},{flag:"--runtime-only"},{flag:"--active-only"},{flag:"--full"}],Vb=[{flag:"--eager-tags"}];function Bb(e){let t=new Set,n=[];for(let r of e){let o=(r.aliases??[]).join(","),i=`${r.flag}|${r.short??""}|${o}`;t.has(i)||(t.add(i),n.push(r))}return n}function Bd(e){return oo(Bb([...Ds,...e]))}var SF=["list","list-all","list-draft","list-open","list-in-progress","list-blocked","list-closed","list-canceled"],Hb=new Map([...SF.map(e=>[e,Th]),["templates",Kd],["cal",Yd],["ctx",Xd],["test-runs-worker",hb],["init",$h],["config",jh],["extension",Qd],["package",Wd],["packages",Wd],["install",eb],["upgrade",tb],["create",Kd],["item mutate",Cb],["item complete",Ob],["copy",Ib],["focus",Rb],["aggregate",vh],["calendar",Yd],["context",Xd],["get",Mb],["guide",Fb],["search",qb],["next",zb],["eval",Ub],["workspace",Dt],["workspace snapshot",Dt],["workspace snapshot create",Dt],["workspace snapshot list",Dt],["workspace snapshot inspect",Dt],["workspace snapshot restore",Dt],["workspace snapshot delete",Dt],["history",Oh],["history-redact",Rh],["history-repair",Nh],["history-author-acknowledge",Dh],["history-compact",Lh],["merge",Ih],["schema",Ph],["profile",Mh],["plan",Fh],["activity",Lb],["events",Pb],["restore",sb],["update",Nb],["update-many",Db],["close",nb],["close-many",rb],["delete",ab],["append",ob],["comments",Ah],["notes",Sh],["learnings",kh],["files",xh],["docs",Ch],["deps",$b],["graph",jb],["test",gb],["test-all",_b],["telemetry",yb],["health",Tb],["assurance",Ab],["validate",vb],["gc",bb],["stats",wb],["duplicates",Eb],["contracts",Gb],["completion",Vb],["claim",ib],["release",lb],["start-task",cb],["pause-task",db],["close-task",ub],["meet",eu],["event",pb],["remind",mb]]),Wb=new Map([["install",zh],["uninstall",qh],["explore",Gh],["manage",Yh],["describe",Vh],["reload",Xh],["doctor",Jh],["catalog",Qh],["adopt",Zh],["adopt-all",Bh],["activate",Hh],["deactivate",Wh],["migrate",Kh]]);function Kb(e){return typeof e!="string"?"":e.trim().toLowerCase()}function kF(e){let t=Kb(e);if(Hb.has(t))return!0;let[n,r,...o]=t.split(/\s+/);return(n==="extension"||n==="package"||n==="packages")&&r!==void 0&&o.length===0&&(r==="init"||Wb.has(r))}function xF(e,t){return t==="init"?e==="extension"?Zd:Uh:Wb.get(t)??[]}function tu(e){let t=Kb(e);if(t.length===0)return Bd([]);let[n,r,...o]=t.split(/\s+/);if((n==="extension"||n==="package"||n==="packages")&&r!==void 0&&o.length===0)return Bd(xF(n,r));let i=Hb.get(t)??[];return Bd(i)}function CF(e,t=!0){let r=oo(e).flatMap(i=>[i.short,i.flag,...i.aliases??[]]).filter(i=>!!i),o=t?[...r,...Ds.flatMap(i=>[i.short,i.flag,...i.aliases??[]]).filter(i=>!!i)]:r;return ro(o).join(" ")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="13e7d51c-8464-578c-8780-5ddb6e029705")}catch{}})();var Yb={oneOf:[{type:"number"},{type:"array",items:{type:"string"}}]},Xb={if:{required:["field"]}};Reflect.set(Xb,"then",{required:["equals"]});var Jb={oneOf:[{type:"object",additionalProperties:!1,required:["id","source"],properties:{id:{type:"string",minLength:1},description:{type:"string"},max_cost:{type:"number",minimum:0},source:{oneOf:[{type:"object",additionalProperties:!1,required:["kind"],allOf:[Xb],properties:{kind:{const:"items"},statuses:{type:"array",items:{type:"string"}},types:{type:"array",items:{type:"string"}},tags:{type:"array",items:{type:"string"}},field:{type:"string"},equals:{type:["string","number","boolean","null"]}}},{type:"object",additionalProperties:!1,required:["kind","dependency_kind"],properties:{kind:{const:"dependency_kind"},dependency_kind:{type:"string",minLength:1}}},{type:"object",required:["kind","operation","field"],properties:{kind:{const:"graph"},operation:{type:"string",minLength:1},field:{type:"string",minLength:1},parameters:{type:"object"}},additionalProperties:!1},...["validate","health"].map(e=>({type:"object",required:["kind","check","field"],properties:{kind:{const:e},check:{type:"string",minLength:1},field:{type:"string",minLength:1}},additionalProperties:!1})),{type:"object",additionalProperties:!1,required:["kind"],properties:{kind:{const:"history"},op:{type:"string"},author:{type:"string"},harness:{type:"string"},model:{type:"string"}}},{type:"object",additionalProperties:!1,required:["kind","link","state"],properties:{kind:{const:"links"},link:{enum:["files","tests","docs"]},state:{enum:["present","missing"]}}},{type:"object",additionalProperties:!1,required:["kind","provider","key"],properties:{kind:{const:"provider"},provider:{type:"string",minLength:1},key:{type:"string",minLength:1},parameters:{type:"object"}}},{type:"object",additionalProperties:!1,required:["kind","expression"],properties:{kind:{const:"derived"},expression:{type:"object",minProperties:1}}}]}}},{type:"object",additionalProperties:!1,required:["id","measurement_id","owner_item_id","scope","enforcement","negative_control"],oneOf:[{required:["ceiling"]},{required:["floor"]},{required:["equals"]},{required:["zero"]},{required:["monotone_nondecreasing"]},{required:["monotone_nonincreasing"]},{required:["subset_of"]}],allOf:[{oneOf:[{not:{required:["lifetime"],properties:{lifetime:{const:"retire"}}}},{required:["lifetime","retire_reason"],properties:{lifetime:{const:"retire"},retire_reason:{type:"string",minLength:1}}}]}],properties:{id:{type:"string",minLength:1},measurement_id:{type:"string",minLength:1},owner_item_id:{type:"string",minLength:1},scope:{oneOf:[{type:"object",additionalProperties:!1,required:["kind"],properties:{kind:{enum:["all","active"]}}},{type:"object",additionalProperties:!1,required:["kind","measurement_id"],properties:{kind:{const:"filter"},measurement_id:{type:"string",minLength:1}}}]},ceiling:{type:"number"},floor:{type:"number"},equals:Yb,zero:{const:!0},monotone_nondecreasing:{type:"number"},monotone_nonincreasing:{type:"number"},subset_of:{type:"array",items:{type:"string"}},lifetime:{enum:["hold","retire"]},retire_reason:{type:"string",minLength:1},enforcement:{enum:["block","warn","observe"]},authorization_decision:{type:"string",minLength:1},negative_control:{type:"object",additionalProperties:!1,required:["cases"],properties:{cases:{type:"array",minItems:2,items:{type:"object",additionalProperties:!1,required:["observed","expected"],properties:{observed:Yb,expected:{enum:["pass","fail"]}}}}}}}},{type:"object",additionalProperties:!1,required:["id","assertion_ids","triggers"],properties:{id:{type:"string",minLength:1},description:{type:"string"},assertion_ids:{type:"array",minItems:1,items:{type:"string",minLength:1}},triggers:{type:"array",minItems:1,items:{enum:["pre-commit","pre-push","pre-merge","ci","pre-release","post-release","scheduled","on-claim","on-close"]}}}}]};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="28d82e94-0359-5ae8-87f1-145f412df35e")}catch{}})();var io={json:{type:"boolean",default:!0},quiet:{type:"boolean"},profile:{type:"boolean"},noExtensions:{type:"boolean"},noPager:{type:"boolean"},tokenAccounting:{type:"boolean"},outputInclude:{type:"string",minLength:1},outputLimit:{anyOf:[{type:"integer",minimum:1},{const:"unbounded"}]},outputBudget:{type:"integer",minimum:1},outputFormat:{type:"string",enum:["json","toon"]},outputSession:{anyOf:[{type:"string",minLength:1},{type:"object",additionalProperties:!1,required:["version","id","token_budget","spent_tokens","seen_item_ids"],properties:{version:{const:1},id:{type:"string",pattern:"^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$"},token_budget:{type:"integer",minimum:256},spent_tokens:{type:"integer",minimum:0},seen_item_ids:{type:"array",maxItems:Ei,items:{type:"string",pattern:"^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"}}}}]},path:{type:"string"},pmExecutable:{type:"string"},timeoutMs:{type:"number"},id:{type:"string"},target:{type:"string"},snapshotAction:{type:"string",enum:["create","list","inspect","restore","delete"]},artifact:{type:"string",enum:["item","history","relationship","json"]},basePath:{type:"string"},oursPath:{type:"string"},theirsPath:{type:"string"},outputPath:{type:"string"},itemPath:{type:"string"},prefer:{type:"string",enum:["ours","theirs"]},includeReconciled:{type:"boolean"},lockTtlSeconds:{type:"number"},lockWaitMs:{type:"number"},capability:{type:"string",minLength:1},declarative:{type:"boolean"},output:{type:"string",minLength:1},markdown:{type:"boolean"},init:{type:"boolean"},install:{type:"boolean"},uninstall:{type:"boolean"},explore:{type:"boolean"},manage:{type:"boolean"},describe:{type:"boolean"},doctor:{type:"boolean"},catalog:{type:"boolean"},adopt:{type:"boolean"},adoptAll:{type:"boolean"},activate:{type:"boolean"},deactivate:{type:"boolean"},filterFilesMissing:{type:"boolean"},filterDocsMissing:{type:"boolean"},matchMode:{type:"string",enum:["all","any","phrase"]},minScore:{anyOf:[{type:"number"},{type:"string",pattern:"^\\d+(\\.\\d+)?$"}]},rank:{anyOf:[{type:"number"},{type:"string",pattern:"^-?\\d+$"}]},exemptIsolateType:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},saveBaseline:{type:"boolean"},rebuild:{type:"boolean"},github:{type:"string"},ref:{type:"string"},query:{type:"string"},queries:{type:"string"},k:{anyOf:[{type:"number"},{type:"string"}]},failUnder:{anyOf:[{type:"number"},{type:"string"}]},for:{type:"string",minLength:1},keywords:{type:"string"},fields:{type:"string"},sort:{type:"string",enum:["priority","deadline","updated_at","created_at","title","parent"]},prefix:{type:"string"},idPrefix:{type:"string"},workspace:{type:"string"},preset:{type:"string",enum:["minimal","default","strict","custom"]},typePreset:{type:"string",enum:["agile","ops","research"]},defaults:{type:"boolean"},verbose:{type:"boolean"},agentGuidance:{type:"string",enum:["ask","add","skip","status"]},withPackages:{type:"boolean"},mergeFence:{type:"boolean"},scope:{type:"string",enum:["project","global"]},allOver:{type:"number"},minEntries:{type:"number"},closed:{type:"boolean"},allStreams:{type:"boolean"},contractAction:{type:"string"},command:{type:"string"},summary:{type:"boolean"},schemaOnly:{type:"boolean"},flagsOnly:{type:"boolean"},availabilityOnly:{type:"boolean"},runtimeOnly:{type:"boolean"},activeOnly:{type:"boolean"},eagerTags:{type:"boolean"},fullChangedFields:{type:"boolean"},provenance:{type:"boolean"},provenanceSummary:{type:"boolean"},agentInstance:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},provenanceFilter:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},idOnly:{type:"boolean"},allowMissingParent:{type:"boolean"},allowUnresolvedDeps:{type:"boolean"},allowDuplicate:{type:"boolean"},duplicateOf:{type:"string"},configAction:{type:"string",enum:["get","set","list","export"]},key:{type:"string"},title:{type:"string"},item:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},start:{type:"string"},duration:{type:"string"},end:{type:"string"},location:{type:"string"},timezone:{type:"string"},allDay:{type:"boolean"},description:{type:"string"},type:{type:"string"},template:{type:"string"},createMode:{type:"string",enum:["strict","progressive"]},schedulePreset:{type:"string",enum:["lightweight"]},status:{type:"string"},since:{type:"string",format:"date-time"},threshold:{type:"number",minimum:0,maximum:1},filterStatus:{type:"string"},filterType:{type:"string"},filterTag:{type:"string"},filterPriority:{anyOf:[{type:"string"},{type:"number"}]},filterDeadlineBefore:{type:"string"},filterDeadlineAfter:{type:"string"},filterUpdatedAfter:{type:"string"},filterUpdatedBefore:{type:"string"},filterCreatedAfter:{type:"string"},filterCreatedBefore:{type:"string"},filterAssignee:{type:"string"},filterAssigneeFilter:{type:"string",enum:["assigned","unassigned"]},filterParent:{type:"string"},filterSprint:{type:"string"},filterRelease:{type:"string"},closeReason:{type:"string"},completedAt:{type:"string",format:"date-time"},reason:{type:"string"},priority:{anyOf:[{type:"string"},{type:"number"}]},tags:{type:"string"},addTags:{type:"array",items:{type:"string"}},removeTags:{type:"array",items:{type:"string"}},addAc:{type:"array",items:{type:"string"}},removeAc:{type:"array",items:{type:"string"}},body:{type:"string"},deadline:{type:"string"},estimate:{anyOf:[{type:"string"},{type:"number"}]},acceptanceCriteria:{type:"string"},author:{type:"string"},message:{type:"string"},assignee:{type:"string"},assigneeFilter:{type:"string",enum:["assigned","unassigned"]},parent:{type:"string"},reviewer:{type:"string"},attributedAuthor:{type:"string"},historyEvent:{type:"array",items:{type:"string"}},risk:{type:"string"},confidence:{anyOf:[{type:"string"},{type:"number"}]},sprint:{type:"string"},release:{type:"string"},blockedBy:{type:"string"},blockedReason:{type:"string"},unblockNote:{type:"string"},reporter:{type:"string"},severity:{type:"string"},environment:{type:"string"},reproSteps:{type:"string"},resolution:{type:"string"},expectedResult:{type:"string"},actualResult:{type:"string"},affectedVersion:{type:"string"},fixedVersion:{type:"string"},component:{type:"string"},regression:{anyOf:[{type:"boolean"},{type:"string"},{type:"number"}]},customerImpact:{type:"string"},definitionOfReady:{type:"string"},order:{anyOf:[{type:"string"},{type:"number"}]},goal:{type:"string"},objective:{type:"string"},value:{type:"string"},impact:{type:"string"},outcome:{type:"string"},whyNow:{type:"string"},mode:{type:"string",enum:["keyword","semantic","hybrid"]},semanticWeight:{anyOf:[{type:"string"},{type:"number"}]},op:{type:"string"},compact:{type:"boolean"},brief:{type:"boolean"},full:{type:"boolean"},view:{type:"string",enum:["agenda","day","week","month"]},date:{type:"string"},from:{type:"string"},before:{type:"string"},at:{type:"string"},to:{type:"string"},migrationId:{type:"string"},fieldTypeScope:{type:"string"},past:{type:"boolean"},fullPeriod:{type:"boolean"},include:{type:"string"},recurrenceLookaheadDays:{anyOf:[{type:"string"},{type:"number"}]},recurrenceLookbackDays:{anyOf:[{type:"string"},{type:"number"}]},occurrenceLimit:{anyOf:[{type:"string"},{type:"number"}]},includeLinked:{type:"boolean"},semantic:{type:"boolean"},hybrid:{type:"boolean"},titleExact:{type:"boolean"},phraseExact:{type:"boolean"},highlight:{type:"boolean"},includeBody:{type:"boolean"},noTruncate:{type:"boolean"},strictRead:{type:"boolean"},tag:{type:"string"},deadlineBefore:{type:"string"},deadlineAfter:{type:"string"},today:{type:"boolean"},recent:{type:"boolean"},updatedAfter:{type:"string"},updatedBefore:{type:"string"},createdAfter:{type:"string"},createdBefore:{type:"string"},filterAcMissing:{type:"boolean"},filterEstimatesMissing:{type:"boolean"},filterResolutionMissing:{type:"boolean"},filterMetadataMissing:{type:"boolean"},filterReviewerMissing:{type:"boolean"},filterRiskMissing:{type:"boolean"},filterConfidenceMissing:{type:"boolean"},filterSprintMissing:{type:"boolean"},filterReleaseMissing:{type:"boolean"},hasNotes:{type:"boolean"},noNotes:{type:"boolean"},hasLearnings:{type:"boolean"},noLearnings:{type:"boolean"},hasFiles:{type:"boolean"},noFiles:{type:"boolean"},hasDocs:{type:"boolean"},noDocs:{type:"boolean"},hasTests:{type:"boolean"},noTests:{type:"boolean"},hasComments:{type:"boolean"},noComments:{type:"boolean"},hasDeps:{type:"boolean"},noDeps:{type:"boolean"},hasBody:{type:"boolean"},emptyBody:{type:"boolean"},hasLinkedCommand:{type:"boolean"},noLinkedCommand:{type:"boolean"},filterHasNotes:{type:"boolean"},filterNoNotes:{type:"boolean"},filterHasLearnings:{type:"boolean"},filterNoLearnings:{type:"boolean"},filterHasFiles:{type:"boolean"},filterNoFiles:{type:"boolean"},filterHasDocs:{type:"boolean"},filterNoDocs:{type:"boolean"},filterHasTests:{type:"boolean"},filterNoTests:{type:"boolean"},filterHasComments:{type:"boolean"},filterNoComments:{type:"boolean"},filterHasDeps:{type:"boolean"},filterNoDeps:{type:"boolean"},filterHasBody:{type:"boolean"},filterEmptyBody:{type:"boolean"},filterHasLinkedCommand:{type:"boolean"},filterNoLinkedCommand:{type:"boolean"},ids:{type:"string"},limit:{anyOf:[{type:"string"},{type:"number"}]},blockedLimit:{anyOf:[{type:"string"},{type:"number"}]},readyOnly:{type:"boolean"},offset:{anyOf:[{type:"string"},{type:"number"}]},progress:{type:"boolean"},background:{type:"boolean"},runId:{type:"string"},stream:{anyOf:[{type:"boolean"},{type:"string",enum:["stdout","stderr","both","rows","ndjson","jsonl"]}]},tail:{anyOf:[{type:"string"},{type:"number"}]},addJson:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},eventType:{type:"string"},includeMeta:{type:"boolean"},allActionable:{type:"boolean"},verboseAuthorEvents:{type:"boolean"},match:{type:"string"},onlyIndex:{anyOf:[{type:"string"},{type:"number"}]},onlyLast:{type:"boolean"},envSet:{type:"array",items:{type:"string"}},envClear:{type:"array",items:{type:"string"}},sharedHostSafe:{type:"boolean"},detail:{type:"string",enum:["summary","deep"]},trace:{type:"boolean"},reload:{type:"boolean"},watch:{type:"boolean"},runtimeProbe:{type:"boolean"},fixManagedState:{type:"boolean"},isolated:{type:"boolean"},ignoreGlobal:{type:"boolean"},pmContext:{type:"string",enum:["schema","tracker","auto"]},overrideLinkedPmContext:{type:"boolean"},failOnContextMismatch:{type:"boolean"},failOnSkipped:{type:"boolean"},failOnEmptyTestRun:{type:"boolean"},requireAssertionsForPm:{type:"boolean"},checkContext:{type:"boolean"},autoPmContext:{type:"boolean"},measure:{type:"array",items:{type:"string"}},metricBelow:{type:"string"},metricDiff:{type:"string"},diff:{type:"boolean"},storage:{type:"boolean"},metadataCoverage:{type:"boolean"},fieldUtilization:{type:"boolean"},byAssignee:{type:"boolean"},byTag:{type:"boolean"},byPriority:{type:"boolean"},tagPrefix:{type:"string"},measurements:{type:"boolean"},metric:{type:"string"},measurementLimit:{type:"integer",minimum:0,maximum:1e3},observe:{type:"array",items:{type:"string"}},improvementDirection:{type:"string",enum:["higher","lower","target"]},measurementSource:{type:"string"},measurementItem:{type:"string"},measurementRevision:{type:"string"},provenanceCoverage:{type:"boolean"},fleetAttribution:{type:"boolean"},eventLimit:{type:"integer",minimum:1,maximum:1e5},minimumSample:{type:"integer",minimum:1,maximum:1e4},verify:{type:"boolean"},literal:{type:"array",items:{type:"string"}},regex:{type:"array",items:{type:"string"}},replacement:{type:"string"},timeout:{anyOf:[{type:"string"},{type:"number"}]},validateClose:{type:"string",enum:["off","warn","strict"]},checkMetadata:{type:"boolean"},metadataProfile:{type:"string",enum:["core","strict","custom"]},checkResolution:{type:"boolean"},checkLifecycle:{type:"boolean"},checkStaleBlockers:{type:"boolean"},dependencyCycleSeverity:{type:"string",enum:["off","warn","error"]},parentCycleSeverity:{type:"string",enum:["off","warn","error"]},checkFiles:{type:"boolean"},checkStorageIntegrity:{type:"boolean"},strictDirectories:{type:"boolean"},requireMergeDrivers:{type:"boolean"},checkOnly:{type:"boolean"},checkTelemetry:{type:"boolean"},noRefresh:{type:"boolean"},refreshVectors:{type:"boolean"},verboseStaleItems:{type:"boolean"},skipVectors:{type:"boolean"},skipIntegrity:{type:"boolean"},skipDrift:{type:"boolean"},verboseDiagnostics:{type:"boolean"},allAffectedIds:{type:"boolean"},scanMode:{type:"string",enum:["default","tracked-all","tracked-all-strict"]},includePmInternals:{type:"boolean"},verboseFileLists:{type:"boolean"},strictExit:{type:"boolean"},failOnWarn:{type:"boolean"},fixHints:{type:"boolean"},autoFix:{type:"boolean"},fixScope:{type:"array",items:{type:"string",enum:["metadata","resolution","estimates","lifecycle"]}},pruneMissing:{type:"boolean"},checkHistoryDrift:{type:"boolean"},checkCommandReferences:{type:"boolean"},counts:{type:"boolean"},edit:{type:"integer",minimum:1},delete:{type:"integer",minimum:1},dryRun:{type:"boolean"},all:{type:"boolean"},clear:{type:"boolean"},cliOnly:{type:"boolean"},packagesOnly:{type:"boolean"},repair:{type:"boolean"},packageName:{type:"string"},rollback:{type:"string"},noCheckpoint:{type:"boolean"},force:{type:"boolean"},ifAvailable:{type:"boolean"},next:{type:"boolean"},maxAttempts:{anyOf:[{type:"integer",minimum:1,maximum:100},{type:"string",pattern:"^(?:[1-9]|[1-9][0-9]|100)$"}]},includeDecisions:{type:"boolean"},explainRanking:{type:"boolean"},noTags:{type:"boolean"},noExtensionHealth:{type:"boolean"},run:{type:"boolean"},count:{type:"boolean"},sum:{type:"string"},avg:{type:"string"},tree:{type:"boolean"},treeId:{type:"string",minLength:1},definition:{type:"object"},trigger:{type:"string",enum:["pre-commit","pre-push","pre-merge","ci","pre-release","post-release","scheduled","on-claim","on-close"]},gate:{type:"string",minLength:1},treeDepth:{anyOf:[{type:"string"},{type:"number"}]},includeUnparented:{type:"boolean"},gcScope:{type:"array",items:{type:"string",enum:["index","embeddings","runtime","locks"]}},maxDepth:{anyOf:[{type:"string"},{type:"number"}]},nodeLimit:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},edgeLimit:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},tokenBudget:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},cursor:{type:"string"},direction:{type:"string",enum:["outgoing","incoming","both"]},kind:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},after:{type:"string"},maxPaths:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},sample:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},exemptIsolate:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},collapse:{type:"string",enum:["none","repeated"]},shell:{type:"string",enum:["bash","zsh","fish"]},stdin:{type:"boolean"},file:{type:"string"},preserveSourceIds:{type:"boolean"},folder:{type:"string"},subcommand:{type:"string"},name:{type:"string"},defaultStatus:{type:"string"},alias:{type:"array",items:{type:"string"}},role:{type:"array",items:{type:"string"}},fieldType:{type:"string",enum:["string","number","boolean","string_array"]},commands:{type:"array",items:{type:"string"}},cliFlag:{type:"string"},required:{type:"boolean"},requiredOnCreate:{type:"boolean"},allowUnset:{type:"boolean"},requiredTypes:{type:"array",items:{type:"string"}},infer:{type:"boolean"},minCount:{type:"number"},text:{type:"string"},add:{type:"array",items:{type:"string"}},addGlob:{type:"array",items:{type:"string"}},remove:{type:"array",items:{type:"string"}},migrate:{type:"array",items:{type:"string"}},discover:{type:"boolean"},apply:{type:"boolean"},discoveryNote:{type:"string"},lookupPath:{type:"array",items:{type:"string"}},explain:{type:"boolean"},lines:{type:"string",pattern:"^[1-9]\\d*:[1-9]\\d*$"},decisionDepth:{type:"integer",minimum:1,maximum:32},addNote:{type:"string"},list:{type:"boolean"},appendStable:{type:"boolean"},validatePaths:{type:"boolean"},dep:{type:"array",items:{type:"string"}},depRemove:{type:"array",items:{type:"string"}},replaceDeps:{type:"boolean"},replaceTests:{type:"boolean"},replaceFiles:{type:"boolean"},replaceDocs:{type:"boolean"},comment:{type:"array",items:{type:"string"}},note:{type:"array",items:{type:"string"}},learning:{type:"array",items:{type:"string"}},linkedFile:{type:"array",items:{type:"string"}},linkedTest:{type:"array",items:{type:"string"}},doc:{type:"array",items:{type:"string"}},reminder:{type:"array",items:{type:"string"}},event:{type:"array",items:{type:"string"}},typeOption:{type:"array",items:{type:"string"}},field:{type:"array",items:{type:"string"}},unset:{type:"array",items:{type:"string"}},clearDeps:{type:"boolean"},clearComments:{type:"boolean"},clearNotes:{type:"boolean"},clearLearnings:{type:"boolean"},clearFiles:{type:"boolean"},clearTests:{type:"boolean"},clearDocs:{type:"boolean"},clearReminders:{type:"boolean"},clearEvents:{type:"boolean"},clearTypeOptions:{type:"boolean"},criterion:{type:"array",items:{type:"string"}},clearCriteria:{type:"boolean"},groupBy:{type:"string"},completion:{type:"boolean"},format:{type:"string"},unbounded:{type:"boolean"},depth:{type:"string",enum:["brief","standard","deep","full"]},section:{type:"array",items:{type:"string",enum:["hierarchy","activity","progress","blockers","files","workload","staleness","tests"]}},activityLimit:{anyOf:[{type:"string"},{type:"number"}]},staleThreshold:{type:"string"},policy:{type:"string"}},Qb={assurance:{definition:Jb,kind:{type:"string",enum:["measurement","assertion","gate"]},subcommand:{type:"string",enum:["list","show","put","remove","run","verdicts"]},limit:{type:"integer",minimum:1,maximum:1e3}},activity:{harness:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]}},events:{since:{type:"string",minLength:1},type:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},author:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},item:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},limit:{type:"integer",minimum:0,maximum:1e3},harness:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]}},history:{harness:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]}},remind:{at:{type:"string",minLength:1}}},OF=["create","show","add-step","update-step","complete-step","block-step","reorder-step","remove-step","link","unlink","decision","discovery","validation","resume","approve","materialize"],nu={subcommand:{type:"string",enum:[...OF]},stepRef:{type:"string"},reorderTo:{anyOf:[{type:"string"},{type:"number"}]},scope:{type:"string"},harness:{type:"string",enum:[...xu]},mode:{type:"string",enum:[...ku]},resumeContext:{type:"string"},related:{type:"string"},blocks:{type:"string"},claim:{type:"boolean"},fromSearch:{type:"string"},stepTitle:{type:"string"},step:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},stepBody:{type:"string"},stepOwner:{type:"string"},stepStatus:{type:"string",enum:[...Co]},stepEvidence:{type:"string"},stepBlockedReason:{type:"string"},stepReplacement:{type:"string"},dependsOn:{type:"string"},link:{type:"string"},linkKind:{type:"string",enum:[...Cu]},linkNote:{type:"string"},promoteToItemDep:{type:"boolean"},allowMultipleActive:{type:"boolean"},file:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},test:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},doc:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},decisionText:{type:"string"},decision:{type:"string"},decisionRationale:{type:"string"},decisionEvidence:{type:"string"},discoveryText:{type:"string"},discovery:{type:"string"},validationText:{type:"string"},validation:{type:"string"},validationCommand:{type:"string"},validationExpected:{type:"string"},steps:{type:"array",items:{type:"string"}},materializeType:{type:"string"},materializeParent:{type:"string"},materializeTags:{type:"string"},field:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]}},ru={subcommand:{description:"Plan workflow operation to run.",examples:["create","show","add-step","approve"]},stepRef:{description:"Plan step id or order for step lifecycle subcommands.",examples:["plan-step-001","1"]},reorderTo:{description:"New integer order for reorder-step.",examples:[1,"2"]},scope:{description:"Short free-text scope statement describing what the Plan covers.",examples:["Release readiness audit","Search package migration"]},mode:{description:"Plan lifecycle mode.",examples:["draft","research","approved"]},step:{description:"Ordered initial step titles for create (string or array, never comma-split; stepTitle, when also set, becomes the first step). For step subcommands a single value aliases stepTitle.",examples:[["Read the code","Write the fix","Run the tests"]]},file:{description:"File link to attach while creating or materializing a Plan.",examples:["path=src/cli.ts,note=implementation surface"]},test:{description:"Test command link to attach while creating or materializing a Plan.",examples:["command=pnpm build,timeout_seconds=300"]},doc:{description:"Documentation link to attach while creating or materializing a Plan.",examples:["path=docs/SDK.md,note=public API reference"]}},so={action:{description:"Tool action to execute."},pmExecutable:{description:"Override the pm executable used by actions that invoke or verify an external CLI process.",examples:["pm","node dist/cli.js"]},force:{description:"Allow the selected action to override its supported ownership, terminal-state, or destructive-operation guard."},limit:{description:"Maximum number of rows returned by the selected action.",examples:[10,"25"]},text:{description:"Text payload used by append, comment, note, or learning mutations."},path:{description:"Optional PM data root override for this invocation.",examples:[".agents/pm"]},scope:{description:"Scope selector for commands that operate on project or global state. Linked files, docs, and tests default to project scope when omitted.",examples:["project","global"]},detail:{description:"Detail mode for commands that support concise and deep diagnostics.",examples:["summary","deep"]},trace:{description:"When true for extension-doctor, include actionable registration traces in deep diagnostics."},reload:{description:"When true for extension action payloads, trigger cache-busted extension module reload."},watch:{description:"When true for extension-reload/extension action payloads, enable watch mode semantics."},runtimeProbe:{description:"When true for extension-manage, run a doctor-like runtime activation probe for parity fields."},fixManagedState:{description:"When true for extension-manage/extension-doctor, adopt unmanaged extensions before diagnostics/update checks."},isolated:{description:"When true for extension-doctor/package-doctor, ignore global registrations for hermetic project diagnostics."},ignoreGlobal:{description:"Alias for isolated on extension-doctor/package-doctor action payloads."},target:{description:"Positional target argument for the selected action (ID, source, package source, or extension name).",examples:["pm-a1b2",".agents/pm/extensions/sample","sample-extension"]},capability:{description:"Starter capability selected by extension-init or package-init scaffolding.",examples:["commands","hooks","search","schema"]},declarative:{description:"Generate the package composeExtension declarative blueprint starter."},output:{description:"File path for commands that write generated output, such as package/extension describe Markdown references.",examples:["docs/pm-package-reference.md"]},markdown:{description:"Render the package or extension description as Markdown instead of structured output.",examples:[!0]},github:{description:"GitHub shorthand owner/repo[/path] source for package/extension install actions.",examples:["org/repo/extensions/sample"]},ref:{description:"Git ref/branch/tag used when installing from GitHub shorthand/URL sources.",examples:["main","v1.0.0"]},cliOnly:{description:"Restrict upgrade to the pm CLI/SDK npm package."},packagesOnly:{description:"Restrict upgrade to managed installable pm packages."},repair:{description:"Force npm global reinstall semantics when upgrading the pm CLI/SDK."},tag:{description:"npm version or dist-tag used for CLI and registry package upgrades.",examples:["latest","next","2026.5.11"]},today:{description:"When true for list actions, include only items updated since local midnight today."},recent:{description:"When true for list actions, include only items updated in the last seven days."},packageName:{description:"Override the pm CLI package name for self-upgrade automation and tests.",examples:["@unbrained/pm-cli"]},json:{description:"Emit machine-readable JSON output."},quiet:{description:"Suppress stdout payload output."},noExtensions:{description:"Disable extension loading for this invocation."},noPager:{description:"Disable pager integration for help and long output."},tokenAccounting:{description:"Request a bounded transport-level receipt for output emitted by a compatible CLI or MCP host."},outputInclude:{description:"Comma-separated fields or sections retained by any built-in read action.",examples:["id,title,status","summary,counts"]},outputLimit:{description:"Universal read row ceiling, or unbounded to disable the shared ceiling.",examples:[10,"unbounded"]},outputBudget:{description:"Universal estimated-token ceiling for a read result.",examples:[600,1200]},outputFormat:{description:"Universal read-result encoding selector.",examples:["toon","json"]},outputSession:{description:"Caller-carried JSON session state that enforces a token ceiling across read calls and replaces repeated item facts with resolvable context references.",examples:[{version:1,id:"orientation",token_budget:4e3,spent_tokens:0,seen_item_ids:[]}]},profile:{description:"Emit deterministic timing diagnostics to stderr."},timeoutMs:{description:"Tool execution timeout in milliseconds.",examples:[12e4]},id:{description:"Item identifier for read or mutation actions.",examples:["pm-a1b2"]},treeId:{description:"Commit, tree, snapshot, or immutable workspace identity judged by an assurance gate.",examples:["0123456789abcdef","release-candidate-3"]},definition:{description:"Structured measurement, assertion, or gate declaration used by assurance put."},trigger:{description:"Lifecycle trigger used to evaluate an assurance gate.",examples:["ci","pre-release"]},gate:{description:"Stable assurance gate id used to filter durable verdict history.",examples:["release-readiness"]},runId:{description:"Background test run identifier.",examples:["tr-kq9x3f-93acde"]},title:{description:"Item title text."},description:{description:"Item description text."},type:{description:"Item type name from the active runtime type registry.",examples:["Task","Feature"]},subcommand:{description:"Subcommand selector for schema, profile, telemetry, and graph actions."},name:{description:"Custom definition name, schema migration source name, or profile name.",examples:["Spike","review","component"]},defaultStatus:{description:"Default status hint recorded for a custom item type.",examples:["open"]},alias:{description:"Aliases for the custom item type or status (repeatable).",examples:[["spike","research"]]},role:{description:"Lifecycle roles for a custom status (schema add-status): draft, active, blocked, terminal, terminal_done, terminal_canceled, default_open, default_close, default_cancel.",examples:[["active"],["terminal","terminal_done"]]},fieldType:{description:"Value type for a custom field (schema add-field): string, number, boolean, or string_array.",examples:["string","number","string_array"]},fieldTypeScope:{description:"Optional item type restricting which records participate in schema rename-field.",examples:["Issue","Feature"]},migrationId:{description:"Optional stable idempotency override used to persist and resume a schema migration plan; omitted values are derived from the workspace and normalized request.",examples:["severity-to-impact-v2"]},commands:{description:"Commands a custom field is wired onto (schema add-field): create, update, update_many, list, search, calendar, context.",examples:[["create","update"],["create","update","list"]]},cliFlag:{description:"Override the auto-derived CLI flag for a custom field (schema add-field).",examples:["--owner"]},required:{description:"Mark a custom field as always required (schema add-field)."},requiredOnCreate:{description:"Mark a custom field as required at create time (schema add-field)."},allowUnset:{description:"Whether a custom field may be cleared via --unset (schema add-field); defaults to true."},allowDuplicate:{description:"Explicitly proceed when strict similarity governance finds likely duplicate items."},allowUnresolvedDeps:{description:"Permit unresolved local dependency targets while returning dependency_target_unresolved warning receipts. Cross-workspace references should use source_kind=external instead.",examples:[!0]},requiredTypes:{description:"Restrict a custom field's requirement to specific item types (schema add-field).",examples:[["Bug"],["Story","Spike"]]},infer:{description:"Infer custom item types from title-prefix conventions (schema add-type); previews unless apply is true."},minCount:{description:"Minimum number of items sharing a title prefix for schema add-type inference (default 10).",examples:[10,25]},preset:{description:"Governance preset for initialization flows.",examples:["minimal","default","strict"]},idPrefix:{description:"Tracker item identifier prefix used by initialization; overrides the positional compatibility prefix.",examples:["pm","work"]},workspace:{description:"Workspace directory where initialization resolves or creates the tracker.",examples:[".","packages/app"]},typePreset:{description:"Domain item-type preset registered during initialization.",examples:["agile","ops","research"]},defaults:{description:"Use non-interactive setup defaults during initialization."},verbose:{description:"Include the full resolved settings tree in init output."},agentGuidance:{description:"Control AGENTS.md/CLAUDE.md guidance behavior during init: ask, add, skip, or status.",examples:["ask","add","skip","status"]},withPackages:{description:"Install all bundled first-party pm packages during initialization."},mergeFence:{description:"Install the repository merge-driver fence for a fresh Git-backed tracker; set false to opt out."},createMode:{description:"Create required-option policy mode.",examples:["strict","progressive"]},schedulePreset:{description:"Schedule-centric create preset for Reminder, Meeting, and Event types.",examples:["lightweight"]},status:{description:"Item status value. Statuses are project-configurable via .agents/pm/settings.json (schema block); the built-in defaults are draft, open, in_progress, blocked, closed, canceled. Custom statuses defined for the project are accepted \u2014 discover the active set with the pm_contracts tool (workspace.statuses) or `pm contracts`. Unknown statuses are rejected at runtime with a did-you-mean hint rather than blocked by a fixed schema enum.",examples:["open","in_progress"]},since:{description:"Inclusive ISO 8601 creation timestamp lower bound for duplicate discovery.",examples:["2026-01-01T00:00:00.000Z"]},threshold:{description:"Minimum duplicate similarity score from zero through one.",examples:[.85]},priority:{description:"Priority value in range 0..4.",examples:[0,1,"2"]},order:{description:"Planning order/rank value for create/update, or sort direction (asc|desc) for list-family sorting.",examples:[0,1,"2","asc","desc"]},sort:{description:"List-family sort field selector.",examples:["priority","deadline","updated_at","created_at","title","parent"]},tags:{description:"Comma-delimited tag list.",examples:["pm-cli,agent-ux"]},addTags:{description:"Tags to add to the existing list without replacing it. Each entry may be CSV or a JSON array.",examples:[["agent-ux"],["fix","security"]]},addAc:{description:"Acceptance criteria appended individually without replacing the existing list (one criterion per entry).",examples:[["error path covered by a regression test"]]},removeAc:{description:"Acceptance criteria removed individually by exact text match; the mutation fails atomically if any selector is unmatched (one criterion per entry).",examples:[["superseded manual QA step"]]},removeTags:{description:"Tags to remove from the existing list. Each entry may be CSV or a JSON array.",examples:[["stale"],["legacy","wontfix"]]},deadline:{description:"ISO/date timestamp or relative offset (+6h/+1d/+2w/+6m).",examples:["2026-04-01T00:00:00.000Z","+1d"]},reminder:{description:"Repeatable reminder seed entries at=<iso|relative>,text=<text>.",examples:[["at=+2d,text=Review PR"]]},event:{description:"Repeatable event seed entries start=<iso|relative> with end=<iso|relative> or duration=<relative|30min|PT30M>. Bare `m` remains months for backward compatibility.",examples:[["start=2026-07-01T10:00:00Z,duration=2h,title=planning"],["start=2026-07-01T10:00:00Z,duration=30min,title=standup"],["start=2026-07-01T10:00:00Z,duration=PT30M,title=window"]]},historyEvent:{description:"Unknown-author history target in <item-id>:<one-based-line> form.",examples:[["pm-example:4","pm-example:5"]]},estimate:{description:"Estimated effort in minutes.",examples:[60,"120"]},acceptanceCriteria:{description:"Complete acceptance-criteria text supplied while creating or replacing an item field."},author:{description:"Intentional mutation-author override. Agent harness identity is automatic when omitted."},attributedAuthor:{description:"Principal attributed to the immutable unknown-author history events after review.",examples:["reviewed-principal"]},message:{description:"History message for mutation audit trail."},assignee:{description:"Assignee identity."},assigneeFilter:{description:"Assignee presence selector for list, calendar, and context filters.",examples:["assigned","unassigned"]},parent:{description:"Parent item ID filter for hierarchical list queries.",examples:["pm-epic01"]},blockedLimit:{description:"Cap blocked rows returned by the next action (defaults to the ready --limit).",examples:["3"]},readyOnly:{description:"When true, the next action omits the blocked companion list."},unset:{description:"Repeatable list of item-metadata fields to clear explicitly during create/update mutations.",examples:[["deadline","assignee"],["close-reason"]]},clearDeps:{description:"When true, clear linked dependencies."},replaceDeps:{description:"When true for update, atomically replace dependencies with the supplied --dep values."},replaceTests:{description:"When true for update, atomically replace linked tests with the supplied --test values."},replaceFiles:{description:"When true for update, atomically replace linked files with the supplied --file values."},replaceDocs:{description:"When true for update, atomically replace linked docs with the supplied --doc values."},lookupPath:{description:"One or more source paths whose referencing pm items should be returned by files lookup.",examples:[["src/sdk/files.ts"],["README.md","docs/SDK.md"]]},explain:{description:"Include ranked linked-file, rationale, and governing-decision evidence for a files lookup."},lines:{description:"Inclusive start:end source-line range for Git contribution attribution; requires one lookup path.",examples:["10:24"]},decisionDepth:{description:"Maximum typed relationship depth searched for a governing Decision during files lookup.",examples:[8]},clearComments:{description:"When true, clear item comments."},clearNotes:{description:"When true, clear item notes."},clearLearnings:{description:"When true, clear item learnings."},clearFiles:{description:"When true, clear linked files."},clearTests:{description:"When true, clear linked tests."},clearDocs:{description:"When true, clear linked docs."},clearReminders:{description:"When true, clear reminders."},clearEvents:{description:"When true, clear events."},clearTypeOptions:{description:"When true, clear type option metadata."},clearCriteria:{description:"When true for config set criteria-list keys (definition-of-done, metadata-required-fields, lifecycle pattern lists), clear the criteria list."},mode:{description:"Mode selector for search and reindex (keyword|semantic|hybrid).",examples:["keyword","hybrid"]},semanticWeight:{description:"Per-query hybrid semantic weight override in [0,1] for search action; invalid values fall back to settings.",examples:[.2,"0.7"]},op:{description:"History operation filter for activity output.",examples:["create","update","close","update_ownership_bypass"]},fullPeriod:{description:"For day/week/month calendar views, include the full anchored period instead of clipping the start to now."},progress:{description:"Emit progress diagnostics to stderr for long-running operations."},background:{description:"Run linked tests in managed background mode."},addJson:{description:"JSON input: one structured context event for notes, or repeatable linked-test entries for test.",examples:[['{"command":"node scripts/run-tests.mjs test -- tests/unit/output.spec.ts","timeout_seconds":240}']]},eventType:{description:"For notes action, return structured context events whose top-level type matches this value."},includeMeta:{description:"Include structured-event counts for notes reads; filtered reads also include total, returned, limit, and has-more metadata."},allActionable:{description:"For history-author-acknowledge, select every currently actionable undispositioned event."},match:{description:"Run only linked tests whose command or path contains this case-insensitive substring.",examples:["output.spec.ts","coverage"]},onlyIndex:{description:"Run only the 1-based linked-test index from pm test <id> --list order.",examples:[1,"2"]},onlyLast:{description:"Run only the most recently added linked-test entry."},envSet:{description:"Repeatable runtime environment KEY=VALUE overrides for linked-test execution.",examples:[["PORT=0","PLAYWRIGHT_HTML_OPEN=never"]]},envClear:{description:"Repeatable runtime environment variable names to clear before linked-test execution.",examples:[["PLAYWRIGHT_BASE_URL"]]},sharedHostSafe:{description:"Apply additive shared-host-safe runtime defaults during linked-test execution."},pmContext:{description:"PM linked-test context mode (schema keeps isolated tracker data; tracker seeds source tracker data; auto uses tracker for PM tracker-read linked commands).",examples:["schema","tracker","auto"]},overrideLinkedPmContext:{description:"Force run-level --pm-context to override per-linked-test pm_context_mode metadata for all linked-test entries."},failOnContextMismatch:{description:"Fail linked PM command runs when source and sandbox tracker item counts differ."},failOnSkipped:{description:"Treat skipped linked tests as dependency-failed policy violations."},failOnEmptyTestRun:{description:"Treat successful linked-test commands that report zero executed tests as failures."},requireAssertionsForPm:{description:"Require assertion metadata for linked PM command test entries during run execution."},checkContext:{description:"Run linked PM command context preflight diagnostics before command execution."},autoPmContext:{description:"Auto-remediate PM tracker-read linked commands by routing those entries through tracker context regardless of linked-test pm_context_mode overrides."},measure:{description:"Repeatable numeric run evidence in name=value[,unit=...][,threshold=...] form.",examples:[["coverage=100,unit=percent,threshold=100"]]},metricBelow:{description:"Return recorded evidence below a name=value threshold.",examples:["coverage=100"]},metricDiff:{description:"Compare the latest and previous values for one metric.",examples:["coverage"]},dryRun:{description:"Preview command effects without mutating storage artifacts."},all:{description:"For history-repair action: scan every stream for drift and repair each drifted stream in one audited pass (mutually exclusive with id)."},clear:{description:"For focus action: clear the session focused item instead of setting it (mutually exclusive with id)."},gcScope:{description:"Repeatable gc scope selector values (index, embeddings, runtime, locks, checkpoints, transactions).",examples:[["index","embeddings"],["runtime"],["locks"],["checkpoints"]]},storage:{description:"For stats action: include aggregate history-stream storage metrics (total streams/lines/bytes, largest + deepest streams, oldest/newest entries) for compaction and storage planning."},fieldUtilization:{description:"For stats action: include a field_utilization block reporting present/total/percent for content fields (notes, learnings, files, docs, tests, comments, deps, body, linked_command) across all items so under-documented dimensions are visible at a glance."},measurements:{description:"For stats action: include the audited append-only improvement ledger and baseline-to-latest trends."},metric:{description:"Exact improvement metric name used to filter ledger reads.",examples:["quality.coverage.lines"]},measurementLimit:{description:"Maximum newest improvement observations returned by stats.",examples:[50]},observe:{description:"Repeatable audited observation in name=value[,unit=...][,threshold=...] form.",examples:[["quality.coverage.lines=100,unit=percent,threshold=100"]]},improvementDirection:{description:"Improvement direction for newly recorded observations.",examples:["higher","lower","target"]},measurementSource:{description:"Producing gate or instrument for a new observation.",examples:["pnpm coverage"]},measurementItem:{description:"Tracked item that owns an improvement observation.",examples:["pm-123abc"]},measurementRevision:{description:"Explicit source revision for a new observation.",examples:["0123456789abcdef"]},provenanceCoverage:{description:"For stats action: compare configured provenance descriptors with bounded immutable-history observations."},fleetAttribution:{description:"For stats action: derive observational throughput, rework, and defect-escape rates by harness, model, and author source."},eventLimit:{description:"Maximum immutable history events consumed by an analytics projection.",examples:[1e4]},minimumSample:{description:"Minimum denominator before analytics rates are reported.",examples:[5]},offset:{description:"Number of matching rows to skip before limit is applied.",examples:[0,50,"100"]},provenance:{description:"Return patch-free immutable author, harness, instance, and extensible provenance rows."},provenanceSummary:{description:"Include bounded observed, unavailable, legacy-missing, and unresolved-author counts."},agentInstance:{description:"Privacy-safe agent invocation fingerprint filter, supplied once or as a list.",examples:["a1b2c3d4",["a1b2c3d4","e5f6g7h8"]]},provenanceFilter:{description:"Exact extensible provenance predicate in dimension=value form, supplied once or as a list.",examples:["model=gpt-5.6-sol",["effort=xhigh","role=reviewer"]]},before:{description:"For history-compact, compact entries strictly before this boundary (version number or ISO timestamp). Single-id mode only.",examples:["5","2026-06-01T00:00:00.000Z"]},at:{description:"Read-only historical projection boundary as an item version or ISO timestamp.",examples:["3","2026-07-01T12:00:00.000Z"]},allOver:{description:"For history-compact bulk mode, compact every stream with more than N entries. When history.compact_policy is enabled and this is omitted, the policy's max_entries is used.",examples:[200,"500"]},minEntries:{description:"For history-compact bulk mode, skip streams with at most N entries as already-compact (default 3).",examples:[3,"10"]},closed:{description:"For history-compact bulk mode, compact only closed (terminal) items' history streams."},allStreams:{description:"For history-compact bulk mode, compact every history stream regardless of lifecycle state."},literal:{description:"Repeatable literal matcher used by history-redact to scrub exact string values.",examples:["[redacted_path_prefix]/private/path"]},regex:{description:"Repeatable regex matcher used by history-redact. Accepts either /pattern/flags or a raw pattern (global mode is auto-enabled).",examples:["/192\\\\.168\\\\.[0-9.]+/g","token=[A-Za-z0-9_-]+"]},replacement:{description:'Replacement text used by history-redact (defaults to "[redacted]").',examples:["[scrubbed_path]"]},validateClose:{description:'Close-time metadata validation mode ("off", "warn", or "strict").',examples:["off","warn","strict"]},checkMetadata:{description:"Run metadata completeness checks."},metadataProfile:{description:"Select metadata validation profile for --check-metadata.",examples:["core","strict","custom"]},checkResolution:{description:"Run closed-item resolution metadata checks."},checkLifecycle:{description:"Run active-item lifecycle governance drift checks."},checkStaleBlockers:{description:"Include stale blocker-pattern diagnostics in lifecycle checks."},dependencyCycleSeverity:{description:"Set dependency-cycle warning policy for lifecycle checks.",examples:["off","warn","error"]},parentCycleSeverity:{description:"Set parent-cycle warning policy for lifecycle checks.",examples:["off","warn","error"]},checkFiles:{description:"Run linked-file and orphaned-file checks."},checkStorageIntegrity:{description:"Run deep item, history, index, and vector storage integrity checks."},strictDirectories:{description:"Treat optional item-type directories as required health failures."},requireMergeDrivers:{description:"Treat never-installed clone-local semantic merge drivers as required health failures."},checkOnly:{description:"For health action, run read-only diagnostics without refreshing vectors."},checkTelemetry:{description:"For health action, probe telemetry endpoint health and include network diagnostics."},noRefresh:{description:"For health action, skip vector refresh while still running checks."},refreshVectors:{description:"For health action, explicitly refresh stale vectors."},verboseStaleItems:{description:"For health action, include full stale-item arrays in vectorization details."},verboseAuthorEvents:{description:"For health action, include every actionable unknown-author event coordinate."},skipVectors:{description:"For health action, skip vectorization checks for a faster diagnostic run."},skipIntegrity:{description:"For health action, skip item/history file integrity checks for a faster diagnostic run."},skipDrift:{description:"For health action, skip history drift hash checks for a faster diagnostic run."},scanMode:{description:"Select file candidate scan mode for --check-files.",examples:["default","tracked-all","tracked-all-strict"]},includePmInternals:{description:"Include PM storage internals in tracked-all candidate scans."},verboseFileLists:{description:"For validate action, include full file-path lists for --check-files details."},verboseDiagnostics:{description:"For validate action, include full diagnostic ID lists instead of compact summaries."},strictExit:{description:"Return non-zero exit when health/validate/extension-doctor warnings are present."},failOnWarn:{description:"Alias for strictExit in health/validate/extension-doctor action payloads."},fixHints:{description:"For validate action, add a machine-executable fix_hints[] of pm commands to each failing check's details."},autoFix:{description:"For validate action, apply the safe, deterministic subset of fix-hint remediations (field backfills) automatically; combine with dryRun to preview and fixScope to grant gated scopes."},fixScope:{description:"For validate action, grant --auto-fix scopes (metadata, resolution, estimates, lifecycle). Defaults to the safe scopes metadata and resolution; estimates (per-type default estimated_minutes backfill) and lifecycle must be named explicitly.",examples:[["estimates"],["lifecycle"],["metadata","resolution"]]},pruneMissing:{description:"For validate action, remove stale linked-file/doc LINKS whose paths classified as deleted (link removal only \u2014 never touches real files); honors dryRun."},checkHistoryDrift:{description:"Run item/history hash drift checks."},checkCommandReferences:{description:"Run linked-command PM-ID reference checks."},edit:{description:"For comments, notes, and learnings actions, replace the annotation at this 1-based index with supplied replacement text."},delete:{description:"For comments, notes, and learnings actions, delete the annotation at this 1-based index."},stdin:{description:"For comments, notes, and learnings actions, read annotation text from piped stdin (supports multiline markdown)."},file:{description:"CLI-only path to an input file for commands that read payload text; tool actions exclude host file access.",examples:["notes/comment.md"]},preserveSourceIds:{description:"Preserve explicit source IDs during Beads imports instead of normalizing to tracker prefix.",examples:[!0]},appendStable:{description:"When true for files action, preserve existing linked-file order and append new links without full-array resorting."},discover:{description:"When true for files action, use `pm files discover <id>` to scan item text for referenced file paths."},apply:{description:"Persist changes instead of returning a dry-run preview: for files discovery, add the missing discovered file links; for schema add-type --infer, register the inferred custom item types."},discoveryNote:{description:"Note attached to file links added by files discovery.",examples:["discovered from item text"]},addNote:{description:"Note attached to every link added by add/addGlob in this call (per-entry embedded note= wins; requires add or addGlob). Maps to the CLI --note flag on pm files/pm docs.",examples:["command wiring"]},list:{description:"When true, list command-specific entries without mutating state (for example linked paths for files/docs or topics for guide).",examples:[!0]},stream:{description:"Stream selector: test-runs logs accepts stdout|stderr|both; activity accepts boolean/rows|ndjson|jsonl for line-delimited output.",examples:["stderr","stdout","both","rows","ndjson","jsonl",!0]},tail:{description:"Number of lines to tail for background run logs.",examples:[100]},query:{description:"Search query text for search action."},for:{description:"Named context intent projection declared for the selected read action.",examples:["orient","inspect","triage","execute","discover"]},keywords:{description:"Alias for query in search action payloads."},includeLinked:{description:"Include readable linked docs/files/tests content in keyword and hybrid lexical scoring."},titleExact:{description:"For search action, require exact normalized title match for the full query string."},phraseExact:{description:"For search action, require exact normalized query phrase match in item text fields."},highlight:{description:"For search action, emit per-field matched-text snippets (wrapped in \xAB\u2026\xBB) on each hit. Off by default."},includeBody:{description:"When true for list-family actions, include item body text in projected rows."},noTruncate:{description:"When true for list-family actions, return every matched row, overriding any limit (surfaces total when rows were dropped)."},strictRead:{description:"When true for list-family actions, fail if any source item or item directory cannot be read."},compact:{description:"Render compact projection output for search and list-family actions."},brief:{description:"Emit compact low-token output for commands that support terse projections or health details.",examples:[!0]},full:{description:"Enable command-specific full/detail output mode when supported, such as deep item reads for get or full payload mode for search/history."},fields:{description:"Comma-separated projection fields for get, search, list-family, or context outputs. Valid field names are command-specific (e.g. score/matched_fields apply to search; context projects focus-row fields such as priority/deadline/completion_pct).",examples:["id,title,status,parent,type","id,title,score,matched_fields","id,title,priority,deadline"]},groupBy:{description:"Comma-separated aggregate grouping fields (supported: parent,type,priority,status,assignee,tags,sprint,release).",examples:["parent,type","type,status","priority,assignee","tags","sprint,release"]},count:{description:"Enable grouped count output for aggregate action."},completion:{description:"For aggregate action, add open/in_progress/closed/other counts and completion_pct per group."},sum:{description:"Numeric field to sum per aggregate group (count and null_count are still returned).",examples:["estimated_minutes","priority"]},avg:{description:"Numeric field to average per aggregate group (count and null_count are still returned).",examples:["estimated_minutes","priority"]},tree:{description:"When true for list/get actions, render recursive parent/child tree ordering."},treeDepth:{description:"Maximum recursion depth for tree output (0 keeps root rows only).",examples:[0,1,"2"]},includeUnparented:{description:"Include unparented rows when aggregate grouping includes parent."},maxDepth:{description:"Maximum dependency traversal depth for deps action (0 keeps only the root node).",examples:[0,1,"2"]},nodeLimit:{description:"Maximum related nodes returned by deps --format context.",examples:[10,"20"]},edgeLimit:{description:"Maximum related edges returned by deps --format context.",examples:[20,"40"]},tokenBudget:{description:"Maximum estimated output tokens for the command output.",examples:[600,"1200"]},cursor:{description:"Opaque continuation cursor returned by deps --format context."},direction:{description:'Graph-context traversal direction for deps action ("outgoing", "incoming", or "both").',examples:["both","incoming"]},kind:{description:"Registered relationship kinds narrowing deps --format context traversal (string, comma-separated, or array).",examples:["blocked_by",["parent","related"]]},after:{description:"Continuation cursor resuming a bounded listing or traversal after this previously returned id.",examples:["pm-x1y2"]},maxPaths:{description:"Maximum enumerated paths for graph paths queries.",examples:[5,"10"]},sample:{description:"Maximum evidence sample entries per graph audit finding.",examples:[10,"25"]},exemptIsolate:{description:"Item ids the graph audit treats as explicitly valid isolates (string, comma-separated, or array).",examples:["pm-x1y2",["pm-x1y2","pm-a3b4"]]},exemptIsolateType:{description:"Item types whose active isolates the graph audit treats as policy-valid (string, comma-separated, or array).",examples:["Reminder",["Reminder","Event"]]},saveBaseline:{description:"When true, persist the graph audit census as the change-since-baseline comparison point (audit only)."},rebuild:{description:"When true, rebuild and warm the durable graph index (graph index only)."},collapse:{description:'Dependency tree collapse mode for deps action ("none" or "repeated").',examples:["none","repeated"]},summary:{description:"When true, return the command's compact summary projection (deps counts, health rollup, or contracts command intents)."},shell:{description:"Shell target for completion generation.",examples:["bash"]},eagerTags:{description:"When true for completion, eagerly embed current tracker tags into generated scripts (legacy mode)."},contractAction:{description:"Filter contracts schema to one tool action.",examples:["create","update"]},command:{description:"Scope contracts output to one CLI command name; action/schema surfaces narrow by default.",examples:["create","search","list"]},schemaOnly:{description:"When true, contracts action returns schema-focused payloads (mutually exclusive with flagsOnly/availabilityOnly)."},flagsOnly:{description:"When true, contracts action returns only command flag surface payloads (mutually exclusive projection mode)."},availabilityOnly:{description:"When true, contracts action returns only action availability payloads (mutually exclusive projection mode)."},runtimeOnly:{description:"When true, contracts action only includes actions invocable in the current runtime."},activeOnly:{description:"Alias for runtimeOnly in contracts action payloads."},depth:{description:"Context depth level controlling how many sections are included (brief=focus+agenda, standard=+hierarchy/activity/progress/workload, deep=all sections, full=every section with no per-section row cap).",examples:["brief","standard","deep","full"]},section:{description:"Repeatable section selector for context; overrides --depth when provided.",examples:[["hierarchy","activity"],["blockers","files","staleness"]]},activityLimit:{description:"Maximum number of recent activity entries to include in context output.",examples:[5,10,"20"]},staleThreshold:{description:"Staleness cutoff in days for context staleness section (e.g. 7 or 7d).",examples:["7","14d","30"]}},Zb={assurance:{subcommand:{description:"Assurance operation: list, show, put, remove, run, or verdicts.",examples:["list","run","verdicts"]},kind:{description:"Assurance declaration kind for registry operations: measurement, assertion, or gate.",examples:["measurement","assertion","gate"]},id:{description:"Stable assurance declaration id or gate id, depending on subcommand.",examples:["active-issues","release-readiness"]},limit:{description:"Maximum number of newest assurance verdicts returned.",examples:[10,25]}},update:{acceptanceCriteria:{description:"Complete acceptance-criteria replacement text. Use removeAc plus addAc together for an atomic one-entry repair that preserves unrelated criteria."}},"update-many":{acceptanceCriteria:{description:"Complete acceptance-criteria replacement text. Use removeAc plus addAc together for an atomic one-entry repair that preserves unrelated criteria."}},stats:{since:{description:"Inclusive ISO 8601 timestamp or negative duration lower bound for provenance and fleet analytics.",examples:["2026-08-01T00:00:00.000Z","-30d"]}},events:{since:{description:"Durable event cursor returned as next_cursor, or an inclusive event timestamp.",examples:["eyJmaW5nZXJwcmludCI6Ii4uLiJ9","2026-08-01T00:00:00.000Z"]},type:{description:"Mutation event type filter, supplied once or as a list.",examples:["create",["create","update"]]},author:{description:"Mutation author filter, supplied once or as a list.",examples:["agent-a",["agent-a","agent-b"]]},item:{description:"Tracked item id filter, supplied once or as a list.",examples:["pm-a1b2",["pm-a1b2","pm-c3d4"]]},limit:{description:"Maximum mutation events returned, from 0 through 1000.",examples:[0,100]}},remind:{at:{description:"Reminder time as an ISO 8601 timestamp or supported relative expression.",examples:["2026-08-02T09:00:00+02:00","tomorrow 09:00"]}},deps:{tokenBudget:{description:"Maximum estimated output tokens for deps --format context.",examples:[600,"1200"]}},comments:{full:{description:"Return the complete post-mutation comment history instead of the bounded mutation receipt projection."}},notes:{full:{description:"Return the complete post-mutation note history instead of the bounded mutation receipt projection."},since:{description:"Inclusive ISO 8601 creation timestamp lower bound for structured note event filtering.",examples:["2026-01-01T00:00:00.000Z"]}},learnings:{full:{description:"Return the complete post-mutation learning history instead of the bounded mutation receipt projection."}},next:{tag:{description:"Only recommend items carrying this exact tag.",examples:["sdk","release"]},tokenBudget:{description:"Maximum estimated output tokens for the recommendation context.",examples:[600,"1200"]}},claim:{tag:{description:"When claiming the next item, only consider work carrying this exact tag.",examples:["sdk","release"]},tokenBudget:{description:"Maximum estimated output tokens for the next-item context returned with the claim.",examples:[600,"1200"]}},close:{text:{description:"Backward-compatible alias for the item close reason when reason is not provided."}},"close-task":{text:{description:"Close reason used before releasing the item's active assignment."}},schema:{name:{description:"Custom item type name (add-type/remove-type/show), custom status id (show-status/add-status/remove-status), or custom field key (add-field/remove-field/show-field). Required for those subcommands.",examples:["Spike","review","component"]}},profile:{name:{description:"Profile name for show/apply/lint. Built-in profiles are agile, ops, and research; an active extension can contribute additional archetype names that resolve here too.",examples:["agile","ops","research"]}},graph:{subcommand:{description:"Graph query selector: ancestors|descendants|predecessors|successors|paths|impact|analyze|audit|communities|redundancy|dominators|slack|centrality|articulation|plan|index. Traversals, paths, impact, and dominators require id; paths also requires target; slack reports critical-path float, centrality ranks betweenness/closeness/degree, articulation reports cut points and bridges; plan derives dry-run remediation proposals from the governance audit; index reports, rebuilds, or clears the durable cross-process graph index.",examples:["successors","audit"]},clear:{description:"When true, delete the durable graph index (graph index only)."},id:{description:"Root item id for traversal, paths, impact, and dominators graph queries.",examples:["pm-x1y2"]},target:{description:"Target item id for graph paths queries.",examples:["pm-a3b4"]},direction:{description:'Edge orientation for graph paths/impact/dominators queries ("outgoing", "incoming", or "both"; default "both").',examples:["incoming"]},kind:{description:"Registered relationship kinds narrowing the graph query (string, comma-separated, or array).",examples:["blocked_by",["parent","related"]]},maxDepth:{description:"Maximum graph traversal depth (non-negative integer).",examples:[2,"4"]},after:{description:"Resume a hierarchy/ordering graph traversal after this previously returned node id.",examples:["pm-x1y2"]},limit:{description:"Maximum returned rows per bounded graph collection (traversal ids, impact rows, analyze/communities samples, redundancy rows, dominator bottlenecks).",examples:[10,"25"]},summary:{description:"When true, return counts-first graph envelopes without row collections."}}};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="9882d78a-8742-5d50-b345-debe47322b65")}catch{}})();var IF=["json","quiet","profile","noExtensions","noPager","tokenAccounting","path","pmExecutable","timeoutMs"],RF=["outputInclude","outputLimit","outputBudget","outputFormat","outputSession"],ow=new Set(["action","cwd","options",...Object.keys(io).filter(e=>e!=="severity")]);function NF(e){let t=e.trim().toLowerCase(),n="";for(let r=0;r<t.length;r+=1){let o=t[r];if(o!=="-"&&o!=="_"){n+=o;continue}let i=r+1;for(;t[i]==="-"||t[i]==="_";)i+=1;let s=t[i];if(s!==void 0&&(s>="a"&&s<="z"||s>="0"&&s<="9")){n+=s.toUpperCase(),r=i;continue}n+=t.slice(r,i),r=i-1}return ow.has(n)?{field:e,property:n,owner:"mcp_tool_input",nested_path:`options.${n}`}:void 0}var DF={create:["fullChangedFields","idOnly"],copy:["fullChangedFields","idOnly"],update:["fullChangedFields","idOnly"],close:["fullChangedFields","idOnly"],restore:["fullChangedFields","idOnly"],append:["fullChangedFields"],"update-many":["fullChangedFields"],"close-many":["fullChangedFields"],assurance:["fullChangedFields","idOnly"]},iw=["createMode","status","deadline","estimate","acceptanceCriteria","definitionOfReady","order","rank","goal","objective","value","impact","outcome","whyNow","assignee","reviewer","risk","confidence","sprint","release","blockedReason","unblockNote","reporter","severity","environment","reproSteps","resolution","expectedResult","actualResult","affectedVersion","fixedVersion","component","regression","customerImpact","comment","note","learning","reminder","event","typeOption"],KW=Object.freeze({"close-many":["list","expected_result","expected","actual_result","actual","validate_close","dry_run","checkpoint","no_checkpoint","filterAssignee_filter"],"update-many":["list","update","dry_run","checkpoint","no_checkpoint","filterAssignee_filter"],...Object.fromEntries(it.filter(e=>e==="install"||e==="extension"||e==="package"||e.startsWith("extension-")||e.startsWith("package-")).map(e=>[e,["project","local","global"]]))});function ke(e){return ro(e)}var LF=ke([...$d.map(e=>e.param),...Ns.map(e=>e.param),"assignee","closeReason","completedAt"]),sw=ke([...jd.map(e=>e.param),...Ns.map(e=>e.param),"force"]),PF=ke([...zd.map(e=>e.param),...sw.filter(e=>e!=="allowMissingParent"&&e!=="completedAt"),"dryRun","rollback","noCheckpoint"]),MF=ke([...qd.map(e=>e.param),"reason","completedAt","resolution","expectedResult","actualResult","validateClose","dryRun","rollback","noCheckpoint","author","message","force"]),ew=ke([...Vd.map(e=>e.param),"past","section"]),FF=ke([...Gd.map(e=>e.param),"stream"]),Lt=ke([...Pd.map(e=>e.param),"includeBody","noTruncate","strictRead","compact","brief","full"]),Pt=[[{property:"today",schema:{const:!0}},{property:"recent",schema:{const:!0}}],[{property:"today",schema:{const:!0}},{property:"updatedAfter",schema:{type:"string",pattern:"\\S"}}],[{property:"recent",schema:{const:!0}},{property:"updatedAfter",schema:{type:"string",pattern:"\\S"}}]],$F=[[{property:"summary",schema:{const:!0}},{property:"schemaOnly",schema:{const:!0}}],[{property:"summary",schema:{const:!0}},{property:"flagsOnly",schema:{const:!0}}],[{property:"summary",schema:{const:!0}},{property:"availabilityOnly",schema:{const:!0}}],[{property:"schemaOnly",schema:{const:!0}},{property:"flagsOnly",schema:{const:!0}}],[{property:"schemaOnly",schema:{const:!0}},{property:"availabilityOnly",schema:{const:!0}}],[{property:"flagsOnly",schema:{const:!0}},{property:"availabilityOnly",schema:{const:!0}}]],jF=ke([...Md.map(e=>e.param),"count","completion","includeUnparented"]),UF=ke(["query","keywords","mode","semantic","hybrid","includeLinked","titleExact","phraseExact","highlight","compact","full",...Fd.map(e=>e.param)]),tw=ke(["type","tag","priority","assignee","assigneeFilter","sprint","release","parent","limit","blockedLimit","readyOnly","format","includeDecisions","tokenBudget","explainRanking"]),ge=["author","message","force"],aw=["text","reason","closeReason","completedAt","duplicateOf","validateClose","resolution","expectedResult","actualResult"],ao=["author","assignee","message","force"],zF=["target","scope","capability","declarative","github","ref","init","install","uninstall","explore","manage","describe","markdown","output","reload","doctor","catalog","list","adopt","adoptAll","activate","deactivate","runtimeProbe","fixManagedState","isolated","ignoreGlobal","detail","trace","watch","strictExit","failOnWarn"];function nw(e){return{[`${e}-init`]:{required:["target"],optional:["scope","capability",...e==="package"?["declarative"]:[]]},[`${e}-install`]:{optional:["target","github","scope","ref"],anyOfRequired:[["target"],["github"]]},[`${e}-uninstall`]:{required:["target"],optional:["scope"]},[`${e}-explore`]:{optional:["scope"]},[`${e}-manage`]:{optional:["scope","runtimeProbe","fixManagedState"]},[`${e}-describe`]:{optional:["target","scope","markdown","output"]},[`${e}-reload`]:{optional:["scope","watch"]},[`${e}-doctor`]:{optional:["scope","detail","trace","fixManagedState","isolated","ignoreGlobal","strictExit","failOnWarn"]},[`${e}-catalog`]:{optional:["scope","fields"]},[`${e}-adopt`]:{required:["target"],optional:["scope","github","ref"]},[`${e}-adopt-all`]:{optional:["scope"]},[`${e}-activate`]:{required:["target"],optional:["scope"]},[`${e}-deactivate`]:{required:["target"],optional:["scope"]},[e]:{optional:zF}}}var rw={required:["title"],optional:["start","duration","end","location","timezone","allDay","parent","allowMissingParent","tags","priority","body","description","author","message"]},Ls={init:{optional:["prefix","idPrefix","workspace","preset","typePreset","defaults","author","agentGuidance","withPackages","mergeFence","force","verbose"]},config:{required:["scope","configAction"],optional:["key","value","criterion","clearCriteria","format","policy"]},...nw("extension"),...nw("package"),install:{optional:["target","github","scope","ref"],anyOfRequired:[["target"],["github"]]},upgrade:{optional:["target","scope","dryRun","cliOnly","packagesOnly","repair","tag","packageName"]},create:{required:["title","description","type","status","priority","message"],optional:LF},copy:{required:["id"],optional:["title","author","message","allowDuplicate"]},focus:{optional:["id","clear"],mutuallyExclusive:[["id","clear"]]},list:{optional:Lt,mutuallyExclusiveWhen:Pt},"list-all":{optional:Lt,mutuallyExclusiveWhen:Pt},"list-draft":{optional:Lt,mutuallyExclusiveWhen:Pt},"list-open":{optional:Lt,mutuallyExclusiveWhen:Pt},"list-in-progress":{optional:Lt,mutuallyExclusiveWhen:Pt},"list-blocked":{optional:Lt,mutuallyExclusiveWhen:Pt},"list-closed":{optional:Lt,mutuallyExclusiveWhen:Pt},"list-canceled":{optional:Lt,mutuallyExclusiveWhen:Pt},aggregate:{optional:jF},guide:{optional:["list","format","depth"]},context:{optional:ew},ctx:{optional:ew},get:{required:["id"],optional:["for","tokenBudget","at","depth","full","fields","tree","treeDepth","format"]},search:{optional:UF,anyOfRequired:[["query"],["keywords"]]},eval:{optional:["mode","k","failUnder","queries","format"]},events:{optional:["since","type","author","item","limit","full","provenance","provenanceSummary","harness","agentInstance","provenanceFilter"]},merge:{required:["subcommand"],optional:["dryRun","author","message","force","includeReconciled","artifact","basePath","oursPath","theirsPath","output","outputPath","itemPath","prefer"]},workspace:{required:["subcommand","snapshotAction"],optional:["name","target","dryRun","force","author","message","lockTtlSeconds","lockWaitMs"]},meet:rw,event:rw,remind:{required:["title"],optional:["at","text","parent","allowMissingParent","tags","priority","body","description","author","message"]},next:{optional:[...tw,"for"]},reindex:{optional:["mode","progress"]},history:{required:["id"],optional:["limit","compact","full","provenance","provenanceSummary","harness","agentInstance","provenanceFilter","diff","verify","field","strictExit","failOnWarn","format"]},"history-redact":{required:["id"],optional:["literal","regex","replacement","dryRun",...ge],anyOfRequired:[["literal"],["regex"]]},"history-repair":{optional:["id","all","dryRun",...ge],oneOfRequired:[["id"],["all"]]},"history-author-acknowledge":{required:["attributedAuthor","reviewer","reason"],optional:["historyEvent","allActionable"],oneOfRequired:[["historyEvent"],["allActionable"]]},"history-compact":{optional:["id","before","ids","allOver","closed","allStreams","minEntries","dryRun",...ge]},schema:{required:["subcommand"],optional:["name","description","defaultStatus","folder","alias","role","order","fieldType","commands","cliFlag","required","requiredOnCreate","allowUnset","requiredTypes","typePreset","infer","minCount","apply","to","migrationId","fieldTypeScope","dryRun","author","force"],conditionalRequired:[{property:"subcommand",value:"show",required:["name"]},{property:"subcommand",value:"show-status",required:["name"]},{property:"subcommand",value:"add-type",required:["name"]},{property:"subcommand",value:"remove-type",required:["name"]},{property:"subcommand",value:"add-status",required:["name"]},{property:"subcommand",value:"remove-status",required:["name"]},{property:"subcommand",value:"add-field",required:["name"]},{property:"subcommand",value:"remove-field",required:["name"]},{property:"subcommand",value:"show-field",required:["name"]},{property:"subcommand",value:"rename-type",required:["name","to"]},{property:"subcommand",value:"rename-field",required:["name","to"]},{property:"subcommand",value:"remap-status",required:["name","to"]},{property:"subcommand",value:"apply-preset",required:["typePreset"]}]},profile:{required:["subcommand"],optional:["name","dryRun","author","force"],conditionalRequired:[{property:"subcommand",value:"show",required:["name"]},{property:"subcommand",value:"apply",required:["name"]},{property:"subcommand",value:"lint",required:["name"]}]},plan:{required:["subcommand"],optional:["id","stepRef","reorderTo","title","description","template","scope","parent","related","blocks","blockedBy","harness","mode","resumeContext","tags","priority",...iw,"body","claim","fromSearch","stepTitle","step","stepBody","stepOwner","stepStatus","stepEvidence","stepBlockedReason","stepReplacement","dependsOn","link","linkKind","linkNote","promoteToItemDep","allowMultipleActive","file","test","doc","decisionText","decision","decisionRationale","decisionEvidence","discoveryText","discovery","validationText","validation","validationCommand","validationExpected","depth","fields","steps","materializeType","materializeParent","materializeTags","field",...ge]},activity:{optional:FF},restore:{required:["id","target"],optional:ge},update:{required:["id"],optional:sw,mutuallyExclusive:[["acceptanceCriteria","addAc"],["acceptanceCriteria","removeAc"]]},"update-many":{optional:PF,mutuallyExclusive:[["acceptanceCriteria","addAc"],["acceptanceCriteria","removeAc"]]},close:{required:["id"],optional:[...aw,...ge]},"close-many":{optional:MF},delete:{required:["id"],optional:["dryRun",...ge]},append:{required:["id","body"],optional:ge},comments:{required:["id"],optional:["text","add","stdin","edit","delete","limit","full",...ge]},notes:{required:["id"],optional:["text","add","addJson","stdin","edit","delete","limit","since","eventType","includeMeta","full",...ge],mutuallyExclusive:[["addJson","add"],["addJson","stdin"],["addJson","file"],["addJson","edit"],["addJson","delete"]]},learnings:{required:["id"],optional:["text","add","stdin","edit","delete","limit","full",...ge]},files:{required:[],optional:["id","add","addGlob","remove","migrate","list","addNote","discover","apply","discoveryNote","appendStable","validatePaths","lookupPath","scope","limit","offset","noTruncate","strictRead","explain","lines","decisionDepth",...ge],anyOfRequired:[["id"],["lookupPath"]],dependentAnyOfRequired:[{property:"addNote",anyOfRequired:[["add"],["addGlob"]]}]},docs:{required:["id"],optional:["add","addGlob","remove","migrate","addNote","list","validatePaths",...ge],dependentAnyOfRequired:[{property:"addNote",anyOfRequired:[["add"],["addGlob"]]}]},deps:{required:["id"],optional:["format","maxDepth","collapse","summary","full","nodeLimit","edgeLimit","tokenBudget","cursor","direction","kind"]},graph:{required:["subcommand"],optional:["id","target","kind","maxDepth","limit","after","direction","maxPaths","sample","exemptIsolate","exemptIsolateType","saveBaseline","rebuild","clear","summary","full"]},test:{required:["id"],optional:["add","addJson","remove","run","match","onlyIndex","onlyLast","background","timeout","progress","envSet","envClear","sharedHostSafe","pmContext","overrideLinkedPmContext","failOnContextMismatch","failOnSkipped","failOnEmptyTestRun","requireAssertionsForPm","checkContext","autoPmContext","measure","metricBelow","metricDiff",...ge]},"test-all":{optional:["status","limit","offset","background","timeout","progress","envSet","envClear","sharedHostSafe","pmContext","overrideLinkedPmContext","failOnContextMismatch","failOnSkipped","failOnEmptyTestRun","requireAssertionsForPm","checkContext","autoPmContext"]},telemetry:{optional:["subcommand","limit"]},"test-runs-list":{optional:["status","limit"]},"test-runs-status":{required:["runId"]},"test-runs-logs":{required:["runId"],optional:["stream","tail"]},"test-runs-stop":{required:["runId"],optional:["force"]},"test-runs-resume":{required:["runId"],optional:["author"]},stats:{optional:["storage","metadataCoverage","fieldUtilization","byAssignee","byTag","byPriority","tagPrefix","measurements","metric","measurementLimit","observe","improvementDirection","measurementSource","measurementItem","measurementRevision","author","message","provenanceCoverage","fleetAttribution","since","eventLimit","minimumSample"]},duplicates:{optional:["status","since","threshold","limit"]},health:{optional:["strictDirectories","requireMergeDrivers","strictExit","failOnWarn","checkOnly","checkTelemetry","noRefresh","refreshVectors","verboseStaleItems","verboseAuthorEvents","brief","summary","skipVectors","skipIntegrity","skipDrift","full"]},validate:{optional:["checkStorageIntegrity","checkMetadata","metadataProfile","checkResolution","checkLifecycle","checkStaleBlockers","dependencyCycleSeverity","parentCycleSeverity","checkFiles","scanMode","includePmInternals","verboseFileLists","verboseDiagnostics","allAffectedIds","strictExit","failOnWarn","fixHints","autoFix","dryRun","fixScope","pruneMissing","checkHistoryDrift","checkCommandReferences","counts","full"]},assurance:{required:["subcommand"],optional:["kind","id","definition","trigger","treeId","gate","limit","dryRun","author","message"],conditionalRequired:[{property:"subcommand",value:"list",required:["kind"]},{property:"subcommand",value:"show",required:["kind","id"]},{property:"subcommand",value:"put",required:["kind","id","definition"]},{property:"subcommand",value:"remove",required:["kind","id"]},{property:"subcommand",value:"run",required:["id","trigger"]}]},gc:{optional:["dryRun","gcScope"]},contracts:{optional:["contractAction","command","summary","schemaOnly","flagsOnly","availabilityOnly","runtimeOnly","activeOnly","full"],mutuallyExclusiveWhen:$F},completion:{required:["shell"],optional:["eagerTags"]},claim:{optional:["id","next","ifAvailable","maxAttempts","includeDecisions",...tw,...ao],oneOfRequired:[["id"],["next"]]},release:{required:["id"],optional:ao},"start-task":{required:["id"],optional:ao},"pause-task":{required:["id"],optional:ao},"close-task":{required:["id"],optional:["text","validateClose",...ao]}},qF=Object.freeze(Object.fromEntries(it.map(e=>[e,Ls[e]])));function lw(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]/g," ").trim().replace(/^./,t=>t.toUpperCase()).concat(".")}function GF(e,t){let n=typeof t=="object"&&t!==null?{...t}:{},r=so[e];return{...n,description:r?.description??lw(e),...r?.examples?{examples:r.examples}:{}}}function VF(e,t){if(e==="plan"&&Object.prototype.hasOwnProperty.call(ru,t))return ru[t];let n=Zb[e];return n&&Object.prototype.hasOwnProperty.call(n,t)?n[t]:so[t]}function BF(e,t,n){let r=typeof n=="object"&&n!==null?{...n}:{},o=VF(e,t);return{...r,description:o?.description??lw(t),...o?.examples?{examples:o.examples}:{}}}function HF(e,t){let n=Qb[e];return n&&Object.prototype.hasOwnProperty.call(n,t)?n[t]:e==="plan"&&Object.prototype.hasOwnProperty.call(nu,t)?nu[t]:(e==="get"||e==="history"||e==="search")&&t==="format"?{type:"string",enum:["json","toon"]}:io[t]}function WF(e,t){let n={action:{const:e,description:so.action?.description??"Tool action to execute."}};for(let r of t){if(r==="action")continue;let o=HF(e,r);o&&(n[r]=BF(e,r,o))}return n}function KF(e,t){let n=t.flat();return t.map(r=>{let o=n.filter(i=>!r.includes(i));return{required:[...r],...o.length>0?{not:{anyOf:o.map(i=>({required:[i]}))}}:{},...e==="history-repair"&&r.includes("all")?{properties:{all:{const:!0}}}:e==="claim"&&r.includes("next")?{properties:{next:{const:!0}}}:{}}})}function YF(e){let t=[];if(e.conditionalRequired&&e.conditionalRequired.length>0)for(let n of e.conditionalRequired)t.push({if:{properties:{[n.property]:{const:n.value}},required:[n.property]},then:{required:n.required}});if(e.dependentAnyOfRequired&&e.dependentAnyOfRequired.length>0)for(let n of e.dependentAnyOfRequired)t.push({if:{required:[n.property]},then:{anyOf:n.anyOfRequired.map(r=>({required:[...r]}))}});if(e.mutuallyExclusive&&e.mutuallyExclusive.length>0)for(let n of e.mutuallyExclusive)t.push({not:{required:ke(n)}});if(e.mutuallyExclusiveWhen&&e.mutuallyExclusiveWhen.length>0)for(let n of e.mutuallyExclusiveWhen)t.push({not:{allOf:n.map(r=>({properties:{[r.property]:r.schema},required:[r.property]}))}});return t}function ou(e){if(!Object.prototype.hasOwnProperty.call(Ls,e))return;let t=Ls[e],n=DF[e]??[];return ke(["action",...IF,...Mn(e)!==void 0?RF:[],...n,...t.required??[],...t.optional??[]])}function cw(e){let t=Ls[e],n=ke(t.required??[]),r=ou(e),o={type:"object",additionalProperties:!1,required:["action",...n],title:`pm action "${e}" parameters`,properties:WF(e,r)};t.anyOfRequired&&t.anyOfRequired.length>0&&(o.anyOf=t.anyOfRequired.map(s=>({required:[...s]}))),t.oneOfRequired&&t.oneOfRequired.length>0&&(o.oneOf=KF(e,t.oneOfRequired));let i=YF(t);return i.length>0&&(o.allOf=i),o}function XF(e,t={}){let n=cw(e),r={...n.properties};delete r.action;let o=[...n.anyOf??[],...n.oneOf??[]],i=(t.required??n.required.map(String)).filter(a=>a==="action"?!1:t.required===void 0?!0:!o.some(l=>l.required?.map(String).includes(a))),s={type:"object",additionalProperties:t.additionalProperties??!0,properties:{...r,options:{type:"object",additionalProperties:!0,description:"Advanced command options forwarded to the selected pm action."},...t.properties},required:i};return n.anyOf!==void 0&&(s.anyOf=n.anyOf),n.oneOf!==void 0&&(s.oneOf=n.oneOf),n.allOf!==void 0&&(s.allOf=n.allOf),s}function dw(e){let t,n=()=>t??=e();return new Proxy({},{get:(r,o)=>n()[o],has:(r,o)=>o in n(),ownKeys:()=>Reflect.ownKeys(n()),getOwnPropertyDescriptor:(r,o)=>{let i=Reflect.getOwnPropertyDescriptor(n(),o);return i&&(i.configurable=!0),i}})}var iu="4.6.0",uw=iu.split(".")[0],fw="1.3.0",JF=dw(()=>({$schema:"https://json-schema.org/draft/2020-12/schema",$id:`https://schema.unbrained.dev/pm-cli/tool-parameters-v${uw}.schema.json`,title:"pm-cli tool parameters (action-scoped strict schema)","x-schema-version":iu,type:"object",oneOf:it.map(e=>cw(e))}));function QF(e,t){let n=GF(e,t);if(typeof n.type=="string")return n;let o=(Array.isArray(n.anyOf)?n.anyOf:[]).find(a=>typeof a.type=="string");if(o){let{anyOf:a,...l}=n;return{...o,...l}}let{anyOf:i,...s}=n;return{...s,type:"string"}}function ZF(){let e={action:{type:"string",description:so.action?.description??"Tool action to execute."},options:{type:"object",additionalProperties:!0,description:"Advanced command options object forwarded to the selected pm action."}};for(let t of Object.keys(io).sort())e[t]=QF(t,io[t]);return{title:"pm-cli tool parameters (provider-compatible flat schema)","x-schema-version":fw,type:"object",additionalProperties:!1,required:["action"],properties:e}}var e$=dw(ZF);(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="11dade38-a681-599f-b3b7-8d121418366d")}catch{}})();var t$=new Set(["--author","--follow","--help","--lean","--token-accounting","--output-include","--output-limit","--output-budget","--output-format","--output-session","--no-changed-fields","--no-extensions","--no-pager","--pm-path","--profile","--quiet","--interval-ms"]),n$=new Set([...cm,...dm]),r$=new Set(["--brief","--format","--full","--full-changed-fields","--id-only","--no-truncate","--stream"]),o$=new Set(["--body-file","--file","--stdin-json"]),i$=new Set(["--global","--local","--project"]),s$=new Set(["--activity-limit","--default-depth","--section-activity","--section-blockers","--section-files","--section-hierarchy","--section-progress","--section-staleness","--section-tests","--section-workload","--stale-threshold-days"]),a$=new Set(["action","path","pmExecutable","timeoutMs"]),l$=new Set(["configAction","id","name","query","reason","subcommand","target","text"]),c$={assurance:{id:"<id>",kind:"<kind>",subcommand:"<action>"},event:{title:"<title>"},files:{lookupPath:"lookup <path...>"},meet:{title:"<title>"},merge:{subcommand:"<subcommand>"},remind:{title:"<title>"},workspace:{name:"<name>",subcommand:"snapshot",snapshotAction:"<snapshot-action>",target:"<target>"}},d$={assurance:{"--tree":"treeId"},init:{"--id-prefix":"idPrefix","--no-merge-fence":"mergeFence","--workspace":"workspace"},create:{"--ac":"acceptanceCriteria","--estimated-minutes":"estimate","--file":"linkedFile","--test":"linkedTest","--expected":"expectedResult","--actual":"actualResult"},update:{"--ac":"acceptanceCriteria","--estimated-minutes":"estimate","--file":"linkedFile","--test":"linkedTest","--expected":"expectedResult","--actual":"actualResult"},"update-many":{"--ac":"acceptanceCriteria","--estimated-minutes":"estimate","--file":"linkedFile","--test":"linkedTest","--expected":"expectedResult","--actual":"actualResult"},files:{"--note":"addNote"},docs:{"--note":"addNote"},comments:{"--full-history":"full"},notes:{"--file":"text","--full-history":"full"},learnings:{"--full-history":"full"},gc:{"--scope":"gcScope"},contracts:{"--action":"contractAction"},schema:{"--no-allow-unset":"allowUnset","--type":"fieldTypeScope"},"history-author-acknowledge":{"--event":"historyEvent","--all-actionable":"allActionable"},"extension-init":{"--capability":"capability"},"package-init":{"--capability":"capability"},"extension-install":{"--gh":"github"},"package-install":{"--gh":"github"},"extension-adopt":{"--gh":"github"},"package-adopt":{"--gh":"github"},extension:{"--gh":"github","--scaffold":"init"},package:{"--gh":"github","--scaffold":"init"},install:{"--gh":"github"}},u$={"--pm-path":"path"},mw={stats:{"--analytics":["measurements","metric","measurementLimit","observe","improvementDirection","measurementSource","measurementItem","measurementRevision","author","message","provenanceCoverage","fleetAttribution","since","eventLimit","minimumSample"]}};function f$(e){return e.startsWith("extension-")?`extension ${e.slice(10)}`:e.startsWith("package-")?`package ${e.slice(8)}`:e}function pw(e,t){let n=d$[e]?.[t]??u$[t];return n!==void 0?n:t.replace(/^--/,"").replaceAll("_","-").replace(/-([a-z])/g,(r,o)=>o.toUpperCase())}function p$(e){let t=new Set;return e.filter(({flag:n})=>!n.startsWith("--")||t.has(n)?!1:(t.add(n),!0))}function m$(e,t){return t.find(({aliases:n})=>n?.includes(e))?.flag}function g$(e,t,n,r){let o=mw[e]?.[t.flag];if(o!==void 0&&o.every(a=>r.has(a)))return{surface:"cli",input:t.flag,counterpart:o[0],disposition:"shared",reason:"The validated CLI JSON object fans out across strict SDK parameters."};let i=pw(e,t.flag);if(r.has(i))return{surface:"cli",input:t.flag,counterpart:i,disposition:"shared",reason:"The CLI flag maps directly to a strict SDK action parameter."};let s=m$(t.flag,n);if(s!==void 0){let a=pw(e,s);if(r.has(a))return{surface:"cli",input:t.flag,counterpart:a,disposition:"compatibility_alias",reason:`Compatibility spelling for ${s}.`}}return t$.has(t.flag)?{surface:"cli",input:t.flag,disposition:"cli_transport",reason:"CLI process transport is supplied by the in-process SDK host."}:r$.has(t.flag)?{surface:"cli",input:t.flag,disposition:"cli_presentation",reason:"CLI rendering or mutation projection does not alter the SDK result envelope."}:o$.has(t.flag)?{surface:"cli",input:t.flag,disposition:"cli_adapter",reason:"Local file or stdin adaptation is a CLI boundary concern."}:s$.has(t.flag)?{surface:"cli",input:t.flag,counterpart:"key",disposition:"compatibility_alias",reason:"CLI config shorthand normalizes to the SDK configAction/key/value contract."}:i$.has(t.flag)?{surface:"cli",input:t.flag,counterpart:"scope",disposition:"cli_scope_selector",reason:"Mutually exclusive CLI scope switches normalize to the SDK scope parameter."}:{surface:"cli",input:t.flag,counterpart:i,disposition:"unclassified",reason:"The CLI flag has no strict SDK parameter or approved boundary classification."}}function _$(e,t,n){let r=Object.entries(mw[e]??{}).find(([s,a])=>a.includes(t)&&n.some(({input:l,disposition:c})=>l===s&&c==="shared"));if(r!==void 0)return{surface:"sdk",input:t,counterpart:r[0],disposition:"shared",reason:"The strict SDK parameter is reachable through the validated CLI JSON object."};let o=n.find(({counterpart:s,disposition:a})=>s===t&&(a==="shared"||a==="compatibility_alias"||a==="cli_scope_selector"));if(o!==void 0)return{surface:"sdk",input:t,counterpart:o.input,disposition:"shared",reason:"The strict SDK parameter is reachable from the CLI contract."};let i=c$[e]?.[t];return i!==void 0?{surface:"sdk",input:t,counterpart:i,disposition:"shared",reason:"The strict SDK parameter maps to a canonical CLI positional argument."}:a$.has(t)?{surface:"sdk",input:t,disposition:"sdk_transport",reason:"The SDK host supplies in-process transport and workspace selection."}:l$.has(t)?{surface:"sdk",input:t,disposition:"cli_positional",reason:"The CLI accepts this SDK parameter as a positional command argument."}:{surface:"sdk",input:t,disposition:"sdk_native",reason:"The typed SDK exposes this structured input without a canonical CLI long flag."}}function y$(e={}){let t=e.actions??it,n=e.resolveFlags??tu,r=e.resolveParameters??ou;return t.map(o=>{let i=f$(o),s=p$(n(i)).filter(({flag:d})=>Mn(o)!==void 0||!n$.has(d)),a=new Set(r(o)??[]),l=s.map(d=>g$(o,d,s,a)),c=[...a].sort((d,u)=>d.localeCompare(u)).map(d=>_$(o,d,l));return{action:o,command:i,cli:l,sdk:c,unclassified:[...l,...c].filter(({disposition:d})=>d==="unclassified")}})}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="969b5bd2-e7de-5db8-bef2-6748675a100c")}catch{}})();import{Option as h$}from"commander";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="5f92dd0d-4eb1-5a7b-8891-931dd15deb81")}catch{}})();async function g6(e,t,n,r,o){let i=cr(process.cwd(),r.path),s=await Ce("command_result",{command:e,args:t,options:n,global:r,pm_root:i,result:o});return s.handled?s.result:o}function _6(e,t){for(let[n,r]of Object.entries(t))e.setOptionValueWithSource(n,r,"cli")}function gw(e,t){let n=[],r=new Set;for(let o of t.keys){if(!Object.hasOwn(e,o))continue;let i=e[o];if(i!=null){if(typeof i=="string"){n.push(i);continue}if(!Array.isArray(i)||!i.every(s=>typeof s=="string"))return;r.has(i)||(r.add(i),n.push(...i))}}return n.length>0?n.join("; "):void 0}var su=Symbol("pm.resolvedGlobalOptions");function b$(e){return typeof e=="object"&&e!==null?e:{}}function _e(e,t){return e.find(r=>r.target===t)??{target:t,keys:[t]}}function y6(e,t){e[su]={...t}}function h6(e){delete e[su]}function Ps(e,t){return typeof e[t]=="string"?e[t]:void 0}function b6(e){let t=w$(e),n=e[su];if(n)return{...n,...t.length>0?{command:t}:{}};let r=b$(e),o=typeof r.optsWithGlobals=="function"?r.optsWithGlobals():typeof r.opts=="function"?r.opts():{};return{json:o.json===!0?!0:void 0,quiet:!!o.quiet,noChangedFields:o.changedFields===!1,...o.fullChangedFields===!0?{fullChangedFields:!0}:{},idOnly:o.idOnly===!0,...o.lean===!0?{lean:!0}:{},...o.tokenAccounting===!0?{tokenAccounting:!0}:{},outputInclude:Ps(o,"outputInclude"),outputLimit:Ps(o,"outputLimit"),outputBudget:Ps(o,"outputBudget"),outputSession:Ps(o,"outputSession"),...o.outputFormat==="toon"||o.outputFormat==="json"?{outputFormat:o.outputFormat}:{},path:typeof o.pmPath=="string"?o.pmPath:typeof o.path=="string"?o.path:void 0,noExtensions:o.extensions===!1,noPager:!!o.noPager,profile:!!o.profile,...t.length>0?{command:t}:{},...typeof o.author=="string"?{author:o.author}:{}}}function w$(e){let t=[],n=e;for(;n?.parent;)t.unshift(n.name()),n=n.parent;return t.join(" ")}async function w6(e){if(e.json===!0)return e;let t=cr(process.cwd(),e.path);if(!await Y(ye(t)))return e;let n=await He(t);return{...e,defaultOutputFormat:n.output.default_format}}function E$(e,t){let n=t??[];return n.push(e),n}function ze(e,t,n){if(typeof n!="string")return;let r=n.trim();r.length!==0&&e.push(t,r)}function et(e,t,n){n===!0&&e.push(t)}function Zn(e,t,n){if(Array.isArray(n))for(let r of n){if(typeof r!="string")continue;let o=r.trim();o.length!==0&&e.push(t,o)}}function T(e,t){return e[t]===!0?!0:void 0}function dt(e,t){return e[t]===!1?!0:void 0}function E6(e,t){return typeof e[t]=="string"?e[t]:void 0}function T$(e,t,n,r=!1,o=void 0){let i=new h$(t,n).hideHelp();r&&i.argParser(o??E$),e.addOption(i)}function T6(e,t,n){for(let[r,o]of t)T$(e,r,o,n)}function Ms(e,t){return t.some(n=>e[n]===!0)?!0:void 0}function _w(e,t){let n=Cs(e,t);return typeof n=="string"||typeof n=="number"&&Number.isFinite(n)?n:void 0}function Fs(e,t){for(let[n,r]of Object.entries(t))n==="__proto__"||n==="constructor"||n==="prototype"||Object.hasOwn(e,n)||(e[n]=r)}function v6(e,t){let n=["test",e,"--run","--json","--progress"];return Zn(n,"--add",t.add),Zn(n,"--add-json",t.addJson),Zn(n,"--remove",t.remove),ze(n,"--match",t.match),ze(n,"--only-index",t.onlyIndex),et(n,"--only-last",t.onlyLast),Zn(n,"--measure",t.measure),ze(n,"--metric-below",t.metricBelow),ze(n,"--metric-diff",t.metricDiff),yw(n,t),ze(n,"--author",t.author),ze(n,"--message",t.message),et(n,"--force",t.force),n}function yw(e,t){ze(e,"--timeout",t.timeout),Zn(e,"--env-set",t.envSet),Zn(e,"--env-clear",t.envClear),et(e,"--shared-host-safe",t.sharedHostSafe),ze(e,"--pm-context",t.pmContext),et(e,"--override-linked-pm-context",t.overrideLinkedPmContext),et(e,"--fail-on-context-mismatch",t.failOnContextMismatch),et(e,"--fail-on-skipped",t.failOnSkipped),et(e,"--fail-on-empty-test-run",t.failOnEmptyTestRun),et(e,"--require-assertions-for-pm",t.requireAssertionsForPm),et(e,"--check-context",t.checkContext),et(e,"--auto-pm-context",t.autoPmContext)}function A6(e){let t=["test-all","--json","--progress"];return ze(t,"--status",e.status),ze(t,"--limit",e.limit),ze(t,"--offset",e.offset),yw(t,e),t}function v$(e){return e.join(",")}function S6(e,t={}){let n=s=>ct(e,_e(Rd,s)),r=s=>Os(e,_e(Is,s)),o=n("type");if(t.requireType!==!1&&o===void 0)throw new b("Missing required option --type <value>. Why required: create resolves runtime schema fields/workflow from item type. Retry: add --type <built-in or configured custom type> (example: --type Task).",_.USAGE);let i={title:n("title"),description:n("description"),type:o,template:n("template"),createMode:n("createMode"),schedulePreset:n("schedulePreset"),status:n("status"),closeReason:n("closeReason"),completedAt:n("completedAt"),priority:n("priority"),tags:n("tags"),addTags:r("addTags"),body:n("body"),deadline:n("deadline"),estimatedMinutes:n("estimatedMinutes"),acceptanceCriteria:gw(e,_e(Is,"acceptanceCriteria")),definitionOfReady:n("definitionOfReady"),order:n("order"),rank:n("rank"),goal:n("goal"),objective:n("objective"),value:n("value"),impact:n("impact"),outcome:n("outcome"),whyNow:n("whyNow"),author:n("author"),message:n("message"),assignee:n("assignee"),parent:n("parent"),allowMissingParent:Ms(e,["allowMissingParent","allow_missing_parent"])===!0,allowUnresolvedDeps:Ms(e,["allowUnresolvedDeps","allow_unresolved_deps"])===!0,allowDuplicate:T(e,"allowDuplicate")===!0,reviewer:n("reviewer"),risk:n("risk"),confidence:n("confidence"),sprint:n("sprint"),release:n("release"),blockedBy:n("blockedBy"),blockedReason:n("blockedReason"),unblockNote:n("unblockNote"),reporter:n("reporter"),severity:n("severity"),environment:n("environment"),reproSteps:n("reproSteps"),resolution:n("resolution"),expectedResult:n("expectedResult"),actualResult:n("actualResult"),affectedVersion:n("affectedVersion"),fixedVersion:n("fixedVersion"),component:n("component"),regression:e.regression===!0?"true":n("regression"),customerImpact:n("customerImpact"),dep:r("dep"),comment:r("comment"),note:r("note"),learning:r("learning"),file:r("file"),test:r("test"),doc:r("doc"),reminder:r("reminder"),event:r("event"),typeOption:r("typeOption"),field:r("field"),unset:r("unset"),clearDeps:T(e,"clearDeps"),clearComments:T(e,"clearComments"),clearNotes:T(e,"clearNotes"),clearLearnings:T(e,"clearLearnings"),clearFiles:T(e,"clearFiles"),clearTests:T(e,"clearTests"),clearDocs:T(e,"clearDocs"),clearReminders:T(e,"clearReminders"),clearEvents:T(e,"clearEvents"),clearTypeOptions:T(e,"clearTypeOptions")};return Fs(i,e),i}function k6(e){let t=o=>ct(e,_e(Dd,o)),n=o=>Os(e,_e(Rs,o)),r={title:t("title"),description:t("description"),body:t("body"),status:t("status"),closeReason:t("closeReason"),priority:t("priority"),type:t("type"),tags:t("tags"),addTags:n("addTags"),removeTags:n("removeTags"),deadline:t("deadline"),estimatedMinutes:t("estimatedMinutes"),acceptanceCriteria:gw(e,_e(Rs,"acceptanceCriteria")),addAc:n("addAc"),removeAc:n("removeAc"),definitionOfReady:t("definitionOfReady"),order:t("order"),rank:t("rank"),goal:t("goal"),objective:t("objective"),value:t("value"),impact:t("impact"),outcome:t("outcome"),whyNow:t("whyNow"),author:t("author"),message:t("message"),force:!!e.force,ownershipMetadataBypass:e.ownershipMetadataBypass===!0?!0:void 0,ownershipDependencyBypass:e.ownershipDependencyBypass===!0?!0:void 0,assignee:t("assignee"),parent:t("parent"),allowUnresolvedDeps:Ms(e,["allowUnresolvedDeps","allow_unresolved_deps"])===!0,reviewer:t("reviewer"),risk:t("risk"),confidence:t("confidence"),sprint:t("sprint"),release:t("release"),blockedBy:t("blockedBy"),blockedReason:t("blockedReason"),unblockNote:t("unblockNote"),reporter:t("reporter"),severity:t("severity"),environment:t("environment"),reproSteps:t("reproSteps"),resolution:t("resolution"),expectedResult:t("expectedResult"),actualResult:t("actualResult"),affectedVersion:t("affectedVersion"),fixedVersion:t("fixedVersion"),component:t("component"),regression:e.regression===!0?"true":t("regression"),customerImpact:t("customerImpact"),dep:n("dep"),depRemove:n("depRemove"),replaceDeps:T(e,"replaceDeps"),replaceTests:T(e,"replaceTests"),replaceFiles:T(e,"replaceFiles"),replaceDocs:T(e,"replaceDocs"),comment:n("comment"),note:n("note"),learning:n("learning"),file:n("file"),test:n("test"),doc:n("doc"),reminder:n("reminder"),event:n("event"),typeOption:n("typeOption"),field:n("field"),unset:n("unset"),clearDeps:T(e,"clearDeps"),clearComments:T(e,"clearComments"),clearNotes:T(e,"clearNotes"),clearLearnings:T(e,"clearLearnings"),clearFiles:T(e,"clearFiles"),clearTests:T(e,"clearTests"),clearDocs:T(e,"clearDocs"),clearReminders:T(e,"clearReminders"),clearEvents:T(e,"clearEvents"),clearTypeOptions:T(e,"clearTypeOptions")};return Fs(r,e),r}var A$=new Set(["filterStatus","filterType","filterTag","filterPriority","filterDeadlineBefore","filterDeadlineAfter","filterUpdatedAfter","filterUpdatedBefore","filterCreatedAfter","filterCreatedBefore","filterAssignee","filterAssigneeFilter","filterAssignee_filter","filterParent","filterSprint","filterRelease","filterAcMissing","filterEstimatesMissing","filterEstimateMissing","filterResolutionMissing","filterMetadataMissing","filterReviewerMissing","filterRiskMissing","filterConfidenceMissing","filterSprintMissing","filterReleaseMissing","filterHasNotes","filterNoNotes","filterHasLearnings","filterNoLearnings","filterHasFiles","filterNoFiles","filterHasDocs","filterNoDocs","filterHasTests","filterNoTests","filterHasComments","filterNoComments","filterHasDeps","filterNoDeps","filterHasBody","filterEmptyBody","filterHasLinkedCommand","filterNoLinkedCommand","ids","limit","offset","dryRun","rollback","checkpoint"]);function x6(e){let t={};for(let[n,r]of Object.entries(e))A$.has(n)||(t[n]=r);return t}function D(e,t){let n=_e(Cd,t),r=ct(e,n);if(r!==void 0)return r;for(let o of n.keys){let i=e[o];if(Array.isArray(i)){let s=i.filter(a=>typeof a=="string");if(s.length>0)return s.join(",")}if(t==="ids"&&typeof i=="string")return i;if(typeof i=="number"&&Number.isFinite(i))return String(i)}}function hw(e){let t=T(e,"filterFilesMissing"),n=T(e,"filterDocsMissing");return{filterReviewerMissing:T(e,"filterReviewerMissing"),filterRiskMissing:T(e,"filterRiskMissing"),filterConfidenceMissing:T(e,"filterConfidenceMissing"),filterSprintMissing:T(e,"filterSprintMissing"),filterReleaseMissing:T(e,"filterReleaseMissing"),hasNotes:T(e,"hasNotes"),hasLearnings:T(e,"hasLearnings"),hasFiles:T(e,"hasFiles"),hasDocs:T(e,"hasDocs"),hasTests:T(e,"hasTests"),hasComments:T(e,"hasComments"),hasDeps:T(e,"hasDeps"),hasBody:T(e,"hasBody"),hasLinkedCommand:T(e,"hasLinkedCommand"),noNotes:dt(e,"notes"),noLearnings:dt(e,"learnings"),noFiles:dt(e,"files")??t,filterFilesMissing:t,noDocs:dt(e,"docs")??n,filterDocsMissing:n,noTests:dt(e,"tests"),noComments:dt(e,"comments"),noDeps:dt(e,"deps"),emptyBody:T(e,"emptyBody"),noLinkedCommand:dt(e,"linkedCommand")}}function C6(e){let t={status:D(e,"status"),type:D(e,"type"),tag:D(e,"tag"),priority:D(e,"priority"),deadlineBefore:D(e,"deadlineBefore"),deadlineAfter:D(e,"deadlineAfter"),updatedAfter:D(e,"updatedAfter"),updatedBefore:D(e,"updatedBefore"),createdAfter:D(e,"createdAfter"),createdBefore:D(e,"createdBefore"),today:T(e,"today"),recent:T(e,"recent"),ids:D(e,"ids"),assignee:D(e,"assignee"),assigneeFilter:D(e,"assigneeFilter"),parent:D(e,"parent"),sprint:D(e,"sprint"),release:D(e,"release"),limit:D(e,"limit"),offset:D(e,"offset"),noTruncate:dt(e,"truncate"),includeBody:T(e,"includeBody"),strictRead:T(e,"strictRead"),compact:T(e,"compact"),brief:T(e,"brief"),full:T(e,"full"),fields:D(e,"fields"),sort:D(e,"sort"),order:D(e,"order"),tree:T(e,"tree"),treeDepth:D(e,"treeDepth"),filterAcMissing:T(e,"filterAcMissing"),filterEstimatesMissing:Ms(e,["filterEstimatesMissing","filterEstimateMissing"]),filterResolutionMissing:T(e,"filterResolutionMissing"),filterMetadataMissing:T(e,"filterMetadataMissing"),...hw(e)};return Fs(t,e),t}function O6(e){return{groupBy:typeof e.groupBy=="string"?e.groupBy:void 0,count:e.count===!0?!0:void 0,completion:e.completion===!0?!0:void 0,sum:typeof e.sum=="string"?e.sum:void 0,avg:typeof e.avg=="string"?e.avg:void 0,includeUnparented:e.includeUnparented===!0||e.include_unparented===!0,status:typeof e.status=="string"?e.status:void 0,type:D(e,"type"),tag:D(e,"tag"),priority:D(e,"priority"),deadlineBefore:D(e,"deadlineBefore"),deadlineAfter:D(e,"deadlineAfter"),assignee:D(e,"assignee"),assigneeFilter:D(e,"assigneeFilter"),parent:D(e,"parent"),sprint:D(e,"sprint"),release:D(e,"release")}}function I6(e,t,n){if(Sn(t),n.quiet)return;let r=Array.isArray(t.warnings)?t.warnings:[],o={type:"meta",command:e,count:t.count,now:t.now,filters:t.filters};if(r.length>0&&(o.warnings=r),!!st(`${JSON.stringify(o)}
|
|
188
|
+
`)){for(let i of t.items)if(!st(`${JSON.stringify({type:"item",command:e,item:i})}
|
|
189
|
+
`))return;st(`${JSON.stringify({type:"end",command:e,count:t.count})}
|
|
190
|
+
`)}}function R6(e,t,n){if(Sn(e),n.quiet)return;let r={type:"meta",command:"activity",count:e.count,filters:{id:t.id??null,op:t.op??null,author:t.author??null,from:t.from??null,to:t.to??null,limit:t.limit??null}};if(!st(`${JSON.stringify(r)}
|
|
191
|
+
`))return;let o=e.compact&&e.compact_activity?e.compact_activity:e.activity??[];for(let i of o)if(!st(`${JSON.stringify({type:"entry",command:"activity",entry:i})}
|
|
192
|
+
`))return;st(`${JSON.stringify({type:"end",command:"activity",count:e.count})}
|
|
193
|
+
`)}function N6(e){let t=c=>ct(e,_e(Ss,c)),n=c=>{let d=Cs(e,_e(Ss,c));if(typeof d=="string"||typeof d=="number"&&Number.isFinite(d))return d},r=t("fields"),o=e.compact===!0,i=e.full===!0,s=!o&&!i&&r===void 0,l={mode:e.semantic===!0?"semantic":e.hybrid===!0?"hybrid":t("mode"),matchMode:t("matchMode"),minScore:n("minScore"),count:T(e,"count"),semanticWeight:n("semanticWeight"),includeLinked:T(e,"includeLinked"),titleExact:T(e,"titleExact"),phraseExact:T(e,"phraseExact"),highlight:T(e,"highlight"),status:t("status"),type:t("type"),tag:t("tag"),priority:t("priority"),deadlineBefore:t("deadlineBefore"),deadlineAfter:t("deadlineAfter"),updatedAfter:t("updatedAfter"),updatedBefore:t("updatedBefore"),createdAfter:t("createdAfter"),createdBefore:t("createdBefore"),assignee:t("assignee"),sprint:t("sprint"),release:t("release"),parent:t("parent"),limit:t("limit"),fields:r,compact:o||s?!0:void 0,full:T(e,"full"),...hw(e)};return Fs(l,e),l}function D6(e){let t=e.map(n=>n.trim()).filter(n=>n.length>0).join(" ");if(t.length===0)throw new b("Search query must not be empty",_.USAGE);return t}function L6(e){let t=n=>ct(e,_e(Od,n));return{id:t("id"),op:t("op"),author:t("author"),from:t("from"),to:t("to"),limit:t("limit"),compact:e.full===!0||e.provenance===!0?!1:e.compact!==!1,unbounded:T(e,"unbounded"),provenance:T(e,"provenance"),provenanceSummary:T(e,"provenanceSummary"),harness:Array.isArray(e.harness)?e.harness:void 0,agentInstance:Array.isArray(e.agentInstance)?e.agentInstance:void 0,provenanceFilter:Array.isArray(e.provenanceFilter)?e.provenanceFilter:void 0}}var S$=new Set(["","rows","ndjson","jsonl","true","1","yes","on"]),k$=new Set(["false","off","none","0"]);function P6(e){if(e===!0)return!0;if(e===!1||e===void 0||e===null)return!1;if(typeof e=="string"){let t=e.trim().toLowerCase();if(S$.has(t))return!0;if(k$.has(t))return!1}throw new b("Activity --stream accepts rows|ndjson|jsonl (or no value)",_.USAGE)}function M6(e){let t=s=>ct(e,_e(ks,s)),n=s=>_w(e,_e(ks,s)),r=e.section,o=Array.isArray(r)?r.filter(s=>typeof s=="string"&&s.trim().length>0):typeof r=="string"&&r.trim().length>0?[r]:void 0,i={date:t("date"),from:t("from"),to:t("to"),past:e.past===!0?!0:void 0,type:t("type"),tag:t("tag"),priority:t("priority"),assignee:t("assignee"),assigneeFilter:t("assigneeFilter"),sprint:t("sprint"),release:t("release"),parent:t("parent"),limit:t("limit"),format:t("format"),depth:t("depth"),fields:t("fields"),section:o&&o.length>0?o:void 0,activityLimit:t("activityLimit"),staleThreshold:t("staleThreshold"),tokenBudget:n("tokenBudget"),noExtensionHealth:e.extensionHealth===!1?!0:void 0,noTags:e.tags===!1?!0:void 0};for(let[s,a]of Object.entries(e))Object.hasOwn(i,s)||(i[s]=a);return i}function F6(e){let t=o=>ct(e,_e(xs,o)),n=o=>_w(e,_e(xs,o)),r={type:t("type"),tag:t("tag"),priority:n("priority"),assignee:t("assignee"),assigneeFilter:t("assigneeFilter"),sprint:t("sprint"),release:t("release"),parent:t("parent"),limit:t("limit"),blockedLimit:t("blockedLimit"),readyOnly:e.readyOnly===!0||e.ready_only===!0?!0:void 0,format:t("format"),tokenBudget:n("tokenBudget")};for(let[o,i]of Object.entries(e))Object.hasOwn(r,o)||(r[o]=i);return r}function x$(e){if(!e||typeof e!="object")return[];let t=e,n=new Set,r=a=>{if(typeof a!="string")return;let l=a.trim();l.length!==0&&n.add(l)};r(t.id);let o=t.item;o&&typeof o=="object"&&r(o.id);let i=t.ids;if(Array.isArray(i))for(let a of i)r(a);let s=t.items;if(Array.isArray(s))for(let a of s)!a||typeof a!="object"||r(a.id);return[...n].sort((a,l)=>a.localeCompare(l))}async function $6(e,t){let n=cr(process.cwd(),e.path),r=await ed(n,x$(t),{background:!vc()});e.profile&&r.warnings.length>0&&Kl(`profile:search_refresh_warnings=${v$(r.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]="13c02696-29a7-598e-888a-3502fd88bfbe")}catch{}})();export{C$ as a,co as b,Y as c,lu as d,W as e,P as f,er as g,qe as h,uo as i,Us as j,D$ as k,fo as l,po as m,mo as n,go as o,_o as p,yo as q,vw as r,Aw as s,M$ as t,se as u,kw as v,Me as w,Vs as x,xw as y,zs as z,S as A,_ as B,bo as C,b as D,L as E,Ow as F,$ as G,fu as H,j$ as I,Iw as J,uu as K,pu as L,Rw as M,Lw as N,V$ as O,X as P,ft as Q,ne as R,X$ as S,Qw as T,nE as U,rE as V,iE as W,sE as X,Ks as Y,Ys as Z,Fe as _,uj as $,cE as aa,ka as ba,nt as ca,Xs as da,mE as ea,yn as fa,Au as ga,hn as ha,To as ia,bn as ja,vo as ka,yj as la,hj as ma,bj as na,So as oa,ko as pa,wj as qa,Ej as ra,Tj as sa,vj as ta,xo as ua,or as va,Js as wa,ku as xa,Co as ya,xu as za,Cu as Aa,Aj as Ba,Sj as Ca,ea as Da,ta as Ea,RE as Fa,sr as Ga,Io as Ha,ar as Ia,Mu as Ja,Fu as Ka,YE as La,QE as Ma,Ro as Na,ju as Oa,Uj as Pa,cr as Qa,zj as Ra,mt as Sa,ye as Ta,wn as Ua,dr as Va,En as Wa,Uu as Xa,No as Ya,lT as Za,qj as _a,cT as $a,dT as ab,Gj as bb,Vj as cb,uT as db,Bj as eb,V as fb,df as gb,uf as hb,pf as ib,mf as jb,ra as kb,sa as lb,aa as mb,Yj as nb,Xj as ob,Jj as pb,hT as qb,zu as rb,Qj as sb,qu as tb,la as ub,TT as vb,vT as wb,pr as xb,ca as yb,da as zb,ua as Ab,fa as Bb,pa as Cb,Mo as Db,ma as Eb,a1 as Fb,we as Gb,re as Hb,Ut as Ib,Ku as Jb,ga as Kb,Yu as Lb,_a as Mb,ya as Nb,ha as Ob,ba as Pb,wa as Qb,Ea as Rb,va as Sb,Aa as Tb,Sa as Ub,uv as Vb,wv as Wb,Tv as Xb,zf as Yb,qf as Zb,Lv as _b,dU as $b,cA as ac,dA as bc,hU as cc,Kf as dc,uA as ec,ja as fc,mA as gc,gA as hc,kU as ic,bA as jc,wA as kc,EA as lc,TA as mc,vA as nc,AA as oc,SA as pc,bt as qc,kA as rc,xA as sc,Sn as tc,CA as uc,ei as vc,Er as wc,OA as xc,IA as yc,le as zc,ti as Ac,$e as Bc,Ua as Cc,RA as Dc,NA as Ec,DA as Fc,LA as Gc,Ce as Hc,ni as Ic,Tr as Jc,UA as Kc,GA as Lc,VA as Mc,BA as Nc,MU as Oc,Te as Pc,ce as Qc,Ba as Rc,Ge as Sc,fe as Tc,bS as Uc,mp as Vc,Ha as Wc,oi as Xc,Wa as Yc,_p as Zc,wS as _c,AS as $c,SS as ad,xn as bd,wp as cd,XU as dd,Ep as ed,kS as fd,JU as gd,Kt as hd,Tp as id,CS as jd,si as kd,Cr as ld,Mk as md,Yt as nd,Or as od,Oe as pd,rl as qd,Et as rd,ci as sd,Vk as td,Bk as ud,di as vd,cl as wd,Cz as xd,Oz as yd,Iz as zd,Xk as Ad,Jk as Bd,Qk as Cd,_l as Dd,tx as Ed,jz as Fd,_x as Gd,yx as Hd,Ir as Id,wl as Jd,El as Kd,bx as Ld,Uz as Md,wx as Nd,Tl as Od,Rr as Pd,Tt as Qd,nG as Rd,rG as Sd,vl as Td,Kz as Ud,Gp as Vd,yi as Wd,Hp as Xd,Ix as Yd,Rx as Zd,Zz as _d,Be as $d,eq as ae,Dx as be,Mx as ce,qx as de,Kp as ee,sq as fe,aq as ge,kl as he,xl as ie,lq as je,Hx as ke,cq as le,dq as me,Ol as ne,en as oe,hi as pe,bi as qe,Qp as re,Il as se,Ei as te,Rl as ue,em as ve,Nl as we,tm as xe,Ln as ye,am as ze,cm as Ae,dm as Be,lC as Ce,Mn as De,Aq as Ee,fm as Fe,mm as Ge,Sq as He,gm as Ie,ym as Je,CC as Ke,Dq as Le,IC as Me,bm as Ne,Lq as Oe,Em as Pe,NC as Qe,MC as Re,Tm as Se,vm as Te,Am as Ue,Sm as Ve,$C as We,jC as Xe,km as Ye,Dr as Ze,Fq as _e,xm as $e,Ul as af,it as bf,UC as cf,zC as df,qC as ef,GC as ff,VC as gf,BC as hf,Cm as if,HC as jf,Om as kf,zl as lf,Im as mf,Rm as nf,eO as of,Lr as pf,Lm as qf,st as rf,Fm as sf,jm as tf,Kl as uf,IO as vf,Mr as wf,Zl as xf,PO as yf,tn as zf,nn as Af,FO as Bf,jn as Cf,Ri as Df,Fr as Ef,$O as Ff,jO as Gf,tc as Hf,Un as If,Ni as Jf,xG as Kf,CG as Lf,nc as Mf,GO as Nf,Li as Of,Jm as Pf,Re as Qf,jr as Rf,ic as Sf,hI as Tf,bI as Uf,wI as Vf,sc as Wf,vI as Xf,mg as Yf,Pi as Zf,rn as _f,CI as $f,wV as ag,II as bg,_g as cg,RI as dg,NI as eg,hg as fg,DI as gg,LI as hg,PI as ig,MI as jg,GI as kg,HI as lg,WI as mg,YI as ng,XI as og,JI as pg,eR as qg,IV as rg,rR as sg,MV as tg,aR as ug,cR as vg,dR as wg,uR as xg,fR as yg,dc as zg,gR as Ag,BV as Bg,HV as Cg,WV as Dg,KV as Eg,YV as Fg,XV as Gg,JV as Hg,hR as Ig,bR as Jg,wR as Kg,ER as Lg,TR as Mg,vR as Ng,AR as Og,a2 as Pg,qi as Qg,JR as Rg,Ct as Sg,He as Tg,qr as Ug,Gn as Vg,u_ as Wg,vc as Xg,F2 as Yg,u0 as Zg,f0 as _g,p0 as $g,xc as ah,E0 as bh,ns as ch,W0 as dh,rs as eh,Yr as fh,Xr as gh,Jr as hh,oD as ih,iD as jh,EB as kh,Lc as lh,P_ as mh,uD as nh,fD as oh,xB as ph,as as qh,U_ as rh,Pc as sh,AD as th,SD as uh,IB as vh,z_ as wh,Wn as xh,Fc as yh,jc as zh,fs as Ah,zB as Bh,Kc as Ch,ms as Dh,K_ as Eh,gs as Fh,Yc as Gh,Xc as Hh,Jc as Ih,Qc as Jh,ey as Kh,ty as Lh,X_ as Mh,ed as Nh,BL as Oh,Jn as Ph,nP as Qh,rP as Rh,oP as Sh,lP as Th,cP as Uh,uP as Vh,yP as Wh,my as Xh,bP as Yh,wP as Zh,EP as _h,w5 as $h,T5 as ai,ys as bi,ad as ci,_y as di,gy as ei,AP as fi,SP as gi,yy as hi,CP as ii,NP as ji,LP as ki,MP as li,FP as mi,UP as ni,qP as oi,GP as pi,ZP as qi,Es as ri,My as si,vM as ti,lH as ui,dF as vi,uF as wi,fF as xi,pF as yi,Cd as zi,Ss as Ai,mF as Bi,ks as Ci,xs as Di,Od as Ei,ct as Fi,Cs as Gi,Os as Hi,Id as Ii,Rd as Ji,Is as Ki,Nd as Li,Dd as Mi,Rs as Ni,Pd as Oi,Md as Pi,Fd as Qi,yh as Ri,Ns as Si,hh as Ti,$d as Ui,bh as Vi,jd as Wi,Ud as Xi,zd as Yi,qd as Zi,bF as _i,Gd as $i,Vd as aj,wF as bj,EF as cj,oo as dj,TF as ej,Ds as fj,vF as gj,Th as hj,vh as ij,Ah as jj,Sh as kj,kh as lj,xh as mj,Ch as nj,Oh as oj,Ih as pj,Rh as qj,Nh as rj,Dh as sj,Lh as tj,Ph as uj,Mh as vj,Fh as wj,$h as xj,jh as yj,Qd as zj,me as Aj,Zd as Bj,Wd as Cj,Uh as Dj,zh as Ej,qh as Fj,Gh as Gj,Vh as Hj,Bh as Ij,Hh as Jj,Wh as Kj,Kh as Lj,Yh as Mj,Xh as Nj,Jh as Oj,Qh as Pj,Zh as Qj,eb as Rj,tb as Sj,AF as Tj,nb as Uj,rb as Vj,ob as Wj,ib as Xj,sb as Yj,ab as Zj,lb as _j,cb as $j,db as ak,ub as bk,eu as ck,pb as dk,mb as ek,gb as fk,_b as gk,yb as hk,hb as ik,bb as jk,wb as kk,Eb as lk,Tb as mk,vb as nk,Ab as ok,Kd as pk,Cb as qk,Ob as rk,Ib as sk,Rb as tk,Nb as uk,Db as vk,Yd as wk,Lb as xk,Pb as yk,Xd as zk,Mb as Ak,Fb as Bk,$b as Ck,jb as Dk,Ub as Ek,Dt as Fk,zb as Gk,qb as Hk,Gb as Ik,Vb as Jk,kF as Kk,tu as Lk,CF as Mk,ow as Nk,NF as Ok,iw as Pk,aw as Qk,qF as Rk,XF as Sk,iu as Tk,uw as Uk,fw as Vk,JF as Wk,e$ as Xk,y$ as Yk,g6 as Zk,_6 as _k,y6 as $k,h6 as al,b6 as bl,w$ as cl,w6 as dl,E$ as el,E6 as fl,T$ as gl,T6 as hl,v6 as il,A6 as jl,v$ as kl,S6 as ll,k6 as ml,x6 as nl,C6 as ol,O6 as pl,I6 as ql,R6 as rl,N6 as sl,D6 as tl,L6 as ul,P6 as vl,M6 as wl,F6 as xl,$6 as yl};
|
|
194
|
+
//# sourceMappingURL=chunk-HC3GM6YY.js.map
|