@unbrained/pm-cli 2026.8.14 → 2026.8.16
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 +51 -11
- package/dist/cli/commander-usage.js +17 -4
- package/dist/cli/error-guidance.d.ts +7 -0
- package/dist/cli/error-guidance.js +65 -25
- package/dist/cli/main.js +3 -2
- package/dist/cli/register-history-author.js +16 -11
- package/dist/cli/register-mutation.js +4 -2
- package/dist/cli/register-operations.js +5 -5
- package/dist/cli-bundle/bundle-manifest.json +148 -148
- package/dist/cli-bundle/chunks/chunk-47OQEOQB.js +2 -0
- package/dist/cli-bundle/chunks/{chunk-XAVMOK6B.js → chunk-73UGEBRS.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-HCIYWD6M.js +35 -0
- package/dist/cli-bundle/chunks/{chunk-FIW4P64F.js → chunk-I2LUWWR5.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-SBRKH6OR.js → chunk-IC5W2T34.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-TMJ7URWS.js → chunk-PANOOBIS.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-BFALV3YP.js → chunk-RIS565OA.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-TXMEUUUY.js → chunk-TK6N7HGM.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-TOFG2URD.js +197 -0
- package/dist/cli-bundle/chunks/{chunk-G5JUB66K.js → chunk-URW4QRMI.js} +65 -59
- package/dist/cli-bundle/chunks/{register-list-query-T3EHHNNV.js → register-list-query-EYCXHZAG.js} +2 -2
- package/dist/cli-bundle/chunks/register-mutation-7YVIG54J.js +20 -0
- package/dist/cli-bundle/chunks/register-operations-KGDNRMCL.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-3YXZ444E.js → register-setup-NVXBOD5I.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-PPFGQDSI.js → chunk-4JPEBFFC.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-5NMFSX26.js +155 -0
- package/dist/cli-bundle/focused-chunks/{chunk-YOOI3UZX.js → chunk-6ROKKT4X.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-725JSCMP.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-XDNAW5OI.js → chunk-C7JUBRFP.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-4DQ2YERC.js → chunk-CODV5LUT.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-DQ6SMTBF.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-HAACPSUW.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-WCVE2NIG.js → chunk-J4UFYHOD.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-JX5Z344Q.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-L4RDYBIQ.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-KSEDUWVZ.js → chunk-NJ5RLEFD.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-K7RWWOAG.js → chunk-QYZERYR5.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-SSNDYZTM.js +8 -0
- package/dist/cli-bundle/focused-chunks/chunk-T46KLOIB.js +50 -0
- package/dist/cli-bundle/focused-chunks/{chunk-KFSZ3BP6.js → chunk-TZATVC4G.js} +6 -6
- package/dist/cli-bundle/focused-chunks/chunk-WY3WRPVN.js +2 -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 +32 -35
- 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 +32 -31
- 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 +7 -2
- package/dist/core/extensions/reserved-host-flags.js +3 -2
- package/dist/core/history/replay.d.ts +14 -1
- package/dist/core/history/replay.js +45 -8
- package/dist/core/history/workspace-history.js +32 -10
- package/dist/core/output/output.d.ts +2 -0
- package/dist/core/output/output.js +7 -3
- package/dist/core/shared/command-types.d.ts +2 -0
- package/dist/core/shared/command-types.js +2 -2
- package/dist/core/shared/errors.d.ts +14 -0
- package/dist/core/shared/errors.js +2 -2
- package/dist/core/store/item-store.js +28 -2
- package/dist/mcp/tool-definitions.js +9 -5
- package/dist/sdk/agent/refusal-reachability.d.ts +69 -0
- package/dist/sdk/agent/refusal-reachability.js +159 -3
- package/dist/sdk/author-attribution.d.ts +56 -11
- package/dist/sdk/author-attribution.js +174 -50
- package/dist/sdk/cli-bootstrap.d.ts +2 -0
- package/dist/sdk/cli-bootstrap.js +7 -2
- package/dist/sdk/cli-contracts/completeness.js +3 -2
- package/dist/sdk/cli-contracts/flag-contracts.js +6 -2
- package/dist/sdk/cli-contracts/registration-helpers.js +3 -2
- package/dist/sdk/cli-contracts/runtime-contracts.d.ts +5 -0
- package/dist/sdk/cli-contracts/runtime-contracts.js +23 -7
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +22 -5
- package/dist/sdk/cli-contracts/tool-schema.js +20 -5
- package/dist/sdk/cli-program.js +3 -2
- package/dist/sdk/completion.js +11 -4
- package/dist/sdk/core.d.ts +2 -2
- package/dist/sdk/core.js +3 -3
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +50 -2
- package/dist/sdk/generated/generated-error-code-catalog-part-2.js +74 -14
- package/dist/sdk/governance/assurance-action.d.ts +7 -1
- package/dist/sdk/governance/assurance-action.js +7 -6
- package/dist/sdk/governance/assurance-mutation-error.d.ts +42 -1
- package/dist/sdk/governance/assurance-mutation-error.js +27 -3
- package/dist/sdk/governance/assurance-runtime.js +12 -11
- package/dist/sdk/governance/assurance.d.ts +9 -0
- package/dist/sdk/governance/assurance.js +80 -14
- package/dist/sdk/governance/coverage-assurance.d.ts +24 -0
- package/dist/sdk/governance/coverage-assurance.js +61 -0
- package/dist/sdk/governance/extension-host-version.d.ts +25 -0
- package/dist/sdk/governance/extension-host-version.js +116 -0
- package/dist/sdk/governance/health.d.ts +32 -1
- package/dist/sdk/governance/health.js +119 -27
- package/dist/sdk/governance/provenance-health.d.ts +27 -0
- package/dist/sdk/governance/provenance-health.js +95 -3
- package/dist/sdk/governance/validate.js +7 -8
- package/dist/sdk/governance.d.ts +6 -0
- package/dist/sdk/governance.js +8 -2
- package/dist/sdk/history-repair.d.ts +13 -1
- package/dist/sdk/history-repair.js +62 -18
- package/dist/sdk/index.d.ts +2 -1
- package/dist/sdk/index.js +4 -3
- package/dist/sdk/linked-artifacts.js +16 -5
- package/dist/sdk/pagination.d.ts +15 -0
- package/dist/sdk/pagination.js +9 -5
- package/dist/sdk/query/context.d.ts +5 -1
- package/dist/sdk/query/context.js +14 -5
- package/dist/sdk/read-output/continuation.d.ts +11 -0
- package/dist/sdk/read-output/continuation.js +132 -0
- package/dist/sdk/read-output-budget.d.ts +1 -1
- package/dist/sdk/read-output-budget.js +14 -10
- package/dist/sdk/read-output-contracts.d.ts +66 -2
- package/dist/sdk/read-output-contracts.js +185 -19
- package/dist/sdk/read-output-rows.d.ts +2 -0
- package/dist/sdk/read-output-rows.js +15 -2
- package/dist/sdk/runtime-input.js +4 -2
- package/dist/sdk/runtime.d.ts +2 -5
- package/dist/sdk/runtime.js +3 -2
- package/docs/ASSURANCE.md +59 -2
- package/docs/COMMANDS.md +8 -2
- package/docs/READ_OUTPUT_CONTRACTS.md +55 -8
- package/docs/RELEASING.md +54 -11
- package/docs/SDK_CONTEXT_INTEGRITY.md +94 -4
- package/docs/SDK_CONTEXT_TRUTH_CONTRACTS.md +13 -5
- package/marketplace.json +2 -2
- package/package.json +3 -3
- 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/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 +1241 -180
- package/dist/cli-bundle/chunks/chunk-BBOFSVAK.js +0 -197
- package/dist/cli-bundle/chunks/chunk-YAMTJL6Y.js +0 -34
- package/dist/cli-bundle/chunks/chunk-YSVSMJ2B.js +0 -2
- package/dist/cli-bundle/chunks/register-mutation-E27WCLSZ.js +0 -20
- package/dist/cli-bundle/chunks/register-operations-4R6I7CPY.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-F43TT2QQ.js +0 -8
- package/dist/cli-bundle/focused-chunks/chunk-KYUQGTSB.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-LZ4MV3RH.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-PGXJQLCT.js +0 -155
- package/dist/cli-bundle/focused-chunks/chunk-Q4YY3XNF.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-QK753U3U.js +0 -46
- package/dist/cli-bundle/focused-chunks/chunk-QUMB2J27.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-SM7MTG27.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-ZM6TZVHC.js +0 -2
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
var dE=Object.defineProperty;var Uj=(e,t)=>{for(var n in t)dE(e,n,{get:t[n],enumerable:!0})};import*as K from"node:fs/promises";import Io from"node:path";import uE 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]="23fc5fcb-5c80-57ab-8d91-8d15ee35ab53")}catch{}})();var fE=[10,25,50,100];async function Ro(e){await K.mkdir(e,{recursive:!0})}async function Y(e){try{return await K.access(e),!0}catch{return!1}}function Du(e){return ue(e)||Yt(e,"ENOTDIR")}function ue(e){return Yt(e,"ENOENT")}async function G(e){try{return await K.readFile(e,"utf8")}catch(t){if(Du(t))return null;throw t}}async function D(e,t){let n=Io.dirname(e);await Ro(n);let r=Io.join(n,`.${Io.basename(e)}.${process.pid}.${Date.now()}.${uE.randomBytes(4).toString("hex")}.tmp`);await K.writeFile(r,t,"utf8");try{await K.rename(r,e)}catch(o){if(process.platform==="win32"&&(Yt(o,"EPERM")||Yt(o,"EBUSY"))){let i=o;for(let s of fE){await new Promise(a=>setTimeout(a,s));try{await K.rename(r,e);return}catch(a){if(i=a,!Yt(a,"EPERM")&&!Yt(a,"EBUSY"))break}}try{await K.unlink(r)}catch{}throw i}if(Yt(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 Et(e,t){let n=Io.dirname(e);await Ro(n);let r=await K.open(e,"a");try{await r.writeFile(`${t}
|
|
2
|
+
`,"utf8")}finally{await r.close()}}async function _r(e){try{await K.unlink(e)}catch(t){if(!Du(t))throw t}}function Yt(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]="294f3a0c-e74d-5963-b966-8a4443855ce3")}catch{}})();var He=["commands","renderers","hooks","schema","importers","search","parser","preflight","services"],No=2,ia=Object.freeze({migration:"schema",validation:"schema"}),Bj=Object.freeze({version:No,capabilities:[...He],legacy_aliases:{...ia}}),Do=["off","warn","enforce"],Lo=["off","warn","enforce"],Po=["none","restricted","strict"],Lu=["block","warn"],Mo=["commands.override","commands.handler","hooks.beforecommand","hooks.beforemutation","hooks.aftercommand","hooks.onwrite","hooks.onread","hooks.onindex","schema.flags","schema.itemfields","schema.itemtypes","schema.relationshipkinds","schema.migrations","schema.profiles","parser.override","preflight.override","services.override","renderers.override","importers.importer","importers.exporter","search.provider","search.vectorstore","services.assuranceprovider"],xn=["output_format","error_format","help_format","lock_acquire","lock_release","history_append","item_store_write","item_store_delete","context_relevance","command_result"];function Fo(){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 aa=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"]}]),ca=Object.freeze({draft_status:"draft",open_status:"open",in_progress_status:"in_progress",blocked_status:"blocked",close_status:"closed",canceled_status:"canceled"}),$o=".agents/pm",jo="settings.json",pE="Closed at creation via pm create",mE=["","epics","features","tasks","chores","issues","schema","history","search","extensions","locks"],gE=["decisions","events","reminders","milestones","meetings","plans"],Kj=[...mE,...gE],fe={Epic:"epics",Feature:"features",Task:"tasks",Chore:"chores",Issue:"issues",Decision:"decisions",Event:"events",Reminder:"reminders",Milestone:"milestones",Meeting:"meetings",Plan:"plans"},_E=["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"],je=["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",..._E,"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"],la={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}},yE=["no active blocker","ready for planned execution sequencing","work completed","work is closed"],sa={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 Pu(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:[...yE],lifecycle_closure_like_blocked_reason_patterns:[...sa.blocked_reason],lifecycle_closure_like_resolution_patterns:[...sa.resolution],lifecycle_closure_like_actual_result_patterns:[...sa.actual_result],estimate_defaults_by_type:{}},governance:{preset:"minimal",...la.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:aa.map(e=>({...e,aliases:Pu(e.aliases),roles:Pu(e.roles)})),fields:[],workflow:{...ca},unknown_field_policy:"allow"},extensions:{enabled:[],disabled:[],policy:Fo()},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:""}}},Cn={metadata:{},body:""},_={SUCCESS:0,GENERIC_FAILURE:1,USAGE:2,NOT_FOUND:3,CONFLICT:4,DEPENDENCY_FAILED:5,NO_EFFECT:6,PARTIAL_EFFECT:7},hE=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 Uo(e){let t=(e??"").trim().toLowerCase();if(t.length===0)return"unknown";let n=hE[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]="bf08255e-7ef4-5929-8431-2df83d98d0ba")}catch{}})();var h=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 P(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function bE(e){return P(e)??void 0}function yr(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 On(e){return Array.isArray(e)&&e.every(t=>typeof t=="number"&&Number.isFinite(t))}function j(e){if(e instanceof Error){let t=e.message.trim();return t.length>0?t:e.name}return String(e)}function zo(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=zo(e);return t===null||t<=0||!Number.isInteger(t)?null:t}function Jj(e,t,n){let r=zo(e);return r===null||r<t||r>n?null:r}function wE(e){return typeof e!="object"||e===null||Array.isArray(e)?null:e}function In(e){return typeof e!="object"||e===null?null:e}function Mu(e){return typeof e!="object"&&typeof e!="function"||e===null?null:e}function $u(e){let t=Mu(e);if(!t)return null;if(typeof t.activate=="function")return t;let n=Mu(t.default);return typeof n?.activate=="function"?n:null}function EE(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 Rn(e){let t=Math.ceil(e.size/2);for(let n of e.keys()){if(t===0)return;e.delete(n),t-=1}}import vE from"node:crypto";import{AsyncLocalStorage as TE}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 da=new TE,ju=1024;function AE(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 n1(e,t){let n=AE(e);return da.run({...n,clockReads:0,tokenReads:0},t)}function Uu(){let e=da.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 zu(e){let t=da.getStore();if(t===void 0)return;if(!Number.isSafeInteger(e)||e<0||e>ju)throw new Error(`Reproducible token length must be an integer between 0 and ${ju}`);let n="";for(;n.length<e;){let r=vE.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 SE=/^([+-]?)(\d+)([hdwm])$/i,kE=/^[+-]?\d+[hdwm](?:[+-]\d+[hdwm])+$/i,xE=/^(\d{4})(\d{2})(\d{2})$/,CE=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,OE=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})-(\d{2})(?:-(\d{2}))?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,IE=/^(\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 Uu()??new Date().toISOString()}function vt(e){return Number.isFinite(Date.parse(e))}var RE=1e4,qo=new Map;function qu(e){let t=qo.get(e);if(t!==void 0)return t;let n=Date.parse(e);return qo.size>=RE&&Rn(qo),qo.set(e,n),n}function ie(e,t){let n=qu(e),r=qu(t);return Number.isFinite(n)&&Number.isFinite(r)&&n!==r?n-r:e.localeCompare(t)}function c1(e,t){return!(t.deadlineBefore&&(!e.deadline||ie(e.deadline,t.deadlineBefore)>0)||t.deadlineAfter&&(!e.deadline||ie(e.deadline,t.deadlineAfter)<0)||t.updatedAfter&&ie(e.updated_at,t.updatedAfter)<0||t.updatedBefore&&ie(e.updated_at,t.updatedBefore)>0||t.createdAfter&&ie(e.created_at,t.createdAfter)<0||t.createdBefore&&ie(e.created_at,t.createdBefore)>0)}function ua(e){return e?`.${e.slice(1).padEnd(3,"0").slice(0,3)}`:""}function fa(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 NE(e,t,n){n&&n!==t&&(e.includes(n)||e.push(n))}function DE(e){let t=[],n=l=>NE(t,e,l),r=xE.exec(e);if(r){let[,l,d,u]=r;n(`${l}-${d}-${u}`)}let o=CE.exec(e);if(o){let[,l,d,u,p,f,y,g,b]=o,E=y?`:${y}`:"";n(`${l}-${d}-${u}T${p}:${f}${E}${ua(g)}${fa(b)}`)}let i=OE.exec(e);if(i){let[,l,d,u,p,f,y]=i,g=p?`:${p}`:"";n(`${l}T${d}:${u}${g}${ua(f)}${fa(y)}`)}let s=IE.exec(e);if(s){let[,l,d,u,p,f,y]=s,g=p?`:${p}`:"";n(`${l}T${d}:${u}${g}${ua(f)}${fa(y)}`)}let a=10,c=e.slice(0,a);if(PE(c)){let l=a;for(;l<e.length&&ME(e[l]);)l+=1;l<e.length&&n(`${c}T${e.slice(l)}`)}return t}function LE(e){let t=Date.parse(e);if(Number.isFinite(t))return t;for(let n of DE(e)){let r=Date.parse(n);if(Number.isFinite(r))return r}return Number.NaN}function PE(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 ME(e){return e?e===" "||e===" "||e===`
|
|
3
|
+
`||e==="\r"||e==="\f"||e==="\v":!1}function Vu(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}var FE=["January","February","March","April","May","June","July","August","September","October","November","December"],$E=/^(\d{4})-(\d{2})-(\d{2})/,jE=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/;function UE(e,t,n){let r=$E.exec(t)??jE.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 h(`Invalid ${a} value "${e}". Month "${r[2]}" is out of range \u2014 use a month between 01 and 12.`,_.USAGE);let c=Vu(o,i-1);if(s<1||s>c)throw new h(`Invalid ${a} value "${e}". ${FE[i-1]} ${o} has ${c} days, so day "${r[3]}" does not exist. Use a real YYYY-MM-DD calendar date.`,_.USAGE)}function zE(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,Vu(i,s));return n.setUTCFullYear(i,s,a),n}function qE(e,t=new Date,n="deadline"){let r=e.trim();if(r.toLowerCase()==="now")return t.toISOString();let o=SE.exec(r);if(o){let s=o[1]==="-"?-1:1,a=Number.parseInt(o[2],10)*s,c=o[3].toLowerCase();if(c==="m")return zE(t,a).toISOString();let l=c==="h"?3600*1e3:c==="d"?1440*60*1e3:10080*60*1e3;return new Date(t.getTime()+a*l).toISOString()}UE(e,r,n);let i=LE(r);if(!Number.isFinite(i)){let s=n.trim().length>0?n.trim():"deadline",a=kE.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 h(`Invalid ${s} value "${e}". ${a}`,_.USAGE)}return new Date(i).toISOString()}import{mkdir as VE,readFile as GE}from"node:fs/promises";import Gu 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 BE(e){let t=e.trim();if(!t)throw new h("--rollback requires a non-empty checkpoint ID",_.USAGE);if(!/^[a-zA-Z0-9._-]+$/.test(t))throw new h("--rollback checkpoint ID must match [a-zA-Z0-9._-]+",_.USAGE);return t}function HE(e,t){let n=t.replace(/[-:.TZ]/g,"").slice(0,14),r=Math.random().toString(36).slice(2,8);return`${e}-${n}-${r}`}function Bu(e,t){return Gu.join(e,"checkpoints",t)}function Hu(e,t,n){return Gu.join(Bu(e,t),`${n}.json`)}async function WE(e,t,n,r){let o=Bu(e,t);await VE(o,{recursive:!0});let i=Hu(e,t,n);return await D(i,`${JSON.stringify(r,null,2)}
|
|
4
|
+
`),i}function KE(e,t){if(!Array.isArray(e.items))throw new h(`Checkpoint ${t} is missing items`,_.GENERIC_FAILURE);return e.items.map(n=>{if(!n||typeof n!="object")throw new h(`Checkpoint ${t} contains an invalid item entry`,_.GENERIC_FAILURE);let r=n;if(typeof r.id!="string"||r.id.trim().length===0)throw new h(`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 h(`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 YE(e,t,n,r){let o=BE(n),i=Hu(e,t,o);if(!await Y(i))throw new h(`Checkpoint ${o} not found`,_.NOT_FOUND);let s=await GE(i,"utf8"),a;try{a=JSON.parse(s)}catch(d){throw new h(`Checkpoint ${o} contains invalid JSON: ${j(d)}`,_.GENERIC_FAILURE)}if(!a||typeof a!="object")throw new h(`Checkpoint ${o} is invalid`,_.GENERIC_FAILURE);let c=a;if(c.schema_version!==r)throw new h(`Checkpoint ${o} has unsupported schema version`,_.GENERIC_FAILURE);let l=KE(c,o);return{record:c,items:l,path:i,id:typeof c.id=="string"?c.id:o,created_at:typeof c.created_at=="string"?c.created_at:X(),author:typeof c.author=="string"?c.author:"unknown"}}async function XE(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:j(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 JE=Object.freeze({string:"string",number:"number",int:"number",integer:"number",float:"number",boolean:"boolean",bool:"boolean"});function pa(e){return typeof e!="string"?null:JE[e.trim().toLowerCase()]??null}function ma(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 Wu(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 Ue(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 c=0;c<r;c+=1)o[c]=0,i[c]=c;for(let c=1;c<=e.length;c+=1){s[0]=c;let l=s[0];for(let d=1;d<=t.length;d+=1){let u=e[c-1]===t[d-1]?0:1,p=i[d-1]+u,f=s[d-1]+1,y=i[d]+1,g=Math.min(p,f,y);c>1&&d>1&&e[c-1]===t[d-2]&&e[c-2]===t[d-1]&&(g=Math.min(g,o[d-2]+1)),s[d]=g,g<l&&(l=g)}if(l>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 T1=[{code:"unknown_lifecycle_action"}];function QE(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:Ue(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 Ku(e){return["pm",...e].map(t=>/^[A-Za-z0-9_./:@=-]+$/u.test(t)?t:JSON.stringify(t)).join(" ")}function ZE(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}`,c=e.token_kind??"subcommand",l=e.retry_command?void 0:QE(r,o),d=Ku([...i,r,...s]),u=e.retry_command??(l?Ku([...i,l,...s]):void 0);return new h(`Unknown ${a} ${c} "${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 Nn from"node:fs";import it from"node:path";import{fileURLToPath as ev}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 tv="@unbrained/pm-cli";function nv(e){try{return JSON.parse(Nn.readFileSync(e,"utf8")).name===tv}catch{return!1}}function rv(e){let t=Nn.existsSync(e)&&Nn.statSync(e).isDirectory()?it.resolve(e):it.dirname(it.resolve(e));for(;;){let n=it.join(t,"package.json");if(Nn.existsSync(n)&&nv(n))return t;let r=it.dirname(t);if(r===t)return;t=r}}function st(e,t=[]){let n=ev(e),r=rv(n);return r||it.resolve(it.dirname(n),...t)}function ga(e,t=[]){try{let n=it.join(st(e,t),"package.json");if(!Nn.existsSync(n))return;let r=JSON.parse(Nn.readFileSync(n,"utf8"));return typeof r.version=="string"&&r.version.trim().length>0?r.version:void 0}catch{return}}function ov(e=process.env,t="PM_CLI_PACKAGE_ROOT",n,r=[]){let o=e[t];return typeof o=="string"&&o.trim().length>0?it.resolve(o.trim()):n?st(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]="8b39bc01-0325-5dc6-8492-585c98608076")}catch{}})();var Dn=["Epic","Feature","Task","Chore","Issue","Decision","Event","Reminder","Milestone","Meeting","Plan"],Yu=Dn,Ln=["draft","open","in_progress","blocked","closed","canceled"],Vo=["draft","active","blocked","terminal","terminal_done","terminal_canceled","default_open","default_close","default_cancel"],Pn=["string","number","boolean","string_array","array","object"],Go=["create","update","update_many","list","search","calendar","context"],Bo=["allow","warn","reject"],O1=["blocks","parent","child","parent_child","child_of","related","related_to","discovered_from","blocked_by","incident_from","epic","implements","supersedes","task","verifies"],I1=["project","global"],R1=["low","medium","high","critical"],Ho=["low","medium","high","critical"],Wo=["low","medium","high"];var Xu=["minimal","default","strict","custom"],N1=["none","warn","strict"],D1=["progressive","strict"],L1=["off","warn","strict"],P1=["off","warn","strict"];var Ko=["daily","weekly","monthly","yearly"],hr=["mon","tue","wed","thu","fri","sat","sun"];function _a(e){return hr.indexOf(e)}var Ju=["draft","research","review","approved","executing","paused","completed","superseded"],Yo=["pending","in_progress","completed","blocked","skipped","superseded"],Qu=["codex","claude-code","cursor","generic"],Zu=["related","blocks","blocked_by","depends_on","discovered_from","implements","verifies","supersedes"],M1=["brief","standard","deep","full"],F1=["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 lv 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 Tt(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function iv(e){let t=e.key.trim();if(t.length===0)return null;let n=Tt(e.aliases),r=e.description?.trim();return{key:t,values:Tt(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 sv=e=>e,tf=e=>{let t=e.trim().toLowerCase();return t==="create"||t==="update"?t:null};function av(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 cv(e,t){let n=new Map;for(let r of e??[]){let o=av(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 ef(e,t){return t?Tt(e):void 0}function ya(e){let t=e?.trim();return t&&t.length>0?t:void 0}function Xo(e,t={}){let n=t.resolvePolicyCommand??sv,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,c=Tt(e.aliases),l=(e.options??[]).map(u=>iv(u)).filter(u=>u!==null).sort((u,p)=>u.key.localeCompare(p.key)),d=cv(e.command_option_policies,n);return{name:r,description:ya(e.description),default_status:ya(e.default_status),folder:ya(e.folder),aliases:c.length>0?c:void 0,required_create_fields:ef(e.required_create_fields,o),required_create_repeatables:ef(e.required_create_repeatables,i),options:s?l:void 0,command_option_policies:a?d:void 0}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="88b2ed4e-b5fd-5014-abf1-c163db033abf")}catch{}})();var dv=["title","description","status","priority","tags","body","deadline","estimatedMinutes","acceptanceCriteria","author","message","assignee"],uv=["dep","comment","note","learning","file","test","doc"],ba=["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"],fv=["title","description","type","status","priority","tags","body",...ba,"author","message","dep","comment","note","learning","file","test","doc","reminder","event","typeOption","field"],pv=["title","description","body","status","closeReason","priority","type","tags",...ba,"author","message","comment","note","learning","file","test","doc","reminder","event","typeOption","field","ownershipMetadataBypass","ownershipDependencyBypass","force"],rf={"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"},mv={...rf},gv={...rf},of=[["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"]],sf=[["comment","--comment"],["note","--note"],["learning","--learning"],["file","--file"],["test","--test"],["doc","--doc"],["reminder","--reminder"],["event","--event"],["typeOption","--type-option"]];function af(e){return Object.fromEntries(e)}var _v=af([["title","--title"],["description","--description"],["type","--type"],["status","--status"],["priority","--priority"],["tags","--tags"],["body","--body"],...of,["author","--author"],["message","--message"],["dep","--dep"],...sf]),yv=af([["title","--title"],["description","--description"],["body","--body"],["status","--status"],["closeReason","--close-reason"],["priority","--priority"],["type","--type"],["tags","--tags"],...of,...sf,["author","--author"],["message","--message"],["force","--force"]]);function hv(e){return e.trim().replace(/^--+/,"").toLowerCase()}function bv(e){return e==="create"?fv:pv}function wv(e){return e==="create"?mv:gv}function wa(e,t){let n=hv(t);if(n.length===0)return;let r=wv(e)[n];return r||bv(e).find(o=>o.toLowerCase()===n)}function Ev(e,t){return(e==="create"?_v:yv)[t]??`--${t.replace(/([A-Z])/g,"-$1").toLowerCase()}`}function wr(e){let t=vv(e);return t.length===0?"items":t.endsWith("s")?t:`${t}s`}function Jo(e){let t=e.trim(),r=t.replaceAll("\\","/").replace(/^\/+/,""),o=lv.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 vv(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 Tv(e){return Xo(e,{resolvePolicyCommand:tf})}function br(e,t){let n=e[t];return Array.isArray(n)?n.filter(r=>typeof r=="string"):void 0}function Av(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:br(t,"values")??[],required:t.required===void 0?void 0:!!t.required,aliases:br(t,"aliases"),description:typeof t.description=="string"?t.description:void 0}}function Sv(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 kv(e){if(Array.isArray(e.options))return e.options.map(t=>Av(t)).filter(t=>t!==null)}function xv(e){if(Array.isArray(e.command_option_policies))return e.command_option_policies.map(t=>Sv(t)).filter(t=>t!==null)}function Cv(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:br(t,"aliases"),required_create_fields:br(t,"required_create_fields"),required_create_repeatables:br(t,"required_create_repeatables"),options:kv(t),command_option_policies:xv(t)}}function Ov(e,t){return e.required_create_fields?Tt(e.required_create_fields):t?.required_create_fields??[]}function Iv(e,t){return e.required_create_repeatables?Tt(e.required_create_repeatables):t?.required_create_repeatables??[]}function Rv(e,t){return e.options?e.options:t?.options?[...t.options]:[]}function Nv(e,t){return e.command_option_policies?e.command_option_policies:t?.command_option_policies?[...t.command_option_policies]:[]}function Dv(e,t){let n=t?.name??e.name,r=e.description??t?.description,o=e.default_status??t?.default_status,i=Jo(e.folder??t?.folder??wr(n)),s={name:n,folder:i,aliases:Tt([...t?.aliases??[],...e.aliases??[]]),required_create_fields:Ov(e,t),required_create_repeatables:Iv(e,t),options:Rv(e,t),command_option_policies:Nv(e,t)};return r&&(s.description=r),o&&(s.default_status=o),s}function nf(e,t){for(let n of e){let r=Tv(n);if(!r)continue;let o=r.name.toLowerCase(),i=t.get(o);t.set(o,Dv(r,i))}}function Lv(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=Cv(o);i&&t.push(i)}}return t}function Er(e,t=null){let n=new Map;for(let c of Yu)n.set(c.toLowerCase(),{name:c,folder:fe[c],aliases:[],required_create_fields:[...dv],required_create_repeatables:[...uv],options:[],command_option_policies:[]});nf(e.item_types?.definitions??[],n),nf(Lv(t),n);let r=[...n.values()].sort((c,l)=>c.name.localeCompare(l.name)),o={},i={},s={};for(let c of r){o[c.name]=c,s[c.name]=c.folder,i[c.name.toLowerCase()]=c.name;for(let l of c.aliases)i[l.toLowerCase()]=c.name}let a=[...new Set(r.map(c=>c.folder))].sort((c,l)=>c.localeCompare(l));return{types:r.map(c=>c.name),folders:a,type_to_folder:s,by_type:o,alias_to_type:i}}function cf(e,t){if(e!==void 0)return t.alias_to_type[e.trim().toLowerCase()]}function lf(e,t){let n=cf(e,t);if(n)return t.by_type[n]}function Pv(e,t,n,r){for(let o of r){let i=wa(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 ha(e,t,n){if(n){e.add(t);return}e.delete(t)}function Mv(e,t,n,r){let o=wa(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&&ha(e.required,o,r.required),r.visible!==void 0&&ha(e.hidden,o,!r.visible),r.enabled!==void 0&&ha(e.disabled,o,!r.enabled)}function Fv(e,t,n){for(let r of t.command_option_policies)r.command===n&&Mv(e,t,n,r)}function $v(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 jv(e,t,n){let r=[],o=new Set,i=new Set,s=new Set,a={required:o,hidden:i,disabled:s,errors:r};return Pv(a,e,t,n),Fv(a,e,t),$v(a,e,t),{required:[...o],hidden:[...i].sort((c,l)=>c.localeCompare(l)),disabled:[...s].sort((c,l)=>c.localeCompare(l)),errors:r}}function Uv(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 zv(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 qv(e,t,n){let r=lf(e,n);if(!r)return{normalized:void 0,errors:[`Unknown type "${e}"`]};let o=[],i=Uv(r),s={};for(let[c,l]of Object.entries(t??{})){let d=c.trim(),u=l.trim();if(d.length===0){o.push("type option keys must not be empty");continue}if(u.length===0){o.push(`type option "${d}" must not be empty`);continue}let 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=zv(p,u,o);f!==void 0&&(s[p.key]=f)}for(let c of r.options)c.required&&!(c.key in s)&&o.push(`Missing required type option "${c.key}" for type "${r.name}"`);let a=Object.keys(s).sort((c,l)=>c.localeCompare(l));return a.length===0?{normalized:void 0,errors:o}:{normalized:Object.fromEntries(a.map(c=>[c,s[c]])),errors:o}}import{readFileSync as Vv,readdirSync as Gv,statSync as Bv}from"node:fs";import Hv 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 Wv={json_markdown:".md",toon:".toon"},Kv={".md":"json_markdown",".toon":"toon"},Yv=new Set([".git","coverage","dist","node_modules"]),Qo=[".md",".toon"];function vr(e){try{return Bv(e),!0}catch{return!1}}function df(e){try{let t=JSON.parse(Vv(e,"utf8"));return typeof t!="object"||t===null||Array.isArray(t)?!1:"id_prefix"in t||"item_format"in t}catch{return!1}}function Xv(e){let t=I.resolve(e);for(;;){let n=I.join(t,$o),r=I.join(n,jo);if(vr(r))return n;let o=I.join(t,jo);if(vr(o)&&df(o))return t;let i=I.dirname(t);if(i===t)return;t=i}}function uf(e){return Xv(e)??I.resolve(e,$o)}function Q1(e,t){let n=t?I.resolve(t):void 0;try{return Gv(I.resolve(e),{withFileTypes:!0}).filter(r=>r.isDirectory()&&!Yv.has(r.name)).map(r=>I.join(I.resolve(e),r.name)).filter(r=>r!==n).filter(r=>vr(Ae(r))).filter(r=>df(Ae(r))).sort((r,o)=>r.localeCompare(o))[0]}catch{return}}function Tr(e,t){let n=process.env.PM_PATH,r=t?.trim()||n?.trim();if(r){let o=I.resolve(e,r);if(!vr(Ae(o))){let i=I.join(o,$o);if(vr(Ae(i)))return i}return o}return uf(e)}function Z1(e){let t=I.resolve(e),n=I.dirname(t);return I.basename(t)==="pm"&&I.basename(n)===".agents"?I.dirname(n):t}function At(e){let t=process.env.PM_GLOBAL_PATH?.trim(),n=t&&t.length>0?t:I.join(Hv.homedir(),".pm-cli");return I.resolve(e,n)}function Ae(e){return I.join(e,jo)}function Jv(e,t,n=fe){let r=n[t]??wr(t);return I.join(e,r)}function Mn(e,t,n,r="toon",o=fe){return I.join(Jv(e,t,o),`${n}${Wv[r]}`)}function Ar(e){let t=e.replaceAll("\\","/"),n=I.posix.extname(t).toLowerCase();return Kv[n]??null}function Fn(e,t){return I.join(e,"history",`${t}.jsonl`)}function ff(e,t){return I.join(e,"locks",`${t}.lock`)}function Ea(e){return I.join(e,"runtime")}function Zo(e){return I.join(Ea(e),"test-runs")}function Qv(e){return I.join(Zo(e),"runs")}function eU(e,t){return I.join(Qv(e),`${t}.json`)}function Zv(e){return I.join(Zo(e),"stdout")}function eT(e){return I.join(Zo(e),"stderr")}function tU(e,t){return I.join(Zv(e),`${t}.log`)}function nU(e,t){return I.join(eT(e),`${t}.log`)}function tT(e){return I.join(Zo(e),"results")}function rU(e,t){return I.join(tT(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 va=[{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 ni(e){return e.trim().toLowerCase().replaceAll("-","_")}function nT(e){if(e===void 0)return;let t=ni(e);if(!/^[a-z][a-z0-9_]*$/.test(t))throw new TypeError(`Invalid inverse relationship kind: ${e}`);return t}function Aa(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)Aa(n,t);return Object.freeze(e)}for(let n of Object.values(e))Aa(n,t);return Object.freeze(e)}function rT(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 oT(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 iT(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=ni(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 sT(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 aT(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=va){for(let n of t)this.register(n)}register(t){let n=iT(t);if(sT(t,n),aT(t,n),rT(t,n),oT(t,n),this.#e.has(n)||this.#n.has(n))throw new TypeError(`Relationship kind already registered: ${n}`);let r=nT(t.inverse),o=[...new Set((t.aliases??[]).map(ni))].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?Aa(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=ni(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 ka(){return new Sa}var Xt=ka();function aU(e){return Xt.require(e).kind}function cU(e){return Xt.resolve(e)?.kind}function lU(e,t=Xt){return t.resolve(e)?.ordering===!0}function cT(e,t,n,r=Xt){let o=Sr(e),i=Sr(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 ei(e,t){return e.source.localeCompare(t.source)||e.target.localeCompare(t.target)||e.kind.localeCompare(t.kind)}function lT(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=cT(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 ti(e,t,n){let r=e.get(t);r?r.push(n):e.set(t,[n])}function Sr(e){return typeof e=="string"?e.trim():""}function Ta(e,t){let n=Sr(e);return n&&t.has(n)?n:void 0}function dT(e,t,n){let r=[t],o=t;for(;o!==e;)o=n.get(o),r.push(o);return r.reverse()}var pf=class e{#e;#n;#o;#r;#s=new Map;#a=new Map;constructor(t,n,r=Xt){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}=lT(i,this.#n,r);o.set(a,s)}this.#r=Object.freeze([...o.values()].sort(ei));for(let i of this.#r)ti(this.#s,i.source,i),ti(this.#a,i.target,i),r.require(i.kind).direction==="undirected"&&(ti(this.#s,i.target,i),ti(this.#a,i.source,i))}static fromItems(t,n=Xt){let r=new Set(t.map(i=>Sr(i.id)).filter(Boolean)),o=[];for(let i of t){let s=Sr(i.id);if(!s)continue;let a=Ta(i.parent,r);a&&o.push({source:s,target:a,kind:"parent"});let c=Ta(i.blocked_by,r);c&&o.push({source:s,target:c,kind:"blocked_by"});for(let l of i.dependencies??[]){let d=Ta(l.id,r);d&&n.resolve(l.kind)&&o.push({source:s,target:d,kind:l.kind,createdAt:l.created_at,author:l.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],c=r[s],l=a===void 0?c:c===void 0||ei(a,c)<=0?a:c;o.at(-1)!==l&&o.push(l),a===l&&(i+=1),c===l&&(s+=1)}return Object.freeze(o)}nodes(){return this.#o}hasNode(t){return this.#n.has(t)}registry(){return this.#e}#i(t){if(!this.#n.has(t))throw new TypeError(`Relationship node not found: ${t}`)}#c(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.#c(i,r)).map(i=>({id:i.source===t?i.target:i.source,edge:i})).sort((i,s)=>i.id.localeCompare(s.id)||ei(i.edge,s.edge))}adjacency(t,n={}){this.#i(t),n.signal?.throwIfAborted();let r=n.kinds?new Set(n.kinds.map(c=>this.#e.require(c).kind)):void 0,o=this.#t(t,n.direction??"outgoing",r),i=n.limit??Number.POSITIVE_INFINITY,s=[...new Set(o.map(c=>c.id))],a=s.slice(0,i);return{value:a,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:a.length<s.length,nextCursor:a.at(-1)}}}neighborEdges(t,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]),c=[],l=[{id:t,depth:0}],d=0,u=0,p=!1;e:for(let f=0;f<l.length;f+=1){n.signal?.throwIfAborted();let y=l[f];d+=1;let g=this.#t(y.id,o,r);if(u+=g.length,y.depth>=s){g.some(b=>!a.has(b.id))&&(p=!0);continue}for(let b of g)if(!a.has(b.id)){if(c.length>=i){p=!0;break e}a.add(b.id),c.push(b.id),l.push({id:b.id,depth:y.depth+1})}}return{value:c,meta:{visitedNodes:d,inspectedEdges:u,truncated:p,nextCursor:c.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}],c=new Map,l=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(b=>!l.has(b.id))&&(p=!0);continue}for(let b of g)if(!l.has(b.id)){if(c.set(b.id,y.id),b.id===n)return{value:dT(t,n,c),meta:{visitedNodes:d,inspectedEdges:u,truncated:!1}};l.add(b.id),a.push({id:b.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(c=>this.#e.require(c).kind)):void 0,a=new Set;for(let c of o)for(let l of this.#s.get(c)??[])i.has(l.source)&&i.has(l.target)&&this.#c(l,s)&&a.add(l);return{value:{nodes:o,edges:[...a].sort(ei)},meta:r.meta}}};function dU(e,t,n=Xt){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 kr(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function St(e){return He.includes(e)}function mf(e){let t=e.trim().toLowerCase();return St(t)?t:null}function gf(e){return e.filter(t=>!St(t))}function xa(e){let t=e.trim().toLowerCase();return t.length===0?null:ia[t]??null}function _f(e){let t=kr([...e].map(i=>i.toLowerCase())),n=[],r=[];for(let i of t){let s=xa(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:kr(n),legacy_aliases:o}}function uT(e){let t=e.trim().toLowerCase();if(t.length===0)return null;let n=xa(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 He){let a=Ue(t,s,r);a!==null&&a<i&&(i=a,o=s)}return o}function yf(e,t,n){let r=He.join(","),o=uT(n)??"none";return`extension_capability_unknown:${e}:${t}:${n}:allowed=${r}:suggested=${o}`}function hf(e,t,n){let r=n.map(o=>`${o.alias}>${o.target}`).join(",");return`extension_capability_legacy_alias:${e}:${t}:aliases=${r}`}function fT(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,c=i.split(",").map(f=>f.trim()).filter(f=>f.length>0),l=xa(o),u=(s==="none"?void 0:s)??l??void 0;return{layer:a,name:r,capability:o,allowed_capabilities:c,capability_contract_version:No,suggested_capability:u,suggestion_source:u?l===u?"legacy_alias":"nearest_match":void 0,legacy_alias_target:l??void 0}}function pT(e){let t=/^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(e.trim());if(!t)return[];let[,n,r,o]=t,i=n,s=[...He],a=[];for(let c of o.split(",")){let[l,d]=c.split(">"),u=l?.trim(),p=d?.trim().toLowerCase();!u||!p||!St(p)||a.push({layer:i,name:r,capability:u,allowed_capabilities:s,capability_contract_version:No,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]="48fff41d-2667-50a1-bfbb-40908804babd")}catch{}})();function xr(){return{beforeCommand:[],beforeMutation:[],afterCommand:[],onWrite:[],onRead:[],onIndex:[]}}function Ca(){return{overrides:[],handlers:[]}}function Oa(){return{overrides:[]}}function Ia(){return{overrides:[]}}function Ra(){return{overrides:[]}}function Na(){return{overrides:[]}}function ri(){return{commands:[],flags:[],item_fields:[],item_types:[],relationship_kinds:[],migrations:[],profiles:[],importers:[],exporters:[],search_providers:[],vector_store_adapters:[],assurance_providers:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2f268c53-f096-5eed-9ddb-01fed4839ae5")}catch{}})();function B(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function mT(){return{json:!1,quiet:!1,noExtensions:!1,profile:!1}}function Se(e){return e?R(e):{}}function ke(e){return e?R(e):mT()}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]="f7c79f37-1cae-59c9-b500-eb87d0089f94")}catch{}})();var gT=new Set(["commands","command_overrides","command_handlers","flag_commands","parser_overrides"]),_T=["commands","command_overrides","command_handlers","hooks","flag_commands","item_types","item_fields","relationship_kinds","migrations","profiles","importers","exporters","search_providers","vector_store_adapters","assurance_providers","parser_overrides","service_overrides","renderer_overrides"];function yT(e,t){for(let n of _T){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=>gT.has(n)?B(i):i.trim()).filter(i=>i.length>0);t[n]=[...new Set(o)].sort((i,s)=>i.localeCompare(s))}return!0}function hT(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=>B(o)))].sort((o,i)=>o.localeCompare(i)),result_discriminator:r.result_discriminator})}return t.sort((n,r)=>n.format.localeCompare(r.format))}function bT(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=>B(o)))].filter(o=>o.length>0).sort((o,i)=>o.localeCompare(i))})}return t}function Da(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(!yT(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=hT(o);if(s===null)return null;n.renderer_ownership=s}let i=t.preflight_ownership;if(i!==void 0){let s=bT(i);if(s===null)return null;n.preflight_ownership=s}return n}function bU(e){return{schema_version:1,commands:e.commands,command_overrides:e.command_overrides,command_handlers:e.command_handlers,hooks:e.hooks,flag_commands:e.flag_commands,item_types:e.item_types,item_fields:e.item_fields,...e.relationship_kinds?{relationship_kinds:e.relationship_kinds}:{},migrations:e.migrations,profiles:e.profiles,importers:e.importers,exporters:e.exporters,search_providers:e.search_providers,vector_store_adapters:e.vector_store_adapters,...e.assurance_providers?{assurance_providers:e.assurance_providers}:{},parser_overrides:e.parser_overrides,service_overrides:e.service_overrides,renderer_overrides:e.renderer_overrides,...e.renderer_ownership?{renderer_ownership:e.renderer_ownership}:{},preflight_overrides:e.preflight_overrides,...e.preflight_ownership?{preflight_ownership:e.preflight_ownership}:{}}}import wT 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 ET(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 vT(e){let t=Object.keys(e).sort(),n={};for(let r of t){let o=e[r];o!==void 0&&(n[r]=oi(o))}return n}function oi(e){let t=ET(e);if(t!==void 0)return t;if(Array.isArray(e))return e.map(r=>oi(r));if(e instanceof Date)return e.toISOString();let n=e;if(typeof n.toJSON=="function"){let r=n.toJSON();if(r!==e)return oi(r)}return vT(e)}function ne(e){return JSON.stringify(oi(e))}function bf(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 TT(e,t){if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.toString()===t.toString()}function AT(e,t){if(e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime()}function ST(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(!bf(o,n,r,se))return!1;return!0}function kT(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(!bf([o,i],n,r,([a,c],[l,d])=>se(a,l)&&se(c,d)))return!1;return!0}function xT(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)=>se(n,t[r]))}function CT(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]||!se(e[i],t[i]))return!1}return!0}var OT=[TT,AT,ST,kT,xT];function se(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 OT){let r=n(e,t);if(r!==void 0)return r}return CT(e,t)}function Jt(e){return wT.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 IT=5e3;async function Cr(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 wf(e,t){return Cr(e.beforeCommand,"beforeCommand",t)}function RT(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 h(`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 h(`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 h(s||`Extension mutation guard ${t.name} denied ${n}.`,_.CONFLICT,{code:o,reason:`${t.layer}:${t.name}`,nextSteps:[i]})}async function La(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 h(`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."]}))},IT),o.unref?.()})])}catch(i){throw i instanceof h?i:new h(`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)}RT(r,n,t.operation)}}async function Ef(e,t){return Cr(e.afterCommand,"afterCommand",t)}async function Pa(e,t){return Cr(e.onWrite,"onWrite",t)}async function Ma(e,t){return Cr(e.onRead,"onRead",t)}async function Fa(e,t){return Cr(e.onIndex,"onIndex",t)}function NT(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 ii(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 DT(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 $a(e,t){let n=B(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",DT(o)],["errorCode",ii(o,"code")],["remediation",ii(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:NT(o),...Object.fromEntries([["errorCode",ii(o,"code")],["remediation",ii(o,"remediation")]].filter(s=>s[1]!==void 0))}}}async function ja(e,t){let n=B(t.command);if(n.length===0)return{overridden:!1,context:{command:n,args:R(t.args),options:Se(t.options),global:ke(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:Se(t.options),global:ke(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:Se(t.options),global:ke(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?Se(o.options):Se(t.options),a=o.global?ke(o.global):ke(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:Se(t.options),global:ke(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 Ua(e,t){let n={command:B(t.command),args:R(t.args),options:Se(t.options),global:ke(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:Se(n.options),global:ke(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?Se(i.options):n.options,global:i.global?ke(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 vf(e){return{handled:!1,result:e.payload,warnings:[]}}function Tf(e,t){return[...e.overrides].reverse().filter(n=>n.service===t)}function Af(e){return{service:e.service,command:e.command?B(e.command):void 0,args:e.args?R(e.args):void 0,options:e.options?Se(e.options):void 0,global:e.global?ke(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 LT(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 Sf(e,t){return LT(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 kf(e,t,n){return t.service==="output_format"&&typeof e=="object"&&e!==null&&se(e,n.payload)}function za(e,t){let n=Tf(e,t.service);if(n.length===0)return vf(t);let r=[];for(let o of n)try{let i=Af(t),s=o.run(i);if(s instanceof Promise){r.push(`extension_service_override_async_unsupported:${o.layer}:${o.name}:${o.service}`);continue}if(kf(s,t,i)){r.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Sf(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 qa(e,t){let n=Tf(e,t.service);if(n.length===0)return vf(t);let r=[];for(let o of n)try{let i=Af(t),s=await Promise.resolve(o.run(i));if(kf(s,t,i)){r.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Sf(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 Va(e,t){let n=B(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=Se(t.options),i=ke(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 PT(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 Ga(e,t){let n=typeof t.command=="string"?B(t.command):"",r=[...e.overrides].reverse().find(o=>o.format===t.format&&PT(o,n,t.result));if(!r)return{overridden:!1,rendered:null,warnings:[]};try{let o=Array.isArray(t.args)?R(t.args):[],i=Se(t.options),s=ke(t.global),a=typeof t.pm_root=="string"?t.pm_root:"",c=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 c==null?{overridden:!1,rendered:null,warnings:[]}:typeof c!="string"?{overridden:!1,rendered:null,warnings:[`extension_renderer_invalid_result:${r.layer}:${r.name}:${r.format}`]}:{overridden:!0,rendered:c,warnings:[]}}catch{return{overridden:!1,rendered:null,warnings:[`extension_renderer_failed:${r.layer}:${r.name}:${r.format}`]}}}import nn from"node:fs/promises";import tn from"node:path";import{pathToFileURL as nA}from"node:url";import xf 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 Ba(e,t){let n=xf.relative(e,t);return n.length===0?!0:!n.startsWith("..")&&!xf.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 si=Pn;function ai(e){let t=e.trim().toLowerCase();return si.includes(t)?t:null}function Cf(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 si)if(Ue(t,r,n)!==null)return r;return null}import MT from"node:fs/promises";import Or 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 Of(e,t){let n=Or.dirname(t.manifest_path),r=Or.relative(n,t.entry_path);if(r.startsWith("..")||Or.isAbsolute(r))throw new Error(`Cannot snapshot extension entry outside its package directory: ${t.entry_path}`);let o=Or.join(e,`${t.layer}-${t.directory.replace(/[^a-zA-Z0-9._-]/gu,"_")}`);return await MT.cp(n,o,{recursive:!0,force:!0}),Or.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 If(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 Rf(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 B(r)}))];return{run:t,...n.length>0?{commands:n}:{}}}function Nf(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 pe(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return t}function ae(e,t){if(t!==void 0&&typeof t!="boolean")throw new TypeError(`${e} must be a boolean when provided`)}function ee(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 Df(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 Qt(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 Ir(e,t){if(Qt(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 Lf(e){ee("registerCommand definition.action",e.action),ee("registerCommand definition.description",e.description),ee("registerCommand definition.intent",e.intent),ee("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]="08ee7e43-8811-57ed-8bfe-0345ee5d3308")}catch{}})();var Ha=Object.freeze([{flag:"--json"},{flag:"--lean"},{flag:"--token-accounting"},{flag:"--output-include",value_name:"fields"},{flag:"--output-limit",value_name:"count"},{flag:"--output-budget",value_name:"tokens"},{flag:"--output-format",value_name:"toon|json"},{flag:"--output-session",value_name:"state"},{flag:"--output-cursor",value_name:"cursor"},{flag:"--output-row-contract"},{flag:"--quiet"},{flag:"--no-changed-fields"},{flag:"--full-changed-fields"},{flag:"--id-only"},{flag:"--pm-path",aliases:["--path"]},{flag:"--no-extensions"},{flag:"--no-pager"},{flag:"--profile"},{flag:"--help"},{flag:"--author",value_name:"id"}]),Wa=new Set(Ha.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 FT=/^--[a-z0-9][a-z0-9_-]*(?:[ =](?:<[^<>]+>|\[[^[\]]+\]))?$/;function $T(e){if(typeof e!="string")return null;let t=e.trim(),n=t.split(/[ =]/,1)[0];return Wa.has(n)?"host_owned_flag_collision":FT.test(t)?null:"malformed_long_flag"}function Pf(e,t){let n=[e,t].find(i=>typeof i=="string"&&Wa.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=$T(r);return o===null?null:{token:r,failure:o}}function Mf(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 Rr(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 Ka(e,t){let n=Rr(e),r=Rr(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 $f(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(!Rr(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=Ka(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 jf(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())||!Rr(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=Ka(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 Ne(e){return typeof e!="string"?"":e.trim().toLowerCase()}function F(e){return new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))}function jT(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 $n(e){return new Set((e??[]).map(t=>jT(t)).filter(t=>t.length>0))}function Uf(e){let t=Ne(e);return Do.includes(t)?t:"off"}function zf(e){let t=Ne(e);return Lo.includes(t)?t:"off"}function Nr(e){let t=Ne(e);return Po.includes(t)?t:"none"}function Ya(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return Lu.includes(t)?t:void 0}function qf(e){if(typeof e=="string"){let t=Ya(e)??"block";return{global:t,project:t}}return typeof e=="object"&&e!==null&&!Array.isArray(e)?{global:Ya(e.global)??"block",project:Ya(e.project)??"block"}:{global:"block",project:"block"}}function UT(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 zT(e){let t=Ne(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?Nr(e.sandbox_profile):void 0,allowedCapabilities:F(e.allowed_capabilities),blockedCapabilities:F(e.blocked_capabilities),allowedSurfaces:$n(e.allowed_surfaces),blockedSurfaces:$n(e.blocked_surfaces),allowedCommands:F(e.allowed_commands),blockedCommands:F(e.blocked_commands),allowedActions:F(e.allowed_actions),blockedActions:F(e.blocked_actions),allowedServices:F(e.allowed_services),blockedServices:F(e.blocked_services)}}}function Vf(e){let t=new Map;for(let n of e??[]){let r=zT(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]))St(o)||t.push(`extension_policy_unknown_capability:${o}`);for(let o of n)for(let i of q([...o.allowedCapabilities,...o.blockedCapabilities]))St(i)||t.push(`extension_policy_unknown_capability:${o.name}:${i}`);let r=new Set(Mo);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 Gf(e){let t=e.extensions?.policy??{},n=F(t.allowed_capabilities),r=F(t.blocked_capabilities),o=$n(t.allowed_surfaces),i=$n(t.blocked_surfaces),s=Vf(t.extension_overrides);return{mode:Uf(t.mode),trustMode:zf(t.trust_mode),pmMaxVersionExceededMode:qf(t.pm_max_version_exceeded_mode),requireProvenance:t.require_provenance===!0,trustedExtensions:F(t.trusted_extensions),defaultSandboxProfile:Nr(t.default_sandbox_profile),allowedExtensions:F(t.allowed_extensions),blockedExtensions:F(t.blocked_extensions),allowedCapabilities:n,blockedCapabilities:r,allowedSurfaces:o,blockedSurfaces:i,allowedCommands:F(t.allowed_commands),blockedCommands:F(t.blocked_commands),allowedActions:F(t.allowed_actions),blockedActions:F(t.blocked_actions),allowedServices:F(t.allowed_services),blockedServices:F(t.blocked_services),overridesByName:s,warnings:qT({allowedCapabilities:n,blockedCapabilities:r,allowedSurfaces:o,blockedSurfaces:i,overridesByName:s})}}function Bf(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:UT(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 Hf(e){let t=Vf(e.extension_overrides);return{mode:Uf(e.mode),trustMode:zf(e.trust_mode),pmMaxVersionExceededMode:qf(e.pm_max_version_exceeded_mode),requireProvenance:e.require_provenance===!0,trustedExtensions:F(e.trusted_extensions),defaultSandboxProfile:Nr(e.default_sandbox_profile),allowedExtensions:F(e.allowed_extensions),blockedExtensions:F(e.blocked_extensions),allowedCapabilities:F(e.allowed_capabilities),blockedCapabilities:F(e.blocked_capabilities),allowedSurfaces:$n(e.allowed_surfaces),blockedSurfaces:$n(e.blocked_surfaces),allowedCommands:F(e.allowed_commands),blockedCommands:F(e.blocked_commands),allowedActions:F(e.allowed_actions),blockedActions:F(e.blocked_actions),allowedServices:F(e.allowed_services),blockedServices:F(e.blocked_services),overridesByName:t,warnings:[]}}function kt(e,t){return e.overridesByName.get(Ne(t))??null}function jn(e,t,n,r,o){return t.has(n)?o:e.size>0&&!e.has(n)?r:null}function Wf(e,t,n){let r=n.trim().toLowerCase(),o=kt(e,t.name),i=o&&o.allowedCapabilities.size>0?o.allowedCapabilities:e.allowedCapabilities,s=new Set([...e.blockedCapabilities,...o?o.blockedCapabilities:[]]);return jn(i,s,r,"capability_not_allowlisted","capability_blocked")}function VT(e,t,n){let r=kt(e,t.name),o=r&&r.allowedSurfaces.size>0?r.allowedSurfaces:e.allowedSurfaces,i=new Set([...e.blockedSurfaces,...r?r.blockedSurfaces:[]]);return jn(o,i,n,"surface_not_allowlisted","surface_blocked")}function GT(e,t,n){let r=B(n);if(r.length===0)return null;let o=kt(e,t.name),i=o&&o.allowedCommands.size>0?o.allowedCommands:e.allowedCommands,s=new Set([...e.blockedCommands,...o?o.blockedCommands:[]]);return jn(i,s,r,"command_not_allowlisted","command_blocked")}function BT(e,t,n){let r=Ne(n).replace(/\s+/g,"-");if(r.length===0)return null;let o=kt(e,t.name),i=o&&o.allowedActions.size>0?o.allowedActions:e.allowedActions,s=new Set([...e.blockedActions,...o?o.blockedActions:[]]);return jn(i,s,r,"action_not_allowlisted","action_blocked")}function HT(e,t,n){let r=Ne(n);if(r.length===0)return null;let o=kt(e,t.name),i=o&&o.allowedServices.size>0?o.allowedServices:e.allowedServices,s=new Set([...e.blockedServices,...o?o.blockedServices:[]]);return jn(i,s,r,"service_not_allowlisted","service_blocked")}function WT(e,t){let n=Ne(t.name);return kt(e,t.name)?.disabled===!0?"extension_override_disabled":jn(e.allowedExtensions,e.blockedExtensions,n,"extension_not_allowlisted","extension_blocked")}function KT(e,t){if(e.trustMode==="off")return null;let n=kt(e,t.name),r=Ne(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 YT(e,t){if(e.mode==="off")return null;let r=kt(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 ci(e,t,n,r,o={}){let i=Object.entries(o).sort((a,c)=>a[0].localeCompare(c[0])).map(([a,c])=>`${a}=${c}`).join(":"),s=i.length>0?`:${i}`:"";return`extension_policy_${e}_${t}:${n.layer}:${n.name}:reason=${r}${s}`}function Kf(e,t){if(e.mode==="off"&&e.trustMode==="off")return{allowed:!0,warning:null};let n=[],r=WT(e,t);r&&n.push({reason:r,scope:"extension",mode:e.mode});let o=KT(e,t);o&&n.push({reason:o,scope:"trust",mode:e.trustMode});let i=YT(e,t);i&&n.push({reason:i,scope:"extension",mode:e.mode});let s=n.find(c=>c.mode==="enforce");if(s)return{allowed:!1,warning:ci("blocked",s.scope,t,s.reason)};let a=n.find(c=>c.mode==="warn");return a?{allowed:!0,warning:ci("violation",a.scope,t,a.reason)}:{allowed:!0,warning:null}}function Yf(e,t,n){if(e.mode==="off")return{allowed:!0,warning:null};let r=Wf(e,t,n);return r?{allowed:e.mode==="warn",warning:ci(e.mode==="warn"?"violation":"blocked","capability",t,r,{capability:n.trim().toLowerCase()})}:{allowed:!0,warning:null}}function XT(e,t,n,r,o){let i=typeof r=="string"?Wf(e,t,r):null,s=VT(e,t,n),a=o.command?GT(e,t,o.command):null,c=o.action?BT(e,t,o.action):null,l=o.service?HT(e,t,o.service):null;return i??s??a??c??l}function JT(e,t,n,r){let o={method:Ne(e).replace(/\s+/g,"_"),surface:t};return n&&(o.capability=n),r.command&&(o.command=B(r.command)),r.action&&(o.action=Ne(r.action).replace(/\s+/g,"-")),r.service&&(o.service=Ne(r.service)),o}function Xf(e,t,n,r,o,i){if(e.mode==="off")return{allowed:!0,warning:null};let s=i??{},a=XT(e,t,n,o,s);if(!a)return{allowed:!0,warning:null};let c=ci(e.mode==="warn"?"violation":"blocked","registration",t,a,JT(r,n,o,s));return{allowed:e.mode==="warn",warning:c}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7316b9ef-38e1-5ee0-9107-da15ec7804d4")}catch{}})();function Jf(e){return e==="toon"||e==="json"}function Qf(e){return xn.includes(e)}function Zt(e,t){if(typeof t!="function")throw new TypeError(`api.hooks.${e} requires a function handler`)}var Zf=Symbol("extension_registration_trace");function at(e,t){let n=new TypeError(e);return Object.defineProperty(n,Zf,{value:t,enumerable:!1,configurable:!1,writable:!1}),n}function ep(e){return e instanceof Error?e[Zf]:void 0}function Dr(e){if(e===null)return null;if(Array.isArray(e))return e.map(t=>Dr(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={};for(let r of Object.keys(t).sort((o,i)=>o.localeCompare(i)))n[r]=Dr(t[r]);return n}return e}function Lr(e){if(Array.isArray(e))return e.map(t=>Lr(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]=Lr(t[r]);return n}return e}function Un(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return Dr(t)}function Pr(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return Lr(t)}function li(e,t){if(!Array.isArray(t))throw new TypeError(`${e} requires an array of object definitions`);return t.map(n=>Un(e,n))}function he(e,t){if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return t.trim()}function Mr(e,t){if(typeof t!="function")throw new TypeError(`${e} requires a function handler`)}function Xa(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function Ja(e,t){return B(`${e} ${t}`)}function Fr(e,t){return Object.defineProperty(e,"runtime_definition",{value:t,enumerable:!1,writable:!1,configurable:!1}),e}var QT=new Set(["low","medium","high"]),ZT=new Set(["number","string_set"]),eA=new Set(["string","number","boolean"]);function tp(e,t){if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return t.trim()}function tA(e,t,n){let r=`registerAssuranceMeasurementProvider provider.keys.${t}`,o=pe(r,n);if(!ZT.has(String(o.value_type)))throw new TypeError(`${r}.value_type must be number or string_set`);if(ee(`${r}.description`,o.description),o.parameters===void 0)return;let i=pe(`${r}.parameters`,o.parameters);for(let[s,a]of Object.entries(i)){let c=`${r}.parameters.${s}`;tp(`${c}.name`,s);let l=pe(c,a);if(!eA.has(String(l.type)))throw new TypeError(`${c}.type must be string, number, or boolean`);ae(`${c}.required`,l.required),ee(`${c}.description`,l.description)}if(Object.keys(i).length>50)throw new TypeError(`assurance provider ${e} key ${t} exceeds 50 parameters`)}function np(e){let t=pe("registerAssuranceMeasurementProvider provider",e),n=tp("registerAssuranceMeasurementProvider provider.id",t.id);if(!/^[a-z0-9][a-z0-9-]*$/u.test(n))throw new TypeError("registerAssuranceMeasurementProvider provider.id must be a stable lowercase id");if(!QT.has(String(t.cost_class)))throw new TypeError("registerAssuranceMeasurementProvider provider.cost_class must be low, medium, or high");if(typeof t.network!="boolean")throw new TypeError("registerAssuranceMeasurementProvider provider.network must be boolean");let r=pe("registerAssuranceMeasurementProvider provider.keys",t.keys);if(Object.keys(r).length===0)throw new TypeError("registerAssuranceMeasurementProvider provider.keys requires at least one key");for(let[o,i]of Object.entries(r)){if(!/^[a-z0-9][a-z0-9-]*$/u.test(o))throw new TypeError(`registerAssuranceMeasurementProvider provider key ${o} must be a stable lowercase id`);tA(n,o,i)}if(t.timeout_ms!==void 0&&(typeof t.timeout_ms!="number"||!Number.isInteger(t.timeout_ms)||t.timeout_ms<1||t.timeout_ms>3e5))throw new TypeError("registerAssuranceMeasurementProvider provider.timeout_ms must be an integer from 1 through 300000");if(typeof t.resolve!="function")throw new TypeError("registerAssuranceMeasurementProvider provider.resolve requires a function handler")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8725b7dd-ec6f-5c71-897a-7a84ce93f5f0")}catch{}})();function rp(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]="2b8750c3-7b19-5240-8179-f83830af1b77")}catch{}})();var rA=100,op=null,oA=Object.freeze(Fo()),ip=0;function iA(e=Date.now()){return ip+=1,`${ip}-${e}`}function sp(e,t){let n=e[t];if(n!=null)return typeof n!="string"||n.trim().length===0?null:n.trim()}function sA(e){if(e==null)return;let t=In(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 Qa(e,t){let n=e[t];return typeof n!="string"||n.trim().length===0?null:n.trim()}function gp(e){if(e!=null)return typeof e!="number"||!Number.isInteger(e)?null:e}function en(e){if(e!=null)return typeof e!="boolean"?null:e}function aA(e){let t=gp(e.priority);return t===void 0?rA:t}function cA(e){let t=e.sandbox_profile;if(t==null)return;if(typeof t!="string")return null;let n=Nr(t);return n!==t.trim().toLowerCase()?null:n}function Za(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}function lA(e){if(e==null)return;let t=In(e);if(!t)return null;let n=Za(t.source),r=Za(t.signature),o=Za(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 dA(e){if(e==null)return;let t=In(e);if(!t)return null;let n=en(t.fs_read),r=en(t.fs_write),o=en(t.network),i=en(t.env_read),s=en(t.env_write),a=en(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 uA(e){if(e==null)return{capabilities:[],legacy_aliases:[]};if(!Array.isArray(e)||e.some(n=>typeof n!="string"))return null;let t=_f(e);return{capabilities:t.capabilities,legacy_aliases:t.legacy_aliases}}function fA(e){if(e==null)return;let t=In(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=>B(o)).filter(o=>o.length>0))].sort((o,i)=>o.localeCompare(i));return r.length>0?{commands:r}:void 0}function pA(e){let t=gp(e.manifest_version);if(t===null)return null;let n=sp(e,"pm_min_version");if(n===null)return null;let r=sp(e,"pm_max_version");if(r===null)return null;let o=sA(e.engines);if(o===null)return null;let i=en(e.trusted);if(i===null)return null;let s=cA(e);if(s===null)return null;let a=lA(e.provenance);if(a===null)return null;let c=dA(e.permissions);if(c===null)return null;let l=uA(e.capabilities);if(l===null)return null;let d=fA(e.activation);if(d===null)return null;let u=Da(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:c,capabilities:l.capabilities,legacy_capability_aliases:l.legacy_aliases,activation:d,contributions:u}}function mA(e){if(typeof e!="object"||e===null)return null;let t=e,n=Qa(t,"name");if(n===null)return null;let r=Qa(t,"version");if(r===null)return null;let o=Qa(t,"entry");if(o===null)return null;let i=aA(t);if(i===null)return null;let s=pA(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 gA(e,t,n){return n.has(e)?!1:t.size===0?!0:t.has(e)}async function _A(e,t){let[n,r]=await Promise.all([nn.realpath(e),nn.realpath(t)]);return Ba(n,r)}function _p(e,t=process.cwd()){return{global:tn.join(At(t),"extensions"),project:tn.join(e,"extensions")}}async function yA(e){try{return(await nn.readdir(e,{withFileTypes:!0})).filter(n=>n.isDirectory()).map(n=>n.name).sort((n,r)=>n.localeCompare(r))}catch{return[]}}function hA(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 ap(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}async function bA(e){let t=new Map;try{let n=JSON.parse(await nn.readFile(tn.join(e,".managed-extensions.json"),"utf8")),o=In(n)?.entries;if(!Array.isArray(o))return t;for(let i of o){if(typeof i!="object"||i===null)continue;let s=i,a=ap(s.source?.package),c=[s.source?.input,s.source?.name,a].map(u=>ap(u)).filter(u=>u!==void 0),l=Da(s.contributions),d={aliases:[...new Set(c)],...a?{package_name:a}:{},...l?{contributions:l}:{}};typeof s.directory=="string"&&s.directory.trim().length>0&&t.set(`directory:${s.directory.trim()}`,d),typeof s.name=="string"&&s.name.trim().length>0&&t.set(`name:${s.name.trim()}`,d)}}catch{return t}return t}function cp(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 wA(e,t){let n=[...cp(e),...cp(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 lp(e,t,n,r,o){let i=[],s=[],a=[],c=await yA(t),l=await bA(t);for(let d of c){let u=await TA(e,t,d,n,r,l,o);i.push(u.diagnostic),s.push(...u.warnings),u.candidate&&a.push(u.candidate)}return{diagnostics:i,warnings:s,candidates:a}}function EA(){return{diagnostics:[],warnings:[],candidates:[]}}function dp(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 vA(e,t,n,r,o,i){let s=[];Array.isArray(t.legacy_capability_aliases)&&t.legacy_capability_aliases.length>0&&s.push(hf(e,t.name,t.legacy_capability_aliases));for(let a of gf(t.capabilities))s.push(yf(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 TA(e,t,n,r,o,i,s){let a=tn.join(t,n),c=tn.join(a,"manifest.json");if(!await Y(c))return dp(e,n,c,`extension_manifest_missing:${e}:${n}`);let l;try{let M=JSON.parse(await nn.readFile(c,"utf8"));l=mA(M)}catch{l=null}if(!l)return dp(e,n,c,`extension_manifest_invalid:${e}:${n}`);let d=tn.resolve(a,l.entry),u=Ba(a,d),p=u?await Y(d):!1,f=u&&p?await _A(a,d):u,y=gA(l.name,r,o),g=await SA(e,l),b=await kA(e,l,s),E=vA(e,l,f,p,g,b),O=f&&p&&g.allowed&&b.allowed,z=i.get(`directory:${n}`)??i.get(`name:${l.name}`);return{diagnostic:{layer:e,directory:n,manifest_path:c,name:l.name,version:l.version,entry:l.entry,priority:l.priority,entry_path:d,enabled:y,status:O?"ok":"warn"},warnings:E,candidate:rp({layer:e,directory:n,manifestPath:c,entryPath:d,manifest:l,sourceIdentity:z,extensionReady:O,enabledForLoad:y})}}async function yp(e){let t=_p(e.pmRoot,e.cwd??process.cwd()),n=kr(e.settings.extensions.enabled),r=kr(e.settings.extensions.disabled),o=Gf(e.settings),i=Bf(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),c=e.ignoreGlobalExtensions===!0?EA():await lp("global",t.global,s,a,o.pmMaxVersionExceededMode.global),l=await lp("project",t.project,s,a,o.pmMaxVersionExceededMode.project),d=[...o.warnings],u=wA(c.candidates,l.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=Kf(o,y);if(g.warning&&d.push(g.warning),!!g.allowed){for(let b of f.manifest.capabilities){let E=Yf(o,y,b);E.warning&&d.push(E.warning)}p.push(hA(f))}}return{disabled_by_flag:!1,roots:t,configured_enabled:n,configured_disabled:r,discovered:[...c.diagnostics,...l.diagnostics],effective:p,warnings:[...new Set([...c.warnings,...l.warnings,...d])],policy:i}}function di(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}async function AA(){try{let e=st(import.meta.url,["../../.."]),t=await nn.readFile(tn.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 hp(){return op??=AA(),op}function bp(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 SA(e,t){if(t.pm_min_version===void 0)return{allowed:!0};let n=$f(t.pm_min_version,await hp()),r=bp(e,t,n);return r?{allowed:n.allowed,warning:r}:{allowed:n.allowed}}async function kA(e,t,n){if(t.pm_max_version===void 0)return{allowed:!0};let r=jf(t.pm_max_version,await hp(),n),o=bp(e,t,r);return o?{allowed:r.allowed,warning:o}:{allowed:r.allowed}}async function up(e){try{let t=await nn.stat(e);return`${Math.trunc(t.mtimeMs)}-${t.size}`}catch{return"missing"}}async function xA(e,t){let n=e.entry_path;t.module_graph_snapshot_root&&(n=await Of(t.module_graph_snapshot_root,e));let r=new URL(nA(n).href);if(!(t.cache_bust===!0||typeof t.reload_token=="string"))return r.href;let[i,s]=await Promise.all([up(e.entry_path),up(e.manifest_path)]),a=t.reload_token??iA();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 CA(e){let t=await yp(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 c=await import(await xA(s,e));n.push({...s,module:c})}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:di(a)})}return{...t,warnings:o,loaded:n,failed:r}}var fp=5e3,OA=2147483647;function IA(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 wp(e){let t=$u(e);return t?IA(t):null}async function xz(e,t,n={}){let r=RA(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=wp(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 NA(u,r),{ok:!0}}catch(p){return{ok:!1,layer:d.layer,name:d.name,error:di(p)}}})),a=[],c=[],l=0;for(let d of s){if(d.ok){l+=1;continue}a.push(`extension_deactivate_failed:${d.layer}:${d.name}`),c.push({layer:d.layer,name:d.name,error:d.error})}return{deactivated:l,warnings:a,failed:c}}function RA(e){return typeof e!="number"||e<0?fp:e===0||e===1/0?0:Number.isFinite(e)?Math.min(OA,Math.max(1,Math.floor(e))):fp}async function NA(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)}}var DA=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","visible"]);function ec(e,t){return li(e,t).map(n=>(n.repeatable===!0&&(n.list=!0),n))}function LA(e){return e.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function pp(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=LA(t);if(n.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return n}function mp(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=pe(`registerCommand definition.arguments[${r}]`,o),s=he(`registerCommand definition.arguments[${r}].name`,i.name);if(ae(`registerCommand definition.arguments[${r}].required`,i.required),ae(`registerCommand definition.arguments[${r}].variadic`,i.variadic),ee(`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 tc(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=pe(`registerFlags flags[${t}]`,n),o=Object.keys(r).filter(c=>!DA.has(c)).sort((c,l)=>c.localeCompare(l));if(o.length>0)throw new TypeError(`registerFlags flags[${t}] contains unknown field(s): ${o.join(", ")}`);let i=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`);ee(`registerFlags flags[${t}].long`,i),ee(`registerFlags flags[${t}].short`,s);let a=Pf(i,s);if(a!==null)throw new TypeError(`registerFlags flags[${t}] ${Mf(a.token,a.failure)}`);if(ee(`registerFlags flags[${t}].value_name`,r.value_name),ee(`registerFlags flags[${t}].description`,r.description),ae(`registerFlags flags[${t}].required`,r.required),ae(`registerFlags flags[${t}].enabled`,r.enabled),ae(`registerFlags flags[${t}].visible`,r.visible),ae(`registerFlags flags[${t}].list`,r.list),ae(`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(Df(`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.`);PA(`registerFlags flags[${t}]`,r)}}function PA(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=pa(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?ma(t.default):[t.default];for(let[i,s]of o.entries())if(!Wu(s,r)){let a=o.length>1?`default[${i}]`:"default";throw new TypeError(`${e}.${a} (${JSON.stringify(s)}) is not coercible to ${r}.`)}}function MA(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=pe(`registerItemFields fields[${t}]`,n);he(`registerItemFields fields[${t}].name`,r.name);let o=he(`registerItemFields fields[${t}].type`,r.type);if(ai(o)===null){let i=Cf(o),s=i?` Did you mean "${i}"?`:"";throw new TypeError(`registerItemFields fields[${t}].type "${o}" is not a known field type (expected one of: ${si.join(", ")}).${s}`)}ae(`registerItemFields fields[${t}].optional`,r.optional)}}function FA(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=pe(i,o);he(`${i}.command`,s.command),he(`${i}.option`,s.option),ae(`${i}.enabled`,s.enabled),ae(`${i}.required`,s.required),ae(`${i}.visible`,s.visible)}}function $A(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=pe(i,o);he(`${i}.key`,s.key),Qt(`${i}.values`,s.values),ae(`${i}.required`,s.required),Qt(`${i}.aliases`,s.aliases)}}function jA(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=pe(r,n);he(`${r}.name`,o.name),ee(`${r}.folder`,o.folder),Qt(`${r}.aliases`,o.aliases),Qt(`${r}.required_create_fields`,o.required_create_fields),Qt(`${r}.required_create_repeatables`,o.required_create_repeatables),FA(t,o.command_option_policies),$A(t,o.options)}}function UA(e){let t=pe("registerMigration definition",e);if(t.id!==void 0&&typeof t.id!="string")throw new TypeError("registerMigration definition.id must be a string when provided");if(t.description!==void 0&&typeof t.description!="string")throw new TypeError("registerMigration definition.description must be a string when provided");if(t.status!==void 0&&typeof t.status!="string")throw new TypeError("registerMigration definition.status must be a string when provided");if(ae("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 Ep=["types","statuses","fields","workflows","config","templates","packages"],zA={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 qA(e){let t=pe("registerProfile profile",e);if(he("registerProfile profile.name",t.name),he("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 Ep){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`);zA[n]?.(`registerProfile profile.${n}[${o}]`,i)}}}}function VA(e){e.summary===void 0&&(e.summary="");for(let t of Ep)e[t]===void 0&&(e[t]=[]);return e}function GA(e){if(!Array.isArray(e.capabilities))return null;let t=new Set;for(let n of e.capabilities){let r=n.trim().toLowerCase();St(r)&&t.add(r)}return t}function H(e,t,n){let r=GA(e);if(r!==null&&!r.has(t))throw at(`${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 BA(e){return Object.freeze({name:e.name,layer:e.layer,version:e.version,capabilities:Object.freeze((e.capabilities??[]).filter(t=>He.includes(t))),pm_min_version:e.pm_min_version,pm_max_version:e.pm_max_version,source_package:e.source_package})}function HA(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 nc=class{extension;hooks;#e;#n;#o;#r;#s;#a;#i;#c;#t;#l;#d;#u;constructor(t,n,r,o,i,s,a,c,l,d,u){this.#e=t,this.extension=BA(t),this.#n=HA(t),this.#o=n,this.#r=r,this.#s=o,this.#a=i,this.#i=s,this.#c=a,this.#t=c,this.#l=l,this.#d=d,this.#u=u,this.registerCommand=this.registerCommand.bind(this),this.registerParser=this.registerParser.bind(this),this.registerPreflight=this.registerPreflight.bind(this),this.registerService=this.registerService.bind(this),this.registerFlags=this.registerFlags.bind(this),this.registerItemFields=this.registerItemFields.bind(this),this.registerItemTypes=this.registerItemTypes.bind(this),this.registerRelationshipKinds=this.registerRelationshipKinds.bind(this),this.registerMigration=this.registerMigration.bind(this),this.registerProfile=this.registerProfile.bind(this),this.registerRenderer=this.registerRenderer.bind(this),this.registerImporter=this.registerImporter.bind(this),this.registerExporter=this.registerExporter.bind(this),this.registerSearchProvider=this.registerSearchProvider.bind(this),this.registerVectorStoreAdapter=this.registerVectorStoreAdapter.bind(this),this.registerAssuranceMeasurementProvider=this.registerAssuranceMeasurementProvider.bind(this),this.hooks={beforeCommand: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=Xf(this.#u,this.#n,t,n,r,o);return i.warning&&this.#l.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:Dr(o),hint:i}}registerCommandOverride(t,n){let r=B(t);if(r.length===0)throw at("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 at(`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.#l.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 at("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 at("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=B(t.name);if(n.length===0)throw at("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 at(`registerCommand requires a command definition run handler (command="${n}", registration_index=${o.registration_index})`,o)}try{Lf(t);let o=pp(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=Ir("registerCommand definition.examples",t.examples),c=Ir("registerCommand definition.failure_hints",t.failure_hints),l=mp(t.arguments);t.flags!==void 0&&(H(this.#e,"schema","registerCommand flags"),this.allowRegistration("schema.flags","registerCommand flags","schema")&&(tc(t.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:n,flags:ec("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:c,arguments:l,tier:t.tier};i&&(d.description=i),s&&(d.intent=s),this.#t.commands.push(d)}catch(o){let i=di(o),s=this.registerCommandTrace("definition",n,"{ name: string; run: (context) => unknown; action?: string; arguments?: object[]; flags?: object[]; }",t,i),a=at(`registerCommand definition metadata invalid (command="${n}", registration_index=${s.registration_index}): ${i}`,s);this.#l.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=B(he("registerParser command",t));Mr("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=Rf(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(!Qf(r))throw new TypeError(`registerService service must be one of: ${xn.join(", ")}`);this.allowRegistration("services.override","registerService","services",{service:r})&&(Mr("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(!Jf(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 B(s)}))];this.#c.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=B(he("registerFlags targetCommand",t));tc(n);let o=ec("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;MA(t);let n=li("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;jA(t);let n=li("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=ka();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;UA(t);let n=Pr("registerMigration definition",t);this.#t.migrations.push(Fr({layer:this.#e.layer,name:this.#e.name,definition:Un("registerMigration definition",t)},n))}registerProfile(t){if(H(this.#e,"schema","registerProfile"),!this.allowRegistration("schema.profiles","registerProfile","schema"))return;let n=Lr(t);qA(n),this.#t.profiles.push({layer:this.#e.layer,name:this.#e.name,profile:VA(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};ee(`${t} options.action`,s.action),ee(`${t} options.description`,s.description),ee(`${t} options.intent`,s.intent);let a=pp(n,s.action),c=Ir(`${t} options.examples`,s.examples),l=Ir(`${t} options.failure_hints`,s.failure_hints),d=mp(s.arguments);s.flags!==void 0&&(H(this.#e,"schema",`${t} options.flags`),this.allowRegistration("schema.flags",`${t} options.flags`,"schema")&&(tc(s.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:n,flags:ec(`${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:c,failure_hints:l,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=Xa(he("registerImporter name",t));Mr("registerImporter importer",n);let i=Ja(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=Xa(he("registerExporter name",t));Mr("registerExporter exporter",n);let i=Ja(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=Pr("registerSearchProvider provider",t);this.#t.search_providers.push(Fr({layer:this.#e.layer,name:this.#e.name,definition:Un("registerSearchProvider provider",t)},n))}registerVectorStoreAdapter(t){if(H(this.#e,"search","registerVectorStoreAdapter"),!this.allowRegistration("search.vectorstore","registerVectorStoreAdapter","search"))return;let n=Pr("registerVectorStoreAdapter adapter",t);this.#t.vector_store_adapters.push(Fr({layer:this.#e.layer,name:this.#e.name,definition:Un("registerVectorStoreAdapter adapter",t)},n))}registerAssuranceMeasurementProvider(t){if(H(this.#e,"services","registerAssuranceMeasurementProvider"),!this.allowRegistration("services.assuranceprovider","registerAssuranceMeasurementProvider","services"))return;if(np(t),t.network&&this.#e.permissions?.network!==!0)throw new TypeError("registerAssuranceMeasurementProvider network provider requires permissions.network=true");let n=Pr("registerAssuranceMeasurementProvider provider",t);this.#t.assurance_providers.push(Fr({layer:this.#e.layer,name:this.#e.name,network_permission:this.#e.permissions?.network===!0,definition:Un("registerAssuranceMeasurementProvider provider",t)},n))}registerBeforeCommand(t){H(this.#e,"hooks","api.hooks.beforeCommand"),this.allowRegistration("hooks.beforecommand","api.hooks.beforeCommand","hooks")&&(Zt("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")&&(Zt("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")&&(Zt("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")&&(Zt("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")&&(Zt("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")&&(Zt("onIndex",t),this.#o.onIndex.push({layer:this.#e.layer,name:this.#e.name,run:t}))}};function WA(e,t,n,r,o,i,s,a,c,l,d){return new nc(e,t,n,r,o,i,s,a,c,l,d)}function KA(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,...(e.assurance_providers?.length??0)>0?{assurance_providers:e.assurance_providers.length}:{}}}function YA(e){let t=[],n=(i,s)=>{let a=new Map;for(let c of i){let l=a.get(c.command)??[];l.push(c),a.set(c.command,l)}for(let c of[...a.keys()].sort((l,d)=>l.localeCompare(d))){let l=a.get(c);if(l.length<=1)continue;let d=l[l.length-1];for(let u of l.slice(0,-1))t.push(`${s}:${c}:${d.layer}:${d.name}:${u.layer}:${u.name}`)}};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(c=>c.command===i),a=e.overrides.filter(c=>c.command===i);for(let c of a)for(let l of s)t.push(`extension_command_override_handler_overlap:${i}:${c.layer}:${c.name}:${l.layer}:${l.name}`)}return t}function XA(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 JA(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 QA=new Set(["output_format"]);function ZA(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||QA.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 eS(e){let t=Hf(e.policy??oA),n=xr(),r=Ca(),o=Oa(),i=Ia(),s=Ra(),a=Na(),c=ri(),l=[],d=[];for(let f of e.loaded){let y=wp(f.module);if(!y)continue;let g=l.length,b=If({hooks:n,commands:r,parsers:o,preflight:i,services:s,renderers:a,registrations:c});try{await y.activate(WA(f,n,r,o,i,s,a,c,d,l,t)),l.length>g&&(b(),d.push(`extension_activation_rolled_back:${f.layer}:${f.name}`))}catch(E){b(),d.push(`extension_activate_failed:${f.layer}:${f.name}`);let O=ep(E);l.push({layer:f.layer,name:f.name,entry_path:f.entry_path,error:di(E),trace:O})}}let u=[...YA(r),...JA(o),...Nf(i),...ZA(s),...XA(a)],p=[...new Set([...d,...u])];return{hooks:n,commands:r,parsers:o,preflight:i,services:s,renderers:a,registrations:c,failed:l,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:KA(c)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bd9832a9-f6a2-5351-a929-0a0d2766df88")}catch{}})();function tS(e){return{...e,hooks:xr(),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 Pz(){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 vp(){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]="a35f3cdc-810e-59bd-8408-03ce792db57f")}catch{}})();var nS={commands:["registerCommand","command override","command handler"],renderers:["registerRenderer"],hooks:["hooks.beforeCommand","hooks.beforeMutation","hooks.afterCommand","hooks.onWrite","hooks.onRead","hooks.onIndex"],schema:["registerFlags","registerItemFields","registerItemTypes","registerRelationshipKinds","registerMigration","registerProfile"],importers:["registerImporter","registerExporter"],search:["registerSearchProvider","registerVectorStoreAdapter"],parser:["registerParser"],preflight:["registerPreflight"],services:["registerService","registerAssuranceMeasurementProvider"]},Tp=":";function Ap(e,t){return`${e}${Tp}${rc(t)}`}function rS(e){return e.slice(e.indexOf(Tp)+1)}function rc(e){return e.trim().toLowerCase()}function oS(e){if(!Array.isArray(e))return[];let t=new Set;for(let n of e){let r=mf(n);r!==null&&t.add(r)}return[...t].sort((n,r)=>n.localeCompare(r))}function Sp(e){let t=new Map,n=(d,u)=>{for(let p of d){let f=Ap(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:c,hooks:l}=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(r.assurance_providers??[],"services"),n(c.overrides,"renderers"),n(l.beforeCommand,"hooks"),n(l.beforeMutation,"hooks"),n(l.afterCommand,"hooks"),n(l.onWrite,"hooks"),n(l.onRead,"hooks"),n(l.onIndex,"hooks"),t}function iS(e,t={}){let n=Sp(e),r=new Set;t.extensionName!==void 0&&r.add(rc(t.extensionName));for(let i of t.extensionNames??[])r.add(rc(i));let o=new Set;for(let[i,s]of n)if(!(r.size>0&&!r.has(rS(i))))for(let a of s)o.add(a);return[...o].sort((i,s)=>i.localeCompare(s))}function sS(e,t){let n=Sp(t),r=[];for(let o of e){let i=oS(o.capabilities);if(i.length===0)continue;let s=n.get(Ap(o.layer,o.name))??new Set,a=[...s].sort((l,d)=>l.localeCompare(d)),c=i.filter(l=>!s.has(l));r.push({layer:o.layer,name:o.name,declared:i,used:a,unused:c})}return r}import{existsSync as aS}from"node:fs";import{AsyncLocalStorage as cS}from"node:async_hooks";import ct from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="38024e6c-c1ef-5c15-8421-ac18d317e330")}catch{}})();var xt=null,$r=null,fi=null,pi=null,jr=null,mi=null,gi=null,rn=null,_i,ui=[],xp=new cS;function U(){return xp.getStore()}function Vz(e){return xp.run({hooks:null,commands:null,parsers:null,preflight:null,services:null,renderers:null,registrations:null,commandContext:null,commandResult:void 0,affectedItems:[]},e)}var lS=new Set(["body","comments","dependencies","docs","events","files","learnings","notes","reminders","test_runs","tests"]);function kp(e){let t=ct.resolve(e);for(;;){if(aS(ct.join(t,".git")))return t;let n=ct.dirname(t);if(n===t)return;t=n}}function yi(e){let t=process.env.PM_SOURCE_WORKSPACE_ROOT?.trim()||process.cwd(),n=kp(t)??ct.resolve(t),r=kp(n);if(!e)return{source_workspace_root:n,...r?{repo_root:r}:{}};let o=ct.relative(n,ct.resolve(e)),i=o.length>0&&!o.startsWith(`..${ct.sep}`)&&o!==".."&&!ct.isAbsolute(o);return{source_workspace_root:n,...r?{repo_root:r}:{},...i?{pm_root_rel:o.split(ct.sep).join("/")}:{}}}function dS(e){let t=U();if(t){t.hooks=e;return}xt=e}function uS(e){let t=U();if(t){t.commands=e;return}$r=e}function fS(e){let t=U();if(t){t.parsers=e;return}fi=e}function pS(e){let t=U();if(t){t.preflight=e;return}pi=e}function mS(e){let t=U();if(t){t.services=e;return}jr=e}function gS(e){let t=U();if(t){t.renderers=e;return}mi=e}function _S(e){let t=U();if(t){t.registrations=e;return}gi=e}function Ct(){let e=U();return e?e.registrations:gi}function yS(){let e=U();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}xt=null,$r=null,fi=null,pi=null,jr=null,mi=null,gi=null,rn=null,_i=null}function hS(e){let t=e?{...e,...yi(e.pm_root)}:null,n=U();if(n){n.commandContext=t;return}rn=t}function Cp(){let e=U(),t=e?e.commandContext:rn;return t?{...t,args:[...t.args],options:t.options?{...t.options}:{},global:t.global?{...t.global}:void 0}:null}function zn(e){let t=U();if(t){t.commandResult=e;return}_i=e}function bS(){let e=U();return e?e.commandResult:_i}function hi(e){if(!e)return;let t=U();t?t.affectedItems.push(e):ui.push(e)}function Ur(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"||lS.has(i)||Object.hasOwn(r,i)&&r[i]!==void 0&&(n[i]=r[i])}return n}function wS(){let e=U(),t=e?.affectedItems??ui;if(t.length===0)return;let n=t;return e?e.affectedItems=[]:ui=[],n}function ES(){let e=U();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}xt=null,$r=null,fi=null,pi=null,jr=null,mi=null,gi=null,rn=null,_i=void 0,ui=[]}async function me(e){let t=U(),n=t?t.hooks:xt;return n?Pa(n,e):[]}async function bi(e){let t=U(),n=t?t.hooks:xt;n&&await La(n,e)}async function ze(e){let t=U(),n=t?t.hooks:xt;return n?Ma(n,e):[]}function oc(){let e=U();return((e?e.hooks:xt)?.onRead?.length??0)>0}async function vS(e){let t=U(),n=t?t.hooks:xt;return n?Fa(n,e):[]}function Op(e){let t=U(),n=t?t.commands:$r,r=t?t.commandContext:rn;return!n||!r?{overridden:!1,result:e,warnings:[]}:Va(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 TS(e){let t=U(),n=t?t.commands:$r;return n?$a(n,{...e,...yi(e.pm_root)}):{handled:!1,result:null,warnings:[]}}async function AS(e){let t=U(),n=t?t.parsers:fi;return n?ja(n,{...e,...yi(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 SS(e){let t=U(),n=t?t.preflight:pi;return n?Ua(n,{...e,...yi(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 Ip(e,t){let n=U(),r=n?n.renderers:mi,o=n?n.commandContext:rn;return r?Ga(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=U(),r=n?n.commandContext:rn;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 De(e,t){let n=U(),r=n?n.services:jr;return r?qa(r,Rp(e,t)):{handled:!1,result:t,warnings:[]}}function ic(e,t){let n=U(),r=n?n.services:jr;return r?za(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 on=new Set(je),wi=Object.freeze({get size(){return on.size},has(e){return on.has(e)},entries(){return on.entries()},keys(){return on.keys()},values(){return on.values()},forEach(e,t){on.forEach(n=>e.call(t,n,n,wi))},[Symbol.iterator](){return on.values()}});function Np(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function Dp(e){return typeof e!="string"?null:ai(e)}function kS(e){try{return structuredClone(e)}catch{return e}}function xS(e){let t=e.trim(),n=t.indexOf("=");if(n<=0)throw new h(`--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 CS(e){return`--${e.replaceAll("_","-")}`}function OS(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 h(`--field ${t}=... must be valid JSON ${n}`,_.USAGE)}function IS(e,t,n){if(t==="string")return n;if(t==="number"){let r=n.trim();if(r.length===0)throw new h(`--field ${e}=... must be a number`,_.USAGE);let o=Number(r);if(!Number.isFinite(o))throw new h(`--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 h(`--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):OS(n,e,t)}function sc(e){let t=new Map;if(!e)return t;for(let n of e.item_fields)for(let r of n.fields){let o=Np(r.name),i=Dp(r.type);if(!o||!i)continue;let s=t.get(o);if(s&&s.type!==i)throw new h(`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 Lp(e){if(wi.has(e))throw new h(`Extension item field "${e}" collides with built-in item metadata "${e}"; rename the extension field with an extension-specific prefix. Reserved fields: ${[...wi].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 zr(e){return[...sc(e).keys()].sort((t,n)=>t.localeCompare(n))}function RS(e,t){if(!e||e.length===0)return{};let n=sc(t),r={};for(let o of e){let{key:i,value:s}=xS(o),a=n.get(i);if(!a){if(wi.has(i)){let l=CS(i);throw new h(`--field ${i} is a core item field, not an extension field`,_.USAGE,{code:"core_item_field_requires_dedicated_flag",field:i,recovery:{provided_fields:[i],suggested_flags:[l]},nextSteps:[`Set the core field with its dedicated flag: pm update <id> ${l} <value>`,`When closing an item, pm close <id> also accepts ${l} <value>.`]})}let c=[...n.keys()].sort((l,d)=>l.localeCompare(d));throw new h(`--field ${i} is not declared by an active extension item-field registration`,_.USAGE,{code:"extension_item_field_unknown",recovery:{provided_fields:c},nextSteps:c.length>0?[`Use one of the declared fields: ${c.join(", ")}`]:["Activate an extension that calls registerItemFields before setting extension fields."]})}Lp(a.name),r[a.name]=IS(a.name,a.type,s)}return r}function NS(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 DS(e,t){return!t||t.length===0?!0:t.some(n=>Object.is(n,e))}function LS(e,t,n={}){if(t){sc(t);for(let r of t.item_fields)for(let o of r.fields){let i=Np(o.name);if(!i)continue;Lp(i),!(i in e)&&!n.skipDefaultFields?.has(i)&&Object.prototype.hasOwnProperty.call(o,"default")&&(e[i]=kS(o.default));let s=e[i];if(s===void 0)continue;let a=Dp(o.type);if(a&&!NS(s,a))throw new TypeError(`Item field "${i}" must be of type ${a}`);let c=Array.isArray(o.values)?o.values:void 0;if(!DS(s,c))throw new TypeError(`Item field "${i}" must match one of the configured allowed values`)}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ab276268-7a98-5f97-b3f5-300dfd1b5ed5")}catch{}})();function Ot(e){if(typeof e!="string")return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function Zz(e,t){let n=Ot(t);return!e||!n?null:[...e.assurance_providers??[]].reverse().find(r=>Ot(r.definition.id)===n)??null}function PS(e,t){let n=Ot(t);return!e||!n?null:[...e.search_providers].reverse().find(o=>(Ot(o.runtime_definition?.name)??Ot(o.definition?.name))===n)??null}function MS(e,t){let n=Ot(t);return!e||!n?null:[...e.vector_store_adapters].reverse().find(o=>(Ot(o.runtime_definition?.name)??Ot(o.definition?.name))===n)??null}function eq(e){return e.runtime_definition??e.definition}import Pp from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d6056922-237d-525a-b354-687493a4e123")}catch{}})();var FS=2e3,Ei=new Map;function xe(e){if(typeof e!="string")return"";let t=Ei.get(e);if(t!==void 0)return t;let n=e.trim().toLowerCase().replaceAll(/[\s-]+/g,"_");return Ei.size>=FS&&Rn(Ei),Ei.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 ge=Object.freeze({types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"}),$p=ca,lc=aa,$S=["create","update"],jS=new Set(Vo),US=new Set(Pn),zS=new Set(Go),qS=new Set(Bo);function qr(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 qe(e){if(typeof e!="string"||e.length===0)return;let t=xe(e);return t.length>0?t:void 0}function VS(e){return e.startsWith("--")?e.slice(2):e}function Mp(e){return typeof e=="string"?VS(e.trim().toLowerCase().replaceAll(/[\s_]+/g,"-")):""}function jp(e){return e.replaceAll("_","-")}function GS(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 cc(e,t){let n=qe(e.id);if(!n)return null;let r=[...new Set(qr(e.aliases).map(xe).filter(a=>a.length>0))].sort((a,c)=>a.localeCompare(c)),o=qr(e.roles).filter(a=>jS.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 BS(e){return{draft_status:qe(e?.draft_status),open_status:qe(e?.open_status),in_progress_status:qe(e?.in_progress_status),blocked_status:qe(e?.blocked_status),close_status:qe(e?.close_status),canceled_status:qe(e?.canceled_status)}}function Up(e,t){if(!Array.isArray(t)||t.length!==2)return;let n=xe(t[0]),r=xe(t[1]);n.length===0||r.length===0||e.pairs.some(o=>o[0]===n&&o[1]===r)||e.pairs.push([n,r])}function HS(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)Up(n,r);return{typeKey:t.toLowerCase(),record:n}}function WS(e){if(!Array.isArray(e)||e.length===0)return;let t=new Map;for(let r of e){let o=HS(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)Up(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 zp(e){let t=xe(e.key??"");if(!t)return null;let n=xe(e.metadata_key??e.front_matter_key??t),r=Mp(e.cli_flag??jp(t));if(!r)return null;let o=qr(e.cli_aliases).map(d=>Mp(d)).filter(d=>d.length>0&&d!==r),i=typeof e.type=="string"?e.type.trim().toLowerCase():"string",s=US.has(i)?i:"string",a=(()=>{let d=qr(e.commands).filter(u=>zS.has(u));return d.length>0?d:[...$S]})(),c=e.description?.trim(),l=qr(e.required_types);return{key:t,metadata_key:n,cli_flag:r,cli_aliases:o,description:c&&c.length>0?c: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:l,allow_unset:e.allow_unset!==!1}}function KS(e){let t=new Map;for(let[r,o]of e.entries()){let i=cc(o,r);i&&t.set(i.id,i)}let n=Fp([...t.values()]);return n.length>0?n:Fp(lc.map((r,o)=>cc(r,o)).filter(r=>r!==null))}function Fp(e){return e.sort((t,n)=>t.order===n.order?t.id.localeCompare(n.id):t.order-n.order)}function YS(e){let t=new Map;for(let n of e??[]){let r=zp(n);r&&t.set(r.key,r)}return[...t.values()].sort((n,r)=>n.key.localeCompare(r.key))}function XS(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 JS(e){return{key:e.key,metadata_key:e.metadata_key!==e.key?e.metadata_key:void 0,cli_flag:e.cli_flag!==jp(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 QS(e){let t=typeof e=="string"?e.trim().toLowerCase():"allow";return qS.has(t)?t:"allow"}function We(e){let t={...ge,...e?.files},n=e?.statuses&&e.statuses.length>0?e.statuses:lc,r=KS(n),o=YS(e?.fields);return{version:typeof e?.version=="number"&&Number.isFinite(e.version)?Math.floor(e.version):1,files:t,statuses:r.map(XS),fields:o.map(JS),workflow:{...$p,...BS(e?.workflow)},type_workflows:WS(e?.type_workflows),unknown_field_policy:QS(e?.unknown_field_policy)}}function ZS(e){return`${JSON.stringify(e,null,2)}
|
|
5
|
+
`}function ek(){return{definitions:[]}}function tk(){return{statuses:lc}}function nk(){return{fields:[]}}function rk(){return{workflow:$p}}function ok(e,t,n){try{return JSON.parse(e)}catch{n.push(t);return}}function ik(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 sk(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 ak(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 ck(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 lk(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 be(e,t,n){let r=t?.trim()||n;return Pp.isAbsolute(r)?r:Pp.join(e,r)}function dk(e,t){return be(e,t.files.types,ge.types)}async function qp(e,t){let n=We(t),r=[{path:be(e,n.files.types,ge.types),seed:ek()},{path:be(e,n.files.statuses,ge.statuses),seed:tk()},{path:be(e,n.files.fields,ge.fields),seed:nk()},{path:be(e,n.files.workflows,ge.workflows),seed:rk()}],o=[];for(let i of r)await Y(i.path)||(await D(i.path,ZS(i.seed)),o.push(i.path));return{created_paths:o}}async function Vp(e,t){let n=We(t),r=[],o=be(e,n.files.types,ge.types),i=be(e,n.files.statuses,ge.statuses),s=be(e,n.files.fields,ge.fields),a=be(e,n.files.workflows,ge.workflows),c,l,d,u,p,f=async(z,M)=>{let Z=await G(z);if(Z!==null)return ok(Z,M,r)},y=await f(o,"runtime_schema_types_invalid_json");y!==void 0&&(c=ik(y),c===void 0&&r.push("runtime_schema_types_invalid_shape"));let g=await f(i,"runtime_schema_statuses_invalid_json");g!==void 0&&(l=sk(g),l===void 0&&r.push("runtime_schema_statuses_invalid_shape"));let b=await f(s,"runtime_schema_fields_invalid_json");b!==void 0&&(d=ak(b),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=ck(E),u===void 0&&r.push("runtime_schema_workflows_invalid_shape"),p=lk(E)),{schema:We({...n,statuses:[...n.statuses,...l??[]],fields:[...n.fields,...d??[]],workflow:{...n.workflow,...u},type_workflows:[...n.type_workflows??[],...p??[]]}),type_definitions_from_file:c,warnings:r,created_paths:[]}}function ac(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=>qe(i)).filter(i=>typeof i=="string");for(let i of o)if(e.some(s=>s.id===i))return i;return e[0]?.id}function dc(e){let t=We(e),n=t.statuses.map((g,b)=>cc(g,b)).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 b of g.aliases)r.set(b,g.id),r.set(b.replaceAll("_","-"),g.id),r.set(b.replaceAll("_"," "),g.id)}let i=new Set,s=new Set,a=new Set,c=new Set,l=new Set,d=new Set;for(let g of n){let b=new Set(g.roles);(b.has("terminal")||b.has("terminal_done")||b.has("terminal_canceled"))&&i.add(g.id),b.has("terminal_done")&&s.add(g.id),b.has("terminal_canceled")&&a.add(g.id),b.has("active")&&c.add(g.id),b.has("blocked")&&l.add(g.id),b.has("draft")&&d.add(g.id)}let u=t.workflow,p=qe(u.open_status)??ac(n,"default_open",["open","in_progress",Ln[0]]),f=qe(u.close_status)??ac(n,"default_close",["closed","done","complete"]),y=qe(u.canceled_status)??ac(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:c,blocked_statuses:l,draft_statuses:d,open_status:p,close_status:f,canceled_status:y}}function vi(e,t){let n=xe(e);if(n)return t.alias_to_id.get(n)}function uc(e){let t=We(e),n=new Map,r=t.fields.map(c=>zp(c)).filter(c=>c!==null);for(let c of r)n.set(c.key,c);let o=[...n.values()].sort((c,l)=>c.key.localeCompare(l.key)),i=new Map,s=new Map,a=new Map;for(let c of o){i.set(c.key,c),s.set(c.cli_flag,c);for(let l of c.cli_aliases)s.set(l,c);for(let l of c.commands){let d=a.get(l)??[];d.push(c),a.set(l,d)}}for(let[c,l]of a.entries())l.sort((d,u)=>d.key.localeCompare(u.key)),a.set(c,l);return{definitions:o,by_key:i,by_cli_token:s,command_to_fields:a}}function Gp(e){return GS(e.key)}function uk(e,t){let n=vi(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 fc(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 fk(e){return[...new Set([Gp(e),fc(e.key),fc(e.cli_flag),...e.cli_aliases.map(t=>fc(t))])]}function Ti(e,t){for(let n of fk(t)){if(!Object.hasOwn(e,n))continue;let r=e[n];if(r!==void 0)return r}}function Wp(e){return Array.isArray(e)?e.flatMap(t=>Wp(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 Bp(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 h(`${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 h(`${t} must be a number`,_.USAGE);return r}function pk(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 h(`${t} must be valid JSON ${n}`,_.USAGE)}function sn(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:pk(i,r,e.type)}if(e.repeatable||e.type==="string_array"){let i=Wp(t);return e.type==="number"?i.map(s=>Hp(s,r)):e.type==="boolean"?i.map(s=>Bp(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"?Bp(o,r):typeof o=="string"?o:String(o)}function mk(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 gk(e,t,n){let r={},o=[];for(let i of t.command_to_fields.get("create")??[]){let s=Ti(e,i);if(s===void 0){mk(i,n)&&o.push(`--${i.cli_flag}`);continue}r[i.metadata_key]=sn(i,s)}return{values:r,missing_required_flags:[...new Set(o)].sort((i,s)=>i.localeCompare(s))}}function _k(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=Ti(e,s);a!==void 0&&(i.has(s.metadata_key)||(i.add(s.metadata_key),r[s.metadata_key]=sn(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 qn=1,Kp=1;function mq(e){let t=e.pm_format_version;return typeof t=="number"&&Number.isInteger(t)&&t>=qn?t:qn}function Yp(e){if(!(typeof e!="number"||!Number.isInteger(e)||e<=qn))return e}function yk(e,t=Kp){return e<t?"outdated":e>t?"ahead":"current"}function gq(e,t=Kp){let n=[],r=[];for(let o of e){let i=yk(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 hk={"in-progress":"in_progress",cancelled:"canceled"};function an(e,t){if(t){let o=vi(e,t);if(o)return o}if(typeof e!="string")return;let n=e.trim().toLowerCase();if(!n)return;let r=hk[n]??n;if(Ln.includes(r))return r}function Xp(e,t){return an(e,t)??e}function bk(e,t){return t.terminal_statuses.has(Xp(e,t))}import{encode as Tk}from"@toon-format/toon";import{isDeepStrictEqual as Jp}from"node:util";import{decode as wk}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 pc(e){return{value:wk(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 Ek=/^\s*(<<<<<<<|=======|>>>>>>>)(?:\s.*)?$/;function vk(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(Ek);if(!i)continue;let s=i[1];n.push({line:r+1,marker:s,text:o})}return n}function Ai(e){return vk(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 Ak=new Set(["schema","tracker","auto"]),Sk=new Set(["passed","failed","stopped","canceled"]),kk=new Set(Yo);function Bn(e){return e.replaceAll("\\","/")}function em(e){for(let t of e)if(t!==0)return t;return 0}function Si(e){for(let[t,n]of Object.entries(e))n===void 0&&delete e[t]}var tm=["id","title","description","created_at","updated_at"],xk=new Set(je);function nm(e){if(e?.schema)return{statusRegistry:dc(e.schema),fieldRegistry:uc(e.schema),unknownFieldPolicy:e.schema.unknown_field_policy??"allow",extensionFieldNames:new Set(e.extensionFieldNames??[]),onWarning:e.onWarning}}function Ck(e,t){return e.required?e.required_types.length===0?!0:e.required_types.map(n=>n.toLowerCase()).includes(t.trim().toLowerCase()):!1}function It(e){let t=e.match(/^([a-z_][\w.]*)\s/u)?.[1];throw new h(`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 Br(e,t){throw new h(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 rm(e){let t=new Set(xk);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||It(t)}function Hr(e,t){return(typeof e!="object"||e===null||Array.isArray(e))&&It(t),e}function mc(e,t){let n=e[t];k(typeof n=="string",`${t} must be a string`),k(vt(n),`${t} must be a valid ISO timestamp`)}function Qp(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 yc(e,t,n){let r=e[t];r!==void 0&&(k(typeof r=="string",`${n} must be a string`),k(vt(r),`${n} must be a valid ISO timestamp`))}function Ok(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(hr.includes(n),`event.recurrence.by_weekday entries must be one of: ${hr.join(", ")}`)}}}function Ik(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 Rk(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(vt(t),"event.recurrence.exdates entries must be valid ISO timestamps")}}function Nk(e){let t=Hr(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(Ko.includes(n),`event.recurrence.freq must be one of: ${Ko.join(", ")}`),Qp(t,"interval","event.recurrence.interval"),Qp(t,"count","event.recurrence.count"),yc(t,"until","event.recurrence.until"),Ok(t.by_weekday),Ik(t.by_month_day),Rk(t.exdates)}function Dk(e){for(let r of tm)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>=qn,`pm_format_version must be an integer >= ${qn}`),t}function Lk(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=an(n,r),i=r?r.definitions.map(s=>s.id):[...Ln];k(o!==void 0,`status must be one of: ${i.join(", ")}`)}function Pk(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 Mk(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"||Wo.includes(n);k(r,`confidence string value must be one of: ${[...Wo,"med"].join(", ")}`);return}k(!1,"confidence must be a number or string")}}function Fk(e){let t=e.severity;if(t===void 0)return;typeof t!="string"&&It("severity must be a string");let n=t.trim().toLowerCase(),r=n==="med"||Ho.includes(n);k(r,`severity value must be one of: ${[...Ho,"med"].join(", ")}`)}function $k(e){e.regression!==void 0&&typeof e.regression!="boolean"&&It("regression must be a boolean")}function jk(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=Hr(n,"reminders entries must be objects");k(typeof r.at=="string","reminder.at must be a string"),k(vt(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 Uk(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 zk(e){e.recurrence!==void 0&&(Nk(e.recurrence),e.recurrence.until!==void 0&&k(ie(e.recurrence.until,e.start_at)>=0,"event.recurrence.until must be at or after event.start_at"))}function qk(e){let t=Hr(e,"events entries must be objects");k(typeof t.start_at=="string","event.start_at must be a string"),k(vt(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(vt(t.end_at),"event.end_at must be a valid ISO timestamp"),k(ie(t.end_at,t.start_at)>0,"event.end_at must be after event.start_at")),Uk(t),t.all_day!==void 0&&k(typeof t.all_day=="boolean","event.all_day must be a boolean"),zk(t)}function Vk(e){let t=e.events;if(t!==void 0){k(Array.isArray(t),"events must be an array");for(let n of t)qk(n)}}function Gk(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 Bk(e){let t=e.type_options;if(t===void 0)return;let n=Hr(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 Hk(e,t,n){if(n?.fieldRegistry)for(let r of n.fieldRegistry.definitions){let o=e[r.metadata_key];if(o===void 0){Ck(r,t)&&It(`missing required schema field: ${r.metadata_key}`);continue}try{e[r.metadata_key]=sn(r,o,`metadata field "${r.metadata_key}"`)}catch(i){It(String(i?.message).replace(/^Invalid\s+/u,""))}}}function Wk(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=rm(t),r=Object.keys(e).filter(o=>!n.has(o)).sort((o,i)=>o.localeCompare(i));r.length!==0&&(t.unknownFieldPolicy==="reject"?It(`unknown schema fields are not allowed: ${r.join(", ")}`):t.onWarning?.(`item_unknown_schema_fields:${r.join(",")}`))}function hc(e,t){let n=Hr(e,"item metadata must be an object"),r=Dk(n);Lk(n,t),Pk(n),Mk(n),Fk(n),$k(n),mc(n,"created_at"),mc(n,"updated_at"),n.deadline!==void 0&&mc(n,"deadline"),jk(n),Vk(n),yc(n,"closed_at","closed_at"),yc(n,"completed_at","completed_at"),Gk(n),Bk(n),Hk(n,r,t),Wk(n,t)}function Kk(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=ie(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 gc(e){if(!(!e||e.length===0))return[...e].sort((t,n)=>{let r=ie(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 Yk(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=ie(n.at,r.at);return o!==0?o:n.text.localeCompare(r.text)});return t.length===0?void 0:t}function Xk(e){if(!e)return;let t=e.freq.trim().toLowerCase();if(!Ko.includes(t))return;let n=Array.from(new Set((e.by_weekday??[]).map(s=>s.trim().toLowerCase()).filter(s=>hr.includes(s)))).sort((s,a)=>_a(s)-_a(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=>vt(s)))).sort((s,a)=>ie(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 Jk(e){return!Array.isArray(e)||e.length===0?void 0:[...e].map(Qk).sort(Zk)}function Qk(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:Xk(e.recurrence)};return Si(t),t}function Zk(e,t){return em([ie(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 ex(e){if(!(!e||e.length===0))return e.map(t=>({path:Bn(t.path),scope:t.scope,note:t.note?.trim()||void 0}))}function tx(e){if(!e||e.length===0)return;let t=e.map(ox).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)=>em([ie(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 Vn(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?Math.floor(e):void 0}function nx(e){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.floor(e):void 0}function _c(e){return typeof e=="string"?e:""}function rx(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 ox(e){let t=typeof e.run_id=="string"?e.run_id.trim():"",n=e.kind==="test"||e.kind==="test-all"?e.kind:"test",r=Sk.has(e.status)?e.status:"failed",o={run_id:t,kind:n,status:r,started_at:_c(e.started_at),finished_at:_c(e.finished_at),recorded_at:_c(e.recorded_at),attempt:nx(e.attempt),resumed_from:e.resumed_from?.trim()||void 0,passed:Vn(e.passed)??0,failed:Vn(e.failed)??0,skipped:Vn(e.skipped)??0,items:Vn(e.items),linked_tests:Vn(e.linked_tests),fail_on_skipped_triggered:e.fail_on_skipped_triggered===!0?!0:void 0,measurements:rx(e.measurements)};return Si(o),o}function ix(e){if(!(!Array.isArray(e)||e.length===0))return e.map(cx)}function Vr(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 om(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function wc(e){return e==="__proto__"||e==="constructor"||e==="prototype"}function Zp(e){if(!om(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),String(r).trim()]).filter(([n,r])=>n.length>0&&!wc(n)&&r.length>0).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function sx(e){if(!om(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),Number(r)]).filter(([n,r])=>n.length>0&&!wc(n)&&Number.isFinite(r)).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function ax(e){let t=e?.trim().toLowerCase();if(!(!t||!Ak.has(t)))return t}function cx(e){let t={command:e.command?.trim()||void 0,path:e.path?Bn(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:ax(e.pm_context_mode),env_set:Zp(e.env_set),env_clear:Vr(e.env_clear),shared_host_safe:e.shared_host_safe===!0?!0:void 0,assert_stdout_contains:Vr(e.assert_stdout_contains),assert_stdout_regex:Vr(e.assert_stdout_regex),assert_stderr_contains:Vr(e.assert_stderr_contains),assert_stderr_regex:Vr(e.assert_stderr_regex),assert_stdout_min_lines:Vn(e.assert_stdout_min_lines),assert_json_field_equals:Zp(e.assert_json_field_equals),assert_json_field_gte:sx(e.assert_json_field_gte),note:e.note?.trim()||void 0};return Si(t),t}function lx(e){if(!(!e||e.length===0))return[...e].map(t=>({path:Bn(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 dx(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 ux(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:Bn(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 fx(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=Bn(i));let a=A(r.note);a&&(s.note=a),t.push(s)}return t.length>0?t:void 0}function px(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:Bn(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 mx(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&&kk.has(o)?o:void 0,s=zo(t.order)??Number.NaN,a=typeof t.created_at=="string"?t.created_at:"",c=typeof t.updated_at=="string"?t.updated_at:"";if(!n||!r||!i||!Number.isFinite(s)||!a||!c)return;let l={id:n,order:s,title:r,status:i,created_at:a,updated_at:c};return gx(l,t),l}function gx(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",dx],["files","files",ux],["tests","tests",fx],["docs","docs",px]];for(let[i,s,a]of o){let c=a(t[s]);c&&(e[i]=c)}}function _x(e){if(!Array.isArray(e))return;let t=e.flatMap(n=>{let r=mx(n);return r?[r]:[]});return t.sort((n,r)=>n.order-r.order),t.length>0?t:void 0}function yx(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},c=A(r.rationale);c&&(a.rationale=c);let l=A(r.evidence);l&&(a.evidence=l);let d=A(r.step_id);d&&(a.step_id=d),t.push(a)}return t.length>0?t:void 0}function hx(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},c=A(r.step_id);c&&(a.step_id=c),t.push(a)}return t.length>0?t:void 0}function bx(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 wx(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 Gn(e){let t=0;for(;t<e.length&&e[t]===`
|
|
6
|
+
`;)t+=1;return e.slice(t).trimEnd()}function Ex(e){if(e===void 0)return;if(typeof e=="number")return e;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(Wo.includes(t))return t}function vx(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(Ho.includes(t))return t}function Gr(e){return e||void 0}function Tx(e,t){let n=e,r=t;for(let[o,i]of Object.entries(r))wc(o)||Object.prototype.hasOwnProperty.call(n,o)||i===void 0||(n[o]=i)}function Ax(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]=sn(r,o,`metadata field "${r.metadata_key}"`))}}function Sx(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=rm(t),o=Object.keys(e).filter(i=>!n.has(i)).sort((i,s)=>i.localeCompare(s));o.length>0&&t.unknownFieldPolicy==="reject"&&It(`unknown schema fields are not allowed: ${o.join(", ")}`),o.length>0&&t.onWarning?.(`item_unknown_schema_fields:${o.join(",")}`)}function Wr(e,t={}){let n=nm(t),r=an(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:Yp(e.pm_format_version),source_type:A(e.source_type),type_options:wx(e.type_options),status:r,priority:e.priority,tags:o,created_at:e.created_at,updated_at:e.updated_at,dependencies:Kk(e.dependencies),comments:gc(e.comments),notes:gc(e.notes),learnings:gc(e.learnings),files:ex(e.files),tests:ix(e.tests),test_runs:tx(e.test_runs),docs:lx(e.docs),deadline:Gr(e.deadline),reminders:Yk(e.reminders),events:Jk(e.events),closed_at:Gr(e.closed_at),completed_at:Gr(e.completed_at),assignee:A(e.assignee),claim_principal:A(e.claim_principal),source_owner:A(e.source_owner),author:Gr(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:Ex(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:vx(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:Gr(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:_x(e.plan_steps),plan_decisions:yx(e.plan_decisions),plan_discoveries:hx(e.plan_discoveries),plan_validation:bx(e.plan_validation)};return Tx(i,e),Ax(i,n),Sx(i,n),Si(i),i}function im(e){return x(e,je)}function kx(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 xx(e){if(!e.startsWith("{"))return{frontMatter:"",body:e};let t=kx(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 Cx(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 bc(e,t){return Wr(e,{...t,onWarning:void 0})}function Ox(e,t,n={}){let r=Cx(e);r.stripped&&n.onWarning?.("json_markdown_leading_yaml_frontmatter_ignored");let{frontMatter:o,body:i}=xx(r.content);o||(e.trimStart().startsWith("{")&&Br("json_markdown","JSON front matter is not valid JSON"),Br("json_markdown","JSON Markdown item document is missing JSON front matter"));let s;try{s=JSON.parse(o)}catch{Br("json_markdown","JSON front matter is not valid JSON")}return hc(s,t),{metadata:bc(s,n),body:Gn(i)}}function Ix(e,t,n={}){let r;try{r=pc(e).value}catch{Br("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(!tm.some(a=>Object.prototype.hasOwnProperty.call(o,a))&&!Object.prototype.hasOwnProperty.call(o,"front_matter")&&Br("toon","TOON input does not have the shape of an item document"),Object.prototype.hasOwnProperty.call(o,"front_matter"))return hc(o.front_matter,t),k(o.body===void 0||typeof o.body=="string","TOON item document body must be a string"),{metadata:bc(o.front_matter,n),body:Gn(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"),hc(s,t),{metadata:bc(s,n),body:Gn(typeof i=="string"?i:"")}}function Rx(e,t={}){let n=Wr(e.metadata,t),r=im(n),o=JSON.stringify(r,null,2),i=Gn(e.body??"");return i?`${o}
|
|
8
|
+
|
|
9
|
+
${i}
|
|
10
|
+
`:`${o}
|
|
11
|
+
`}function Nx(e,t={}){let n=Wr(e.metadata,t),r=im(n),o=Gn(e.body??""),i={...r,body:o},s=JSON.parse(JSON.stringify(i)),a=Tk(s),c;try{c=pc(a).value}catch(l){throw new h("Refusing to persist a TOON item document that the configured decoder cannot read back.",_.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_error",format:"toon",required:"Upgrade or repair the TOON codec before retrying the mutation; no item bytes were written.",why:l instanceof Error?l.message:String(l)})}if(!Jp(c,s)){let l=typeof c=="object"&&c!==null&&!Array.isArray(c)?c:{},d=Object.keys(s).find(u=>!Jp(s[u],l[u]))??"document";throw new h(`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 cn(e,t={}){let n=Ai(e);if(n)throw new h(`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=nm(t);return r==="toon"?Ix(e,o,t):Ox(e,o,t)}function Kr(e,t={}){return(t.format??"toon")==="toon"?Nx(e,t):Rx(e,t)}function Le(e,t={}){return{metadata:Wr(e.metadata,t),body:Gn(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 Ec(e){return e}import{AsyncLocalStorage as Dx}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 vc=new Dx,sm=/^[A-Za-z0-9](?:[A-Za-z0-9._:-]{0,127})$/u;function ki(e,t){let n=typeof e=="string"?e.trim():"";return n.length>0?n.slice(0,t):void 0}function Rt(e,t){if(e===void 0)return;let n=typeof e=="object"&&e!==null?e:{},r=ki(n.id,128),o=ki(n.parent_id,128);if(r===void 0||!sm.test(r)||o!==void 0&&!sm.test(o)){if(t)throw new Error("Agent episode ids must be 1-128 letters, digits, dots, underscores, colons, or hyphens.");return}let i=ki(n.label,256);return{id:r,...i===void 0?{}:{label:i},...o===void 0?{}:{parent_id:o}}}function Hn(e){let t={};for(let[n,r]of Object.entries(e??{}).slice(0,32)){let o=n.trim().toLowerCase().slice(0,64),i=ki(r,256);/^[a-z][a-z0-9_-]{0,63}$/u.test(o)&&i!==void 0&&(t[o]=i)}return t}function Lx(e,t,n){let r=vc.getStore(),o=Hn({role:t.PM_AGENT_SESSION_ROLE,topic:t.PM_AGENT_SESSION_TOPIC}),i=Rt(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={...Hn(r?.provenance),...o,...Hn(e?.provenance)},a=Rt(e?.episode,!1)??Rt(n,!1)??i??Rt(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 xi(e,t){return Lx(e.session_context,t,e.client_info?.episode)??{}}function Px(e,t){let n=vc.getStore(),r=Rt(e.episode,!0),o=Rt(n?.episode,!1),i=r!==void 0&&r.parent_id===void 0&&o!==void 0?{...r,parent_id:o.id}:r,s={...Hn(n?.provenance),...Hn(e.provenance)};return vc.run({...Object.keys(s).length===0?{}:{provenance:s},...i===void 0?o===void 0?{}:{episode:o}:{episode:i}},t)}function Mx(e){let t=Hn(e.provenance),n=Rt(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 am}from"node:crypto";import{existsSync as Tc,promises as cm,readFileSync as Fx}from"node:fs";import Ke 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 $x="session.json";function Ac(e,t){return typeof e=="string"&&e.length>0&&e.length<=t}function lm(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=Ac(t.topic,256),i=Array.isArray(t.evidence)&&t.evidence.length<=32&&t.evidence.every(c=>typeof c=="string"&&c.length<=128),s=Array.isArray(t.active_item_ids)&&t.active_item_ids.length<=64&&t.active_item_ids.every(c=>Ac(c,128)),a=t.focused_item_id===void 0||Ac(t.focused_item_id,128);if([n,r,o,i,s,a,t.rule_version==="v2"].every(Boolean))return t}function jx(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=Object.entries(e).slice(0,128).flatMap(([n,r])=>{let o=lm(r);return o&&n.length<=128?[[n,o]]:[]});return t.length>0?Object.fromEntries(t):void 0}function Sc(e){return Ke.join(Ea(e),$x)}async function Ci(e){try{let t=await cm.readFile(Sc(e),"utf8"),n=JSON.parse(t);if(n===null||typeof n!="object"||Array.isArray(n))return{};let r=n,o=r.focused_item,i=jx(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 kc(e,t){let n=Sc(e);await cm.mkdir(Ke.dirname(n),{recursive:!0}),await D(n,JSON.stringify(t))}function xc(e){return/#([a-f0-9]{24})$/u.exec(e.trim())?.[1]??`author-${am("sha256").update(e).digest("hex").slice(0,24)}`}function Cc(e){return[...new Set(e.map(t=>t.trim()).filter(Boolean))].slice(0,32).map(t=>t.slice(0,128))}function Oc(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)}+${am("sha256").update(t.join("\0")).digest("hex").slice(0,12)}`}async function Ic(e,t,n){let r=await Ci(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 kc(e,s)}async function Hq(e){let t=xc(e.principal);await Ic(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??Oc(r),confidence:o?"high":"medium",rule_version:"v2",evidence:Cc([...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 Wq(e){let t=xc(e.principal);await Ic(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??Oc(r),confidence:o?"high":"medium",evidence:Cc([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],`release:${e.itemId}`]),active_item_ids:r}})}async function Kq(e){let t=xc(e.principal);await Ic(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??Oc(r),confidence:o?"high":"medium",rule_version:"v2",evidence:Cc([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],...(e.lineageIds??[]).map(i=>`lineage:${i}`)]),active_item_ids:r,...o?{focused_item_id:o}:{}}})}function Ux(e,t){let n=t.PM_PATH?.trim();if(n){let o=Ke.resolve(e,n);if(Tc(Ke.join(o,"settings.json")))return o;let i=Ke.join(o,".agents","pm");if(Tc(Ke.join(i,"settings.json")))return i}let r=Ke.resolve(e);for(let o=0;o<32;o+=1){let i=Ke.join(r,".agents","pm");if(Tc(Ke.join(i,"settings.json")))return i;let s=Ke.dirname(r);if(s===r)break;r=s}}function dm(e){if(!e.key)return;let t=Ux(e.cwd,e.env);if(t)try{let n=JSON.parse(Fx(Sc(t),"utf8"));return lm(n.semantic_attribution?.[e.key])}catch{return}}async function zx(e){return(await Ci(e)).focused_item}async function qx(e,t){let n=await Ci(e);await kc(e,{...n,focused_item:t})}async function Vx(e){let n={...await Ci(e)};delete n.focused_item,await kc(e,n)}import{AsyncLocalStorage as Dc}from"node:async_hooks";import{createHash as Gx}from"node:crypto";import Oi from"node:fs";import Bx from"node:os";import um 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 Lc=["model","effort","role","topic","version"],Ri=new Dc,fm=new Dc,Ni=new Dc,Hx=[{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:[]}],Wn=new Map,Rc=/^[a-z0-9]+(?:-[a-z0-9]+)*$/u;function te(e){let t=typeof e=="string"?e.trim():void 0;return t&&t.length>0?t:void 0}function ln(e){return[...new Set((e??[]).slice(0,64).map(t=>t.trim()).filter(t=>t.length>0).map(t=>t.slice(0,128)))]}function Di(e){let t=e.harness.trim().toLowerCase();if(!Rc.test(t))throw new Error(`Invalid harness signal descriptor namespace: ${e.harness}`);return{harness:t,environment_keys:ln(e.environment_keys),model_environment_keys:ln(e.model_environment_keys),session_environment_keys:ln(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),ln(r)]).filter(([n])=>Rc.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"&&Rc.test(n[0])&&(n[1]==="ai_agent_version"||n[1]==="claude_session_file"))),provenance_unavailable_dimensions:ln(e.provenance_unavailable_dimensions).map(n=>n.toLowerCase()),argv_markers:ln(e.argv_markers).map(n=>n.toLowerCase()),client_names:ln(e.client_names).map(n=>n.toLowerCase())}}var pm=Hx.map(Di);function Wx(e,t){return JSON.stringify(e)===JSON.stringify(t)}function Ii(e,t){return e.toLowerCase().slice(0,512).split(/[/\\\s:=]+/u).filter(r=>r.length>0).includes(t)||e.trim().toLowerCase()===t}function Pc(e=[]){let t=[...pm,...[...Wn.values()].map(r=>r.descriptor),...Ni.getStore()?.descriptors??[],...e.map(Di)],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 Mc(e,t){for(let n of t??[]){let r=te(e[n]);if(r)return r.slice(0,256)}}function Kx(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 mm(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 te(r[o+1])?.slice(0,256);let s=n.find(a=>i.startsWith(`${a}=`));if(s)return te(i.slice(s.length+1))?.slice(0,256)}}var Yx=new Set(["implementation","implementer","investigator","orchestrator","planner","release-operator","reviewer"]);function dn(e,t){if(e!=="role"||t===void 0)return t;let n=t.trim().toLowerCase().replaceAll(/[_\s]+/gu,"-");return Yx.has(n)?n:void 0}function Nc(e,t){return te(e?.[t])?.slice(0,256)}var Xx=1048576;function Jx(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 te(i)?.slice(0,256)}function Qx(e,t,n){let r=te(n.CLAUDE_CODE_SESSION_ID);if(!r||!/^[A-Za-z0-9_-]{1,128}$/u.test(r))return;let i=um.resolve(t.cwd??process.cwd()).replaceAll(/[^A-Za-z0-9-]/gu,"-"),s=um.join(t.home_dir??Bx.homedir(),".claude","projects",i,`${r}.jsonl`);try{let a=Oi.openSync(s,"r");try{let c=Oi.fstatSync(a).size,l=Math.min(c,Xx),d=Buffer.alloc(l);Oi.readSync(a,d,0,l,Math.max(0,c-l));let u=d.toString("utf8").split(`
|
|
13
|
+
`).reverse();for(let p of u.slice(0,4096)){let f=Jx(p,e);if(f)return f}return}finally{Oi.closeSync(a)}}catch{return}}function Zx(e,t,n,r){let o=Ni.getStore();if(!(t.probes_enabled!==!1&&o?.probesEnabled!==!1&&!["0","false","off"].includes(te(n.PM_AGENT_PROBES)?.toLowerCase()??"")))return;let s=r?.provenance_resolvers[e];if(s==="claude_session_file")return Qx(e,t,n);if(s==="ai_agent_version"){let a=te(n.AI_AGENT);return!a||!r||!Ii(a,r.harness)?void 0:/(?:^|[@/\s])v?(\d+\.\d+(?:\.\d+)?(?:[-+][A-Za-z0-9.-]+)?)$/u.exec(a)?.[1]?.slice(0,256)}}function eC(e,t,n){if(e==="ai_agent_version"){let r=te(n.AI_AGENT);return r!==void 0&&Ii(r,t.harness)}return te(n.CLAUDE_CODE_SESSION_ID)!==void 0}function Fc(e){return e||(fm.getStore()??{env:process.env,argv:process.argv})}function tC(e,t,n,r){let o=e.environment_keys.some(a=>te(t[a])!==void 0),i=e.argv_markers.some(a=>n.some(c=>{let l=c.replaceAll("\\","/");return Ii(l.slice(l.lastIndexOf("/")+1),a)})),s=e.client_names.some(a=>r===a||Ii(r,a));return o||i||s}function nC(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 rC(e){let t=e.find(([n])=>n!==void 0);return t?.[0]?{value:t[0],source:t[1]}:void 0}function oC(e,t,n,r,o,i){let s=`PM_AGENT_${e.toUpperCase().replaceAll("-","_")}`,a=new Set([...Lc,...Object.keys(r?.provenance_environment_keys??{})]),c,l,d;a.has(e)&&(c=dn(e,te(n[s])?.slice(0,256)),d=dn(e,mm(t.argv??[],e)),l=dn(e,Kx(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=Nc(o?.provenance,e),y=dn(e,Mc(n,u[e])),g=dn(e,Nc(p,e)),b=dn(e,Nc(t.provenance,e)),E=Zx(e,t,n,r);return rC([[c,"override"],[f,"session"],[d,"argv"],[y,"environment"],[g,"mcp_client"],[b,"host"],[E,"probe"]])??nC(e,i)??(l?{value:l,source:"argv"}:void 0)}function iC(e,t){if(!(!e||!t))return Gx("sha256").update(`pm-agent-instance:v1\0${e}\0${t}`).digest("hex").slice(0,24)}function sC(e,t,n,r,o){let i=Object.keys(n?.provenance_environment_keys??{}),s=new Set([...Lc,...i,...Object.keys(n?.provenance_resolvers??{}),...Object.keys(e.provenance??{}),...Object.keys(e.client_info?.provenance??{}),...Object.keys(r?.provenance??{})]),a={};for(let c of s){let l=oC(c,e,t,n,r,o);l?a[c]=l:n&&(c!=="version"||n.provenance_unavailable_dimensions.includes(c))&&(a[c]=null)}return a}function rV(e){let t=e.map(Di),n=new Map(pm.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=Wn.get(i.harness);if(s&&!Wx(s.descriptor,i))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);r.add(i.harness)}for(let i of t){let s=Wn.get(i.harness);Wn.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=Wn.get(i.harness);!s||s.registrations<=1?Wn.delete(i.harness):s.registrations-=1}}}}function aC(e,t){return fm.run(e,t)}function cC(e,t,n={}){let r=e.map(Di);return Pc(r),Ni.run({descriptors:r,probesEnabled:n.probesEnabled!==!1},t)}function Yr(e){let t=Fc(e),n=t.env??{},r=Pc(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=>tC(y,n,o,i)),a=xi(t,n),c=[Mc(n,s?.session_environment_keys),te(t.client_info?.session)?.slice(0,256)].find(y=>y!==void 0),l=iC(s?.harness,c),d=dm({cwd:t.cwd??process.cwd(),env:n,key:l}),u=sC(t,n,s,a,d),p=u.model,f=[["harness",s?.harness],["model",p?.value],["model_source",p?.source],["session",c],["instance",l],["provenance",Object.keys(u).length>0?u:void 0],["episode",a.episode]];return Object.fromEntries(f.filter(y=>y[1]!==void 0))}function lC(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=eC(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 $c(e){let t=Fc(e),n=Yr(t),r=Pc(t.descriptors).find(l=>l.harness===n.harness),o=t.env??{},i=t.probes_enabled!==!1&&Ni.getStore()?.probesEnabled!==!1&&!["0","false","off"].includes(te(o.PM_AGENT_PROBES)?.toLowerCase()??""),s=xi(t,o),a=[o.PM_AGENT_ROLE,s.provenance?.role,Mc(o,r?.provenance_environment_keys.role),t.client_info?.provenance?.role,t.provenance?.role,mm(t.argv??[],"role")].some(l=>{let d=te(l)?.slice(0,256);return d!==void 0&&dn("role",d)===void 0}),c=Object.fromEntries(Lc.map(l=>[l,lC(l,n,r,o,i,l==="role"&&a)]));return{...n,provenance_outcomes:c}}function jc(){return process.env.PM_AUTHOR}function dC(e){e===void 0?delete process.env.PM_AUTHOR:process.env.PM_AUTHOR=e}function oV(e){return Yr(e).harness}function uC(e,t,n){let r=Fc(n),o=Yr(r);if(e!==void 0){let s=te(e);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}if(r.env?.PM_AUTHOR!==void 0){let s=te(r.env.PM_AUTHOR);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}let i=te(t);return i?{author:i,source:"configured",...o}:o.harness?{author:`harness:${o.harness}`,source:"detected",...o}:{author:"unknown",source:"unknown",...o}}function gm(e){let t=Ri.getStore();return t?.author===e?t.source:e.startsWith("harness:")?"detected":e==="unknown"?"unknown":"asserted"}function _m(e){let t=Ri.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 Uc(e){let t=Ri.getStore();return t?.author===e&&t.source==="detected"&&t.instance?`${e}#${t.instance}`:e}function Xr(e,t){let n=uC(e,t);return Ri.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 Ve(e,t){let n=await G(e);if(n===null)return[];if(await ze({path:e,scope:"project"}),n.trim()==="")return[];let r=Ai(n);if(r)throw new h(`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 h(`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 fC="__pm_suppress_host_output",zc="@unbrained/pm-cli:suppress-host-output:v1";function fV(e){return e===void 0?{__pm_suppress_host_output:zc}:{__pm_suppress_host_output:zc,result:e}}function ym(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&e[fC]===zc}(function(){try{var e=typeof window<"u"?window:typeof 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 Li="changed_fields",pC="changed_field_count",qc="rows",mC=new Set(["apply","rollback"]),hm=new Set(["deleted","would_delete"]);function un(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function bm(e){let t=e[Li];if(!Array.isArray(t))return null;let n=Object.getPrototypeOf(e)===null?Object.create(null):{};for(let[r,o]of Object.entries(e))r!==Li&&(n[r]=o);return n[pC]=t.length,n}function gC(e){return"item"in e&&Array.isArray(e[Li])}function _C(e){return typeof e.mode=="string"&&mC.has(e.mode)&&Array.isArray(e[qc])}function yC(e,t){let n=Object.getPrototypeOf(e)===null?Object.create(null):{};return Object.assign(n,e),n[qc]=t,n}function hC(e){if(!un(e))return null;let t=un(e.item)?e.item:un(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"&&hm.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 bC(e){if(!un(e)||!un(e.item)||typeof e.item.id!="string")return null;let t=e[Li];if(!Array.isArray(t))return null;let n={id:e.item.id,...typeof e.outcome=="string"&&hm.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 wC(e){let t=_C(e)?e[qc]:void 0;if(!Array.isArray(t))return{projected:e,changed:!1};let n=!1,r=t.map(o=>{if(!un(o))return o;let i=bm(o);return i?(n=!0,i):o});return n?{projected:yC(e,r),changed:!0}:{projected:e,changed:!1}}function Pi(e,t={}){if(t.idOnly===!0){let a=hC(e);if(a!==null)return a}if(t.compactEnvelope===!0){let a=bC(e);if(a!==null)return a}if((t.changedFields??"full")==="full"||!un(e))return e;let r=!1,o=e,i=gC(e)?bm(e):null;i!==null&&(o=i,r=!0);let s=wC(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]="d059aa19-3822-5ff4-b4be-e2be8f537d1e")}catch{}})();var vm=new WeakMap;function yV(e,t){vm.set(e,new Set(t))}var wm='.row_contract.row_keys[] as $key | getpath($key | split(".")) | if type == "array" then .[] else if type == "object" then to_entries[] else empty end end',EC={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:["activity_digest","compact_activity","provenance_activity","activity"],fields:"unsupported"},history:{row_keys:["compact_history","provenance_history","history"],fields:"unsupported"},deps:{row_keys:["graph.nodes","graph.edges","context.nodes","context.edges"],fields:"unsupported"},health:{row_keys:["checks"],fields:"unsupported"},aggregate:{row_keys:["groups"],fields:"unsupported"},duplicates:{row_keys:["clusters"],fields:"unsupported"},stats:{row_keys:["by_type","by_status"],fields:"unsupported"},comments:{row_keys:["comments"],fields:"unsupported"},notes:{row_keys:["notes"],fields:"unsupported"},learnings:{row_keys:["learnings"],fields:"unsupported"},files:{row_keys:["files"],fields:"unsupported"},docs:{row_keys:["docs"],fields:"unsupported"},validate:{row_keys:["checks","warnings"],fields:"unsupported"},contracts:{row_keys:["command_summaries","commands"],fields:"unsupported"}},vC=[{command:"activity",complete_mode:"full",omissions_by_mode:{digest:[{name:"event_rows",restore_with:"--raw"}],compact:[{name:"provenance",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}},{command:"history",complete_mode:"full",omissions_by_mode:{compact:[{name:"raw_history",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}}];function hV(e,t,n){if(e&&t)throw new h(`${n} cannot be combined with --full`,_.USAGE)}function Ye(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 bV(e,t){let n=vC.find(o=>o.command===e);if(n===void 0)throw new TypeError(`Unknown mode-paired output command: ${e}`);if(t===n.complete_mode)return Ye([]);let r=n.omissions_by_mode[t];if(r===void 0)throw new TypeError(`Unknown ${e} output mode: ${t}`);return Ye(r)}var TC=[{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 Pe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var AC=new Set([void 0,"tabular_when_uniform"]),SC=new Set(["collection","none"]),kC=new Set(["supported","unsupported"]);function xC(e){return Pe(e)&&typeof e.command=="string"&&e.command.trim().length>0&&SC.has(e.row_kind)&&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&&kC.has(e.fields)&&AC.has(e.toon_encoding)&&(e.row_kind==="collection"?e.row_keys.length>0&&typeof e.jq_selector=="string"&&e.jq_selector.trim().length>0:e.row_keys.length===0&&e.jq_selector===void 0)}var CC={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"]},OC={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:["activity_digest","compact_activity","provenance_activity","activity"],history:["compact_history","provenance_history","history"],deps:["tree","graph","projection"],health:["checks"],aggregate:["groups"],duplicates:["clusters"],stats:["totals","by_type","by_status"],comments:["comments"],notes:["notes"],learnings:["learnings"],files:["files"],docs:["docs"],validate:["checks","warnings"],contracts:["command_summaries","commands","selected"]};function IC(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=CC[s];if(a===void 0)return;let c=a.filter(l=>Array.isArray(t[l])||Pe(t[l]));return{command:"graph",row_kind:c.length>0?"collection":"none",row_keys:c,fields:"unsupported",...c.length>0?{jq_selector:wm}:{},toon_encoding:"tabular_when_uniform"}}let o=EC[r],i=OC[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 c=a.split(".").reduce((l,d)=>Pe(l)?l[d]:void 0,t);return Array.isArray(c)||Pe(c)});return{command:r,row_kind:s.length>0?"collection":"none",row_keys:s,fields:o.fields,...s.length>0?{jq_selector:wm}:{},toon_encoding:"tabular_when_uniform"}})()}function RC(e){if(!Pe(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=>Pe(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 Ye(r,new Set(o))}function NC(e){if(Array.isArray(e.sections_included))return Ye(TC,new Set(e.sections_included.filter(t=>typeof t=="string")))}function DC(e){if(!Pe(e.item))return;let t=e.item,n=["comments","notes","learnings","files","tests","docs","reminders","events"],r=["body","children","claim_state","linked","schedule"],o=vm.get(e),i=a=>n.includes(a)||a==="body"?t:e,s=["body",...n,...r.slice(1)].filter(a=>o===void 0||o.has(a)||Object.hasOwn(i(a),a)).map(a=>({name:a,restore_with:`--fields ${a}`}));return Ye(s,new Set(s.flatMap(({name:a})=>Object.hasOwn(i(a),a)?[a]:[])))}function Em(e){if(Pe(e.projection))return Ye([{name:"full_item_fields",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_item_fields"]:[]))}function LC(e){if(!Pe(e.projection))return Ye([]);if(typeof e.projection.mode=="string")return Ye([{name:"full_check_details",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_check_details"]:[]))}function PC(e){if(!(!Pe(e.selected)||typeof e.selected.summary!="boolean"))return Ye([{name:"full_contract_catalog",restore_with:"--full"}],new Set(e.selected.summary?[]:["full_contract_catalog"]))}function MC(e,t){let n=RC(t);if(n!==void 0)return n;let[r]=e.split(/\s+/u,1);if(r==="context")return NC(t);if(r==="get")return DC(t);if(r==="list"||r.startsWith("list-"))return Em(t);if(r==="search")return Em(t)??Ye([{name:"projection_metadata",restore_with:"--full"}]);if(r==="health")return LC(t);if(r==="contracts")return PC(t)}function Tm(e,t){if(e===void 0||!Pe(t))return t;let n=MC(e,t),r=t.row_contract,o=xC(r)?r:IC(e,t),i=o!==void 0?{...t,row_contract:o}:Object.hasOwn(t,"row_contract")?Object.fromEntries(Object.entries(t).filter(([s])=>s!=="row_contract")):t;return Pe(i.omission_receipt)||n===void 0?i:{...i,omission_receipt:n}}import{createHash as FC}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]="d3329fac-693d-566c-a30a-43f8fb37938f")}catch{}})();var Vc=1,Sm=4096,$C=/^[A-Za-z0-9_-]+$/;function Am(e){return e.replace(/^--/u,"").replace(/[-_]([a-z0-9])/gu,(t,n)=>n.toUpperCase())}function SV(e,t){let n=new Set;for(let r of t)if(r.cursor_semantics==="presentation"){n.add(Am(r.flag));for(let o of r.aliases??[])n.add(Am(o))}return Object.fromEntries(Object.entries(e).filter(([r])=>!n.has(r)))}function kV(e,t){return FC("sha256").update(e).update("\0").update(ne(t)).digest("hex").slice(0,24)}function Jr(e,t,n,r){return Buffer.from(JSON.stringify({version:Vc,fingerprint:e,after_id:t,...n===void 0?{}:{after_index:n},...r===void 0?{}:{snapshot:r}})).toString("base64url")}function fn(e){return new h(e,_.USAGE,{code:"invalid_query_cursor",nextSteps:["Repeat the original query without --after to obtain a fresh cursor."]})}function jC(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e;return t.version===Vc&&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 Gc(e){if(typeof e!="string")throw fn("Query cursor is malformed.");let t=e.trim();if(t.length===0||t.length>Sm||!$C.test(t))throw fn("Query cursor is malformed.");let n;try{n=JSON.parse(Buffer.from(t,"base64url").toString("utf8"))}catch{throw fn("Query cursor is malformed.")}if(!jC(n))throw fn("Query cursor version or payload is unsupported.");return n}function Bc(e,t){let n=Gc(e);if(n.fingerprint!==t)throw fn(`Query cursor does not match the current filters, sort, or query (${n.fingerprint} != ${t}).`);return{after_id:n.after_id,...n.after_index===void 0?{}:{after_index:n.after_index},...n.snapshot===void 0?{}:{snapshot:n.snapshot}}}function xV(e,t){return Bc(e,t).after_id}function UC(e,t,n,r){if(t===void 0)return 0;let o=Bc(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 fn(`Query cursor item ${o.after_id} is no longer present in this result set.`)}return i+1}function CV(e,t){if(t.cursor!==void 0&&Bc(t.cursor,t.fingerprint).snapshot!==t.snapshot)throw fn("Query cursor does not match the requested snapshot.");let n=UC(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:Jr(t.fingerprint,t.readId(i),n+r.length-1,t.snapshot)}:{}}}var OV=Object.freeze({version:Vc,max_length:Sm});(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0c69ff43-7bbc-5128-9533-bbf15365126b")}catch{}})();var zC=new Set(["applied_bound","completeness","budget_retention_policy","continuation_contract","continuation_kind","continuation_path","filters","omission_receipt","output_budget_truncation","projection","read_output","read_session","row_contract","sorting"]);function Mi(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function qC(e,t){let n=e;for(let r of t.split(".")){if(!Mi(n))return;n=n[r]}return n}function Hc(e,t,n){let r=t.split("."),o={...e},i=e,s=o;for(let a of r.slice(0,-1)){let c=i[a],l={...c};s[a]=l,i=c,s=l}return s[r.at(-1)]=n,o}function km(e,t,n){let r=Me(e).find(i=>i.path===t);if(!r)return e;let o=Array.isArray(r.value)?r.value.slice(n):Object.fromEntries(Object.entries(r.value).slice(n));return Hc(e,t,o)}function Wc(e){let t=e.row_contract;return Mi(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 Me(e){return Wc(e).flatMap(t=>{let n=qC(e,t);return Array.isArray(n)||Mi(n)?[{path:t,value:n}]:[]})}function xm(e){let t=Me(e),n=new Set(t.map(o=>o.path)),r=(o,i)=>{if(Array.isArray(o)){n.has(i)||t.push({path:i,value:o}),o.forEach((s,a)=>r(s,`${i}.${a}`));return}if(Mi(o))for(let[s,a]of Object.entries(o))i.length===0&&zC.has(s)||r(a,i.length===0?s:`${i}.${s}`)};return r(e,""),t}function Fi(e){return Me(e).reduce((t,n)=>t+(Array.isArray(n.value)?n.value.length:Object.keys(n.value).length),0)}function Qr(e,t){let n=e;for(let r of Me(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=Hc(n,r.path,o)}return n}function Cm(e,t){let n=e,r=!1;for(let o of Me(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=Hc(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]="818ca284-2aaa-5d35-b280-8c963d443b0c")}catch{}})();var Om=[...He],Im=[...xn],Rm=[...Do],VC=[...Lo],GC=[...Po],Nm=[...Mo],Zr=["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"],DV=["ancestors","descendants","predecessors","successors","paths","impact","analyze","audit","communities","redundancy","dominators","slack","centrality","articulation","plan","index"],Dm=["init","install","uninstall","explore","manage","describe","reload","doctor","catalog","adopt","adopt-all","activate","deactivate"],Kc={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."},lt=Object.freeze(Zr.flatMap(e=>e in Kc?[]:e==="extension"||e==="package"?[...Dm.map(t=>`${e}-${t}`),e]:[e]));function BC(e=Zr,t=lt,n=Kc){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 HC(e){return lt.includes(e)}function WC(e){return Om.includes(e)}function KC(e){return Im.includes(e)}function YC(e){return Rm.includes(e)}function XC(e){return Nm.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 Lm=["full","compact","brief","summary","counts"],JC=["mutation","read","discovery","governance"],QC=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"]),ZC=new Set(["contracts","extension","help","install","package","packages","profile","upgrade"]),eO=new Set(["gc","health","merge","stats","telemetry","test","test-all","validate"]),tO={mutation:2e3,read:4e3,discovery:3e3,governance:6e3},nO=3,rO=2;function Pm(e){let[t=""]=e.trim().split(/\s+/u);return QC.has(t)?"mutation":ZC.has(t)?"discovery":eO.has(t)?"governance":"read"}function Yc(e,t=Pm(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=tO[t];return Mm({command:n,budget_class:t,default_max_estimated_tokens:r,default_max_estimated_tokens_by_format:{toon:r,json:Math.ceil(r*nO/rO)},degradation_ladder:Lm,allows_unbounded_opt_out:!0,token_estimate:"ceil(utf8_bytes / 4)"})}function Mm(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 Fm=Zr.map(e=>Yc(e)),oO=new Map(Fm.map(e=>[e.command,e]));function Xc(e,t={}){let n=e.trim().replace(/\s+/gu," "),[r]=n.split(" "),o=oO.get(r);return o?{...o,command:n}:t.generateFallback?Yc(n):null}function eo(e){return Math.ceil(Math.max(0,e)/4)}import{createHash as zO}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]="737ac274-c165-5d1a-8b8e-cb5d57a81c46")}catch{}})();var iO=8,sO=64;function Qc(e){return Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4)}function aO(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Jc(e,t){return typeof e=="string"?e.length<=240?e:(t.compacted=!0,`${e.slice(0,240)}\u2026`):Array.isArray(e)?e.map(n=>Jc(n,t)):aO(e)?Object.fromEntries(Object.entries(e).map(([n,r])=>[n,Jc(r,t)])):e}function pn(e,t){let n=t.estimated_tokens;for(let r=0;r<iO;r+=1){t.estimated_tokens=n;let o=Qc(e);if(o===n)return;n=o}t.estimated_tokens=n}function cO(e,t,n,r){for(let o=0;o<sO;o+=1){if(pn(e,t),t.estimated_tokens<=n)return;let i=xm(e).filter(a=>(Array.isArray(a.value)?a.value.length:Object.keys(a.value).length)>Math.max(1,r.get(a.path)??0)).map(a=>({collection:a,length:Array.isArray(a.value)?a.value.length:Object.keys(a.value).length})).sort((a,c)=>c.length-a.length||a.collection.path.localeCompare(c.collection.path))[0]?.collection;if(!i)return;let s=Math.max(1,r.get(i.path)??0);if(Array.isArray(i.value))i.value.splice(-Math.min(i.value.length-s,Math.max(1,Math.ceil(i.value.length/2))));else{let a=Object.keys(i.value);for(let c of a.slice(-Math.min(a.length-s,Math.max(1,Math.ceil(a.length/2)))))delete i.value[c]}t.rows_compacted=!0,t.compacted_row_paths=[...new Set([...t.compacted_row_paths??[],i.path])].sort((a,c)=>a.localeCompare(c)),e.has_more=!0,e.truncated=!0,typeof e.count=="number"&&(e.count=Fi(e))}}function $m(e,t,n,r=new Map){let o={compacted:!1},i=Jc(e,o);return t.strings_compacted=o.compacted,i.read_output=t,cO(i,t,n,r),pn(i,t),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]="642f6dec-c0b2-5377-a401-dfa4f8ef6a2a")}catch{}})();var Zc=256,to=1e4,lO=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$/u,dO=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/u,uO=new Set(["version","id","token_budget","spent_tokens","seen_item_ids"]),fO=[{valid:e=>e.version===1,reason:"version must equal 1."},{valid:e=>typeof e.id=="string"&&lO.test(e.id),reason:"id must be 1-64 portable identifier characters."},{valid:e=>Number.isSafeInteger(e.token_budget)&&e.token_budget>=Zc,reason:`token_budget must be a safe integer of at least ${Zc}.`},{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<=to&&e.seen_item_ids.every(t=>typeof t=="string"&&dO.test(t)),reason:`seen_item_ids must contain at most ${to} portable item identifiers.`}];function ji(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function $i(e){throw new h(`--output-session ${e}`,_.USAGE,{code:"invalid_read_output_session",field:"outputSession"})}function Ui(e){if(e===void 0)return;let t=e;if(typeof e=="string")try{t=JSON.parse(e)}catch{$i("must be a valid JSON object.")}ji(t)||$i("must be a JSON object.");let n=Object.keys(t).filter(i=>!uO.has(i));n.length>0&&$i(`contains unknown field "${n.sort()[0]}".`);let r=fO.find(i=>!i.valid(t));r!==void 0&&$i(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 jm(e){if(ji(e))return typeof e.id=="string"?e.id:typeof e.item_id=="string"?e.item_id:ji(e.item)&&typeof e.item.id=="string"?e.item.id:void 0}function pO(e){let t=new Set,n=0;for(let r of Me(e)){let o=Array.isArray(r.value)?r.value:Object.values(r.value);for(let i of o){if(!ji(i))continue;if(typeof i.context_ref=="string"){n+=1;continue}let s=jm(i);s!==void 0&&t.add(s)}}return{deliveredIds:t,suppressedRepeatCount:n}}function Um(e,t){let n=new Set(t.seen_item_ids);return Qr(e,r=>{let o=jm(r);return o!==void 0&&n.has(o)?{id:o,context_ref:`session:${t.id}:${o}`}:r})}function el(e,t){let{deliveredIds:n,suppressedRepeatCount:r}=pO(e),o=new Set(t.seen_item_ids),i=[...n].filter(y=>!o.has(y)).sort(),s=i.slice(0,to-t.seen_item_ids.length),a=[...t.seen_item_ids,...s].sort(),c=i.length-s.length,l={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,...c===0?{}:{seen_item_overflow_count:c},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:a}},d={...e,read_session:l},u=y=>{l.spent_this_call_tokens=y,l.charged_this_call_tokens=Math.min(t.token_budget-t.spent_tokens,y),l.spent_total_tokens=Math.min(t.token_budget,t.spent_tokens+l.charged_this_call_tokens),l.remaining_tokens=Math.max(0,t.token_budget-l.spent_total_tokens),l.exhausted=l.remaining_tokens<Zc,l.next_state.spent_tokens=l.spent_total_tokens},p=0,f=0;for(let y=0;y<8;y+=1){u(p);let g=Math.ceil(Buffer.byteLength(JSON.stringify(d),"utf8")/4);if(g===p)return d;f=Math.max(f,g),p=g}return u(f),d}function zm(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]="e9621264-0180-53cf-862f-b59640b971da")}catch{}})();var Kn=["include","amount","cost","encoding"],Ym=["list","context","search","get","next","health","deps","graph","history","activity","validate","events","contracts","comments","notes","files","docs","stats","aggregate","package-manage","comments-audit","assurance"],Xm=["canonical","legacy","intent","default"],ol={include:"--output-include",amount:"--output-limit",cost:"--output-budget",encoding:"--output-format"},Jm=Object.freeze(Kn.map(e=>ol[e])),Qm=Object.freeze(["--output-session","--output-cursor","--output-row-contract"]),Zm={list:{include:["--brief","--compact","--fields","--full"],amount:["--after","--limit","--no-truncate"],cost:["--token-budget"],encoding:["--format","--stream"]},context:{include:["--fields","--section"],amount:["--after","--depth","--limit"],cost:["--token-budget"],encoding:["--format"]},search:{include:["--compact","--fields","--full"],amount:["--after","--limit"],cost:["--token-budget"],encoding:["--format"]},get:{include:["--fields","--full"],amount:["--depth"],cost:["--token-budget"],encoding:["--format"]},next:{amount:["--blocked-limit","--limit"],cost:["--token-budget"],encoding:["--format"]},health:{include:["--brief","--check-only","--full","--summary"]},deps:{include:["--collapse","--full","--summary"],amount:["--edge-limit","--max-depth","--node-limit"],cost:["--token-budget"],encoding:["--format"]},graph:{include:["--full","--summary"],amount:["--after","--limit","--max-depth","--max-paths"]},history:{include:["--compact","--full"],amount:["--limit"],encoding:["--format"]},activity:{include:["--compact","--full"],amount:["--limit","--unbounded"],encoding:["--stream"]},validate:{include:["--counts","--full"]},events:{include:["--full"],amount:["--limit"],encoding:["--follow"]},contracts:{include:["--full","--summary"]},comments:{amount:["--limit"]},notes:{amount:["--limit"]},files:{amount:["--limit","--no-truncate","--offset"]},docs:{},stats:{},aggregate:{},"package-manage":{},"comments-audit":{},assurance:{}},eg=new Set(["--collapse","--fields","--section"]),il=Object.freeze({"--after":"--after retains cursor-position semantics; use --output-limit <n> separately to bound returned rows.","--check-only":"--check-only retains health side-effect semantics; --output-include does not suppress vector refresh.","--collapse":"--collapse retains dependency grouping semantics; --output-include does not replace it.","--depth":"--depth retains traversal or detail-depth semantics; --output-limit does not replace it.","--follow":"--follow retains event-tail semantics; --output-format does not enable following.","--max-depth":"--max-depth retains graph traversal-depth semantics; --output-limit does not replace it.","--max-paths":"--max-paths retains graph path-search semantics; use --output-limit separately to bound returned rows.","--no-truncate":"--no-truncate is a compatibility alias; prefer --output-limit unbounded.","--offset":"--offset retains positional pagination semantics; use --output-limit separately to bound returned rows.","--stream":"--stream retains command streaming semantics; --output-format selects only static result encoding.","--unbounded":"--unbounded is a compatibility alias; prefer --output-limit unbounded."});function sl(e){return e.slice(2).replaceAll("-","_")}function mO(e,t){let n=il[e];if(n!==void 0)return n;let r=t==="include"?eg.has(e)?"<csv>":sl(e):t==="amount"?"<n>":t==="cost"?"<tokens>":"<toon|json>";return`${e} is a compatibility alias; prefer ${ol[t]} ${r}.`}function gO(e){let t=Zm[e],n=Object.freeze(Object.fromEntries(Kn.map(r=>[r,Object.freeze({dimension:r,canonical_option:ol[r],applicable:!0,inapplicable_reason:null,legacy_aliases:Object.freeze((t[r]??[]).map(o=>Object.freeze({flag:o,semantics:il[o]===void 0?"replacement":"behavior_preserving",migration_hint:mO(o,r),visibility:"hidden_alias"})))})])));return Object.freeze({command:e,dimensions:n,precedence:Xm,budget_retention_policy:e==="assurance"?"verdict_priority":"ordered_prefix"})}var _O=Object.freeze(Ym.map(gO)),yO=new Map(_O.map(e=>[e.command,e]));function dt(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 Ym.includes(r)?r:void 0}var hO=["outputInclude","output_include","outputLimit","output_limit","outputBudget","output_budget","outputFormat","output_format","outputSession","output_session","outputCursor","output_cursor","outputRowContract","output_row_contract"],bO={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 wO(e){return hO.some(t=>e[t]!==void 0)}var EO=[{keys:["outputInclude","output_include"],valid:e=>zi(e)!==void 0,message:"--output-include requires at least one comma-separated field or section."},{keys:["outputLimit","output_limit"],valid:e=>e==="unbounded"||Yn(e)!==void 0,message:"--output-limit must be a positive integer or unbounded."},{keys:["outputBudget","output_budget"],valid:e=>e==="unbounded"||Yn(e)!==void 0,message:"--output-budget must be a positive integer or unbounded."},{keys:["outputFormat","output_format"],valid:e=>e==="toon"||e==="json",message:"--output-format must be toon or json."},{keys:["outputSession","output_session"],valid:e=>(Ui(e),!0),message:"--output-session must be a valid session-state object."},{keys:["outputCursor","output_cursor"],valid:e=>typeof e=="string"&&e.trim().length>0,message:"--output-cursor requires a non-empty continuation cursor."}];function JV(e,t){if(!wO(t))return;let n=dt(e);if(!n)throw new h(`Universal output controls apply only to read commands; ${e||"this command"} is not a read surface.`,_.USAGE);if((bO[n]??[]).some(r=>t[r]!==void 0&&t[r]!==!1))throw new h(`Universal output controls cannot be combined with a ${n} mutation.`,_.USAGE);for(let r of EO){let o=r.keys.map(i=>t[i]).find(i=>i!==void 0);if(o!==void 0&&!r.valid(o))throw new h(r.message,_.USAGE)}}function tg(e){let t=dt(e);return t?new Map((Zm[t].include??[]).filter(n=>!eg.has(n)&&il[n]===void 0).map(n=>[sl(n),ng(n)])):new Map}function vO(e,t,n){let r=zi(t)??[],o=tg(e),i=[],s=[];for(let a of r){let c=o.get(a);if(c===void 0){i.push(a);continue}n[c]=!0,s.push(a)}return{selectors:i,modes:s}}function QV(e,t){let n=t.outputInclude??t.output_include;if(n===void 0)return;let{selectors:r,modes:o}=vO(e,n,t);if(o.length===0)return;let i=r.length>0?r.join(","):void 0;t.outputInclude=i,Object.hasOwn(t,"output_include")&&(t.output_include=i)}function ng(e){return e.slice(2).replace(/-([a-z])/gu,(t,n)=>n.toUpperCase())}function TO(e,t){let n=ng(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 AO(e){return e!==void 0&&e!==!1&&e!==null}function zi(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 Yn(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 SO(e,t,n){for(let r of e.legacy_aliases){let o=TO(t,r.flag),i={value:o,flag:r.flag};if(AO(o)&&n(i))return i}}function qm(e,t){let n=zi(e);if(n)return{source:"canonical",value:n};if(t)return{source:"legacy",value:zi(t.value)??[sl(t.flag)]}}function Vm(e,t){if(e==="unbounded")return{source:"canonical",value:"unbounded"};let n=Yn(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=Yn(t.value);return r===void 0?void 0:{source:"legacy",value:r}}function Gm(e,t){if(e==="unbounded")return{source:"canonical",value:"unbounded"};let n=Yn(e);if(n!==void 0)return{source:"canonical",value:n};if(!t)return;let r=Yn(t.value);return r===void 0?void 0:{source:"legacy",value:r}}function Bm(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 rg(e,t){let n=dt(e);if(!n)return;let r=yO.get(n),o={include:f=>qm(void 0,f),amount:f=>Vm(void 0,f),cost:f=>Gm(void 0,f),encoding:f=>Bm(void 0,f)},i=Object.fromEntries(Kn.map(f=>[f,SO(r.dimensions[f],t,y=>o[f](y)!==void 0)])),s=Kn.flatMap(f=>{let y=i[f];return y?[y.flag]:[]}),a=Kn.flatMap(f=>{let y=i[f];return y?[r.dimensions[f].legacy_aliases.find(b=>b.flag===y.flag).migration_hint]:[]}),c=Bm(t.outputFormat??t.output_format,i.encoding),l=Gm(t.outputBudget??t.output_budget,i.cost),d=e.trim().toLowerCase().replaceAll(/\s+/gu," ").split(" ")[0]==="list-all"||i.amount?.flag==="--no-truncate"||i.include?.flag==="--full",u=Xc(e,{generateFallback:!0}),p=c?.value==="json"||t.resolvedOutputFormat==="json"?"json":"toon";return{command:n,include:qm(t.outputInclude??t.output_include,i.include),amount:Vm(t.outputLimit??t.output_limit,i.amount),cost:l??(d?{source:"intent",value:"unbounded"}:{source:"default",value:u.default_max_estimated_tokens_by_format[p]}),encoding:c,legacy_aliases_used:s,migration_hints:a,precedence:Xm}}function Nt(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}var al=new Set(["applied_bound","applied_limit","completeness","continuation_kind","continuation_path","continuation_contract","count","filters","has_more","next_cursor","now","omission_receipt","projection","budget_retention_policy","row_contract","sorting","total","truncated"]),kO=["collection_counts","notes_count","tests_count"];function og(e,t){let n=new Set(t.map(r=>r.split(".")[0]));return Object.fromEntries(Object.entries(e).filter(([r])=>n.has(r)))}function xO(e){let t=Nt(e.item)?e.item:{},n=[...new Set([...Object.keys(t),...kO.filter(o=>Object.hasOwn(t,o))])].sort((o,i)=>o.localeCompare(i)),r=Object.keys(e).filter(o=>o!=="item"&&o!=="read_output"&&!al.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 CO(e,t){let n=xO(e),r=t.filter(u=>!n.valid.includes(u));if(r.length>0)throw new h(`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 h("--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])=>al.has(u)||s.has(u)));o?a.item=n.item:i.length>0&&(a.item=og(n.item,i));let c=[...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=[...Nt(a.omission_receipt)&&Array.isArray(a.omission_receipt.omitted_field_groups)?a.omission_receipt.omitted_field_groups:[],...c];return a.omission_receipt={has_omissions:d.length>0,omitted_field_group_count:d.length,omitted_field_groups:d},a}function Hm(e){let t=0;return Qr({...e},n=>(Nt(n)&&Object.keys(n).length>0&&(t+=1),n)),t}function OO(e,t,n,r){if(Hm(t)===0||Hm(n)>0)return;let o=[...tg(e).keys()],i=o.length>0?` Declared ${e} projection modes: ${o.join(", ")}.`:` The ${e} surface declares no projection modes; name row fields instead.`;throw new h(`Unknown --output-include selector(s) for ${e}: ${r.join(", ")}. No selector matched any returned row field.${i}`,_.USAGE)}function IO(e,t,n){if(e==="get")return CO(t,n);let r=Wc(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},a=o.length>0?o:n,c=Qr(s,l=>Nt(l)?og(l,a):l);return OO(e,t,c,a),c}return Object.fromEntries(Object.entries(t).filter(([s])=>n.some(a=>a.split(".")[0]===s)||al.has(s)))}function RO(e,t){if(t==="unbounded")return e;let{result:n,truncated:r}=Cm(e,t);return r&&(n.has_more=!0,n.truncated=!0,typeof n.count=="number"&&(n.count=Fi(n)),n.applied_bound={kind:"output_limit",source:"explicit",value:t}),n}function NO(e){return Kn.filter(t=>e[t]!==void 0&&e[t]?.source!=="default")}function qi(e,t,n){let r=el(e,t);for(let o=0;o<8;o+=1){let i=n.estimated_tokens,s=r.read_session.spent_this_call_tokens;pn(r,n),r=el(r,t);let a=r.read_session.spent_this_call_tokens;if(n.estimated_tokens===i&&a===s)return r}return r}function ig(e,t){if(!Nt(e.read_output))return e;let n=e.read_output,r=Ui(t.outputSession??t.output_session);return r===void 0?(pn(e,n),e):qi(e,r,n)}function DO(e,t,n,r){let o={...e};return t.include?.source==="canonical"&&(o=IO(t.command,o,t.include.value)),t.command==="assurance"&&(o=Wm(o)),o=Km(o,t.command,r),t.amount?.source==="canonical"&&(o=RO(o,t.amount.value)),n===void 0?o:Um(o,n)}function LO(e,t){return[...e.cost!==void 0&&e.cost.value!=="unbounded"&&(e.cost.source==="canonical"||e.cost.source==="default")?[{source:e.cost.source,tokens:e.cost.value}]:[],...t===void 0?[]:[{source:"session",tokens:zm(t)}]].sort((r,o)=>r.tokens-o.tokens)[0]}function PO(e,t,n,r,o){let i={contract_version:1,command:e.command,requested_dimensions:t,...r.source==="default"?{budget_source:r.source,budget_tokens:r.tokens}:{},precedence:e.precedence,legacy_aliases_used:[],migration_hints:[],estimated_tokens:0,within_budget:!1,strings_compacted:!1,rows_compacted:!1,result_omitted:!0,...n===void 0?{omitted_result_estimated_tokens:o}:{}},s={output_budget_exceeded:{omitted_result:!0,reason:"requested_budget_infeasible",restore_with:"Unbounded",recovery:{outputBudget:"unbounded"}},read_output:i},a=n===void 0?s:qi(s,n,i);if(n===void 0&&pn(a,i),n!==void 0&&i.estimated_tokens>r.tokens)throw new h("The remaining output-session budget cannot fit its mandatory receipts; start a new session with a larger token_budget.",_.USAGE);return a}function MO(e,t,n,r){if(n!==void 0)return!1;let o=t.filter(i=>e[i]?.source==="canonical").length;return e.cost?.value==="unbounded"?o===(e.cost.source==="canonical"?1:0):e.cost?.source==="legacy"&&o===0?!0:o===0&&(e.cost===void 0||Qc(r)<=e.cost.value)}function FO(e,t,n,r,o,i){if(!n.rows_compacted)return;let s=t.amount?.value==="unbounded"?["amount"]:[],a=new Map(Me(e).map(d=>[d.path,Array.isArray(d.value)?d.value.length:Object.keys(d.value).length])),c=[...i.entries()].flatMap(([d,u])=>{let p=a.get(d);if(p>=u.rows)return[];let f=u.baseOffset+p;return[{path:d,cursor:nl({command:t.command,path:d,offset:f,total_rows:u.totalRows,fingerprint:u.fingerprint}),retained_rows:p,remaining_rows:u.totalRows-f,total_rows:u.totalRows}]}),l=c[0];l&&typeof e.next_cursor!="string"&&(e.next_cursor=l.cursor),e.continuation_kind=o?"producer_cursor":l?"output_cursor":"none",e.output_budget_truncation={reason:"output_budget_reached",budget_source:r.source,budget_tokens:r.tokens,overridden_dimensions:s,compacted_row_paths:n.compacted_row_paths,continuation_cursor_rebased:o,continuation_available:c.length>0,recovery_budget_multiplier:1,continuations:c,restore_with:l?"Use recovery binding.":"Increase --output-budget because no declared row collection can be continued.",recovery:l?{cursor:l.cursor,cli:"--output-cursor",sdk:"outputCursor",mcp:"outputCursor"}:{cli:"--output-budget 1200",sdk:{outputBudget:1200},mcp:{outputBudget:1200}}}}function $O(e,t,n,r){if(typeof n!="string"||!Array.isArray(e.items))return!1;let o=e.items.length;if(o===0||o>=t)return!1;let i;try{i=Gc(n)}catch{return!1}let s=i.after_index;if(s===void 0)return!1;let a=e.items.at(-1);if(Object.prototype.toString.call(a)!=="[object Object]")return!1;let c=Reflect.get(a,"id");if(typeof c!="string"||c.length===0)return!1;let l=r?s-(t-o):s+o;return l<0?!1:(e.next_cursor=Jr(i.fingerprint,c,l,i.snapshot),typeof e.applied_limit=="number"&&(e.applied_limit=o),!0)}function jO(e,t,n){let r=new Map(Me(e).map(i=>{let s=Array.isArray(i.value)?i.value.length:Object.keys(i.value).length,a=t?.path===i.path;return[i.path,{rows:s,totalRows:a?t.total_rows:s,baseOffset:a?t.offset:0,fingerprint:a?t.fingerprint:tl(i.path,i.value)}]})),o=typeof e.next_cursor=="string";return{collectionsBeforeBudget:r,originalItemCount:Array.isArray(e.items)?e.items.length:0,cursorContinuesExistingPage:o,cursorSource:o?e.next_cursor:n.after}}function UO(e,t,n,r,o,i){let s=t.command==="assurance"&&Array.isArray(e.assertions)?e.assertions.filter(l=>Nt(l)&&l.verdict!=="pass").length:0,a=$m(e,n,r.tokens,s>0?new Map([["assertions",s]]):new Map),c=$O(a,i.originalItemCount,i.cursorSource,i.cursorContinuesExistingPage);return FO(a,t,n,r,c,i.collectionsBeforeBudget),o!==void 0&&(a=qi(a,o,n)),a}function sg(e,t,n){let r=rg(e,t);if(!r)return n;let o=Ui(t.outputSession??t.output_session),i=t.outputCursor??t.output_cursor,s=typeof i=="string"?rl(i):void 0,a=NO(r);if(s===void 0&&MO(r,a,o,n))return n;let c=LO(r,o),l=DO(n,r,o,s),d=jO(l,s,t),u={contract_version:1,command:r.command,requested_dimensions:a,...c?.source==="default"?{budget_source:c.source,budget_tokens:c.tokens}:{},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};return l.read_output=u,l=o===void 0?l:qi(l,o,u),pn(l,u),c!==void 0&&u.estimated_tokens>c.tokens&&(l=UO(l,r,u,c,o,d)),c!==void 0&&u.estimated_tokens>c.tokens?PO(r,a,o,c,u.estimated_tokens):l}function ag(e){return Nt(e)&&Nt(e.output_budget_exceeded)&&e.output_budget_exceeded.omitted_result===!0&&e.output_budget_exceeded.reason==="requested_budget_infeasible"}function cg(e,t){let n=rg(e,t)?.encoding;return n?.value==="json"||n?.value==="toon"?n.value: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]="8e523bbc-5745-514e-a1d8-a6ad6ece001a")}catch{}})();var qO=4096;function cl(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function tl(e,t){let n=Array.isArray(t)?t.map((r,o)=>{if(!cl(r))return`index:${String(o)}`;for(let i of["id","assertion_id","measurement_id","event_id"]){let s=r[i];if(typeof s=="string"&&s.length>0)return`${i}:${s}`}return`index:${String(o)}`}):Object.keys(t);return zO("sha256").update(JSON.stringify({path:e,identities:n})).digest("base64url").slice(0,16)}function nl(e){return Buffer.from(JSON.stringify({v:1,c:e.command,p:e.path,o:e.offset,n:e.total_rows,f:e.fingerprint}),"utf8").toString("base64url")}function rl(e){if(e.length>qO)throw new h("The read-output continuation cursor is malformed or unsupported.",_.USAGE,{code:"read_output_cursor_invalid"});let t;try{t=JSON.parse(Buffer.from(e,"base64url").toString("utf8"))}catch{t=null}if(!cl(t)||t.v!==1||dt(String(t.c??""))!==t.c||typeof t.p!="string"||t.p.length===0||!Number.isSafeInteger(t.o)||t.o<0||!Number.isSafeInteger(t.n)||t.n<1||typeof t.f!="string"||t.f.length===0)throw new h("The read-output continuation cursor is malformed or unsupported.",_.USAGE,{code:"read_output_cursor_invalid"});return{version:1,command:t.c,path:t.p,offset:t.o,total_rows:t.n,fingerprint:t.f}}function Wm(e){if(!Array.isArray(e.assertions))return e;let t=n=>!cl(n)||n.verdict==="pass"?4:n.verdict==="retired"?3:n.enforcement==="block"?0:n.enforcement==="warn"?1:2;return{...e,assertions:e.assertions.map((n,r)=>({row:n,index:r})).sort((n,r)=>t(n.row)-t(r.row)||n.index-r.index).map(({row:n})=>n),budget_retention_policy:"verdict_priority"}}function Km(e,t,n){if(!n)return e;if(n.command!==t)throw new h(`The read-output cursor belongs to ${n.command}, not ${t}.`,_.USAGE,{code:"read_output_cursor_command_mismatch"});let r=Me(e).find(i=>i.path===n.path),o=r?Array.isArray(r.value)?r.value.length:Object.keys(r.value).length:0;if(!r||o!==n.total_rows||n.offset>o||tl(n.path,r.value)!==n.fingerprint)throw new h("The read-output continuation no longer matches the declared row collection; restart the bounded read.",_.USAGE,{code:"read_output_cursor_stale"});return km(e,n.path,n.offset)}import{AsyncLocalStorage as VO}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]="fa03d543-ff0d-5556-8558-9bed82838a58")}catch{}})();var dg=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"}]),ug=new VO;function GO(){return ug.getStore()??dg}function p2(e,t){return ug.run(HO(e.workspaceContracts,e.packageContracts),t)}function BO(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 HO(e=[],t=[]){let n=[{source:"core",contracts:dg,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=BO(s,i.source),c=`${a.command}:${a.intent}`;if(o.has(c))throw new TypeError(`Duplicate context intent declaration: ${c}`);if(o.add(c),!i.allowOverride&&r.has(c))throw new TypeError(`Duplicate context intent declaration: ${c}`);r.set(c,a)}}return[...r.values()].sort((i,s)=>i.command.localeCompare(s.command)||i.intent.localeCompare(s.intent))}function fg(e,t,n=GO()){let r=e.trim().toLowerCase(),o=t.trim().toLowerCase(),i=n.find(l=>l.command===r&&l.intent===o);if(i)return{...i,source:i.source??"core"};let s=n.filter(l=>l.command===r).map(l=>l.intent);if(s.length===0)return;let a=s.map(l=>{let d=Array.from({length:o.length+1},(u,p)=>p);for(let u=1;u<=l.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+(l[u-1]===o[f-1]?0:1)),p=y}}return{candidate:l,distance:d[o.length]}}).sort((l,d)=>l.distance-d.distance||l.candidate.localeCompare(d.candidate))[0].candidate,c=`pm ${r} --for ${a}`;throw new h(`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:[c],recovery:{recovery_mode:"compact",attempted_command:`pm ${r} --for ${o}`,suggested_retry:c}})}var pg={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=Gi(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=Gi(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=Gi(e.tokenBudget,t.token_budget),o=Math.max(2,Math.floor((r-480)/16));e.limit=String(n?o:Math.min(100,o))}}};function m2(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 h("--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=fg(e,t.for),o=dl(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)),pg[e](i,r,o),i}var WO={context:"bounded_sections",get:"standard_item",list:"bounded_fields_and_rows",next:"bounded_ranked_rows",search:"bounded_ranked_rows"},Vi=256;function ll(e){return Array.isArray(e)?e.map(ll):e!==null&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,n])=>[t,ll(n)])):typeof e=="string"&&e.length>240?`${e.slice(0,240)}\u2026`:e}function dl(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 Gi(e,t){let n=dl(e);if(n===void 0)return t;if(n<Vi)throw new h(`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 ut(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 lg={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 mg(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 KO(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 YO(e,t,n){let r=!1;for(;;){if(ut(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 XO(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=mg(i);if(s===void 0)return!1;let a=r.length,c=[...r],l=!1;for(;;){if(l=YO(e,t,r)||l,!l)return!1;let d=KO(r.at(-1));if(d===void 0)return r.splice(0,r.length,...c),ut(e,t),!1;if(e.next_cursor=Jr(s.fingerprint,d,o?s.after_index-(a-r.length):s.after_index+r.length,s.snapshot),ut(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 JO(e,t,n,r){if(e==="list"||e==="search")return XO(t,n,r);if(e!=="next"||typeof t.next_cursor=="string")return!1;let o=!1;for(;;){if(ut(t,n),n.estimated_tokens<=n.token_budget)return o;let i=lg[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=lg[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),c=Buffer.byteLength(JSON.stringify(i.rows),"utf8"),l=Math.max(1,Math.ceil(c/i.rows.length)),d=(n.estimated_tokens-n.token_budget)*4,u=Math.min(a,Math.max(1,Math.ceil(d/l)));i.rows.splice(-u,u),o=!0}}function QO(e,t,n){if(typeof t.for!="string")return n;let r=e.startsWith("list-")?"list":e;if(!(r in pg))return n;let o=r,i=fg(o,t.for),s={command:o,intent:i.intent,source:i.source,included_field_groups:[...i.included_field_groups],token_budget:Gi(t.tokenBudget??t.token_budget,i.token_budget),estimated_tokens:0,within_budget:!0,degradation:WO[o],declaration_feasible:!0,result_omitted:!1},a={...n};if(o==="list"||o==="search"){let l=o==="list"?520:480,d=Math.max(2,Math.floor((s.token_budget-l)/16)),p=dl(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 c={...a,context_intent:s};return ut(c,s),s.estimated_tokens>s.token_budget&&(s.degradation="recursive_budget_compaction",c={...ll(a),context_intent:s},ut(c,s)),s.estimated_tokens>s.token_budget&&JO(o,c,s,t)&&(s.degradation="budget_row_compaction",ut(c,s)),s.estimated_tokens>s.token_budget&&(s.degradation="budget_receipt_only",s.declaration_feasible=!1,s.result_omitted=!0,s.within_budget=!1,c={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},ut(c,s)),c}function ZO(e,t){if(typeof e.after!="string"||e.after.length===0)return t;let n=mg(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 gg(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Xn(e,t){if(gg(e))return typeof e[t]=="number"?e[t]:void 0}function eI(e,t){let n=e;for(let r=0;r<8;r+=1){let o=Xn(n.context_intent,"estimated_tokens"),i=Xn(n.read_output,"estimated_tokens"),s=Xn(n.read_session,"spent_this_call_tokens");if(gg(n.context_intent)&&ut(n,n.context_intent),n=ig(n,t),Xn(n.context_intent,"estimated_tokens")===o&&Xn(n.read_output,"estimated_tokens")===i&&Xn(n.read_session,"spent_this_call_tokens")===s)break}return n}function _g(e,t,n){let r=Tm(e,n),o=typeof r=="object"&&r!==null&&!Array.isArray(r)?sg(e??"",t,ZO(t,QO(e??"",t,r))):r;return t.outputRowContract===!0||t.output_row_contract===!0||typeof o!="object"||o===null||Array.isArray(o)||!Object.hasOwn(o,"row_contract")?o:eI(Object.fromEntries(Object.entries(o).filter(([i])=>i!=="row_contract")),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]="02baf966-46eb-5e19-b7eb-2f9fe05bb263")}catch{}})();var Jn=["result_rows","envelope","diagnostics","hints"],tI=/^(?:items|results|rows|ready|blocked|recommended|decision_needed|children|dependencies|events|matches|commands|tools)$/u,nI=/^(?:diagnostics|errors?|warnings?|findings|violations|failures?)$/u,rI=/^(?:hints?|suggestions?|next_steps?|recovery|remediation|examples?)$/u,oI=8;function ul(e){return Buffer.byteLength(e,"utf8")}function yg(e){return ul(JSON.stringify(e)??"null")}function iI(e,t){return nI.test(e)?"diagnostics":rI.test(e)?"hints":tI.test(e)||Array.isArray(t)?"result_rows":"envelope"}function sI(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"]=yg(e),t;for(let[n,r]of Object.entries(e))t[iI(n,r)]+=yg({[n]:r});return Object.values(t).every(n=>n===0)&&(t.envelope=1),t}function aI(e,t){let n=Jn.reduce((s,a)=>s+t[a],0),r=Jn.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-Jn.reduce((s,a)=>s+o[a],0);for(let s of[...r].sort((a,c)=>c.value-Math.floor(c.value)-(a.value-Math.floor(a.value))||Jn.indexOf(a.section)-Jn.indexOf(c.section))){if(i===0)break;o[s.section]+=1,i-=1}return o}function hg(e,t){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e,token_accounting:t}:{result:e,token_accounting:t}}function bg(e,t){let n=ul(t(e)),r=aI(n,sI(e)),o=Object.fromEntries(Jn.map(a=>[a,{bytes:r[a],estimated_tokens:eo(r[a])}])),i={version:1,measurement_scope:"output_before_token_accounting",estimator:"ceil(utf8_bytes / 4)",total_bytes:n,total_estimated_tokens:eo(n),sections:o,accounting_receipt_bytes:0,accounting_receipt_estimated_tokens:0,excluded_fields:["token_accounting"],section_allocation:"proportional_canonical_json"},s=hg(e,i);for(let a=0;a<oI;a+=1){let c=ul(t(s))-n;if(c===i.accounting_receipt_bytes)return s;i={...i,accounting_receipt_bytes:c,accounting_receipt_estimated_tokens:eo(c)},s=hg(e,i)}return s}import{encode as Tg}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]="202cbb3e-71fe-5701-a1f5-eb515bf56561")}catch{}})();var cI=new Set(Object.values(_)),fl="__pm_native_output",wg=!1;function _e(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function lI(e){return _e(e)&&e[fl]===!0}function dI(e){if(!_e(e)||e[fl]!==!0)return e;let{[fl]:t,...n}=e;return n}function pl(e){return typeof e=="object"&&e!==null&&e.code==="EPIPE"}function uI(){(process.exitCode===void 0||process.exitCode===_.SUCCESS)&&(process.exitCode=_.SUCCESS)}function fI(){(process.exitCode===void 0||process.exitCode===_.SUCCESS)&&(process.exitCode=_.GENERIC_FAILURE)}function ml(e){if(e==="stdout"){uI();return}fI()}function Eg(e){let t=e instanceof Error?e:new Error(String(e));setImmediate(()=>{throw t})}function pI(){wg||(wg=!0,process.stdout.on("error",e=>{if(pl(e)){ml("stdout");return}Eg(e)}),process.stderr.on("error",e=>{if(pl(e)){ml("stderr");return}Eg(e)}))}function Ag(e,t){pI();try{return e==="stdout"?process.stdout.write(t):process.stderr.write(t),!0}catch(n){if(pl(n))return ml(e),!1;throw n}}function ft(e){return Ag("stdout",e)}function no(e){return Ag("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 mI(e){return e===null||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function Sg(e){if(e.length===0||!e.every(_e))return!1;let t=Object.keys(e[0]);return t.length>0&&e.every(n=>Object.keys(n).length===t.length&&t.every(r=>Object.hasOwn(n,r)&&mI(n[r])))}function kg(e,t){let n=" ".repeat(t);return e.split(`
|
|
14
|
+
`).map(r=>`${n}${r}`).join(`
|
|
15
|
+
`)}function gI(e,t,n){let r=" ".repeat(n);return!_e(t)&&!Array.isArray(t)?`${r}${e}: ${gl(t)}`:Array.isArray(t)&&t.length===0?`${r}${e}: []`:Array.isArray(t)&&Sg(t)?kg(Tg({[e]:t}),n):_e(t)&&Object.keys(t).length===0?`${r}${e}: {}`:`${r}${e}:
|
|
16
|
+
${_l(t,n+1)}`}function Bi(e){if(e!=null){if(Array.isArray(e)){let t=e.map(n=>Bi(n)).filter(n=>n!==void 0);return t.length>0?t:void 0}if(_e(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=Bi(r);o!==void 0&&(t[n]=o)}return Object.keys(t).length>0?t:void 0}return e}}function _l(e,t){let n=" ".repeat(t);if(Array.isArray(e))return e.length===0?"[]":Sg(e)?kg(Tg(e),t):e.map(r=>{if(!_e(r)&&!Array.isArray(r))return`${n}- ${gl(r)}`;let i=_l(r,t+1).split(`
|
|
17
|
+
`),[s,...a]=i;return a.length===0?`${n}- ${s.trimStart()}`:`${n}- ${s.trimStart()}
|
|
18
|
+
${a.join(`
|
|
19
|
+
`)}`}).join(`
|
|
20
|
+
`);if(_e(e)){let r=Object.entries(e);return r.length===0?"{}":r.map(([o,i])=>gI(o,i,t)).join(`
|
|
21
|
+
`)}return`${n}${gl(e)}`}function _I(e){if(!_e(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=_e(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(`
|
|
22
|
+
`)}
|
|
23
|
+
`;for(let r of e.events){if(!_e(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(`
|
|
24
|
+
`)}
|
|
25
|
+
`}function yI(e){return e.json===!0||e.json===void 0&&e.defaultOutputFormat==="json"?"json":"toon"}var hI=new Set(["filters","now","projection","sorting"]);function bI(e){let t=Bi(e);if(!_e(t)||!Array.isArray(t.items))return t??null;let n=Object.fromEntries(Object.entries(t).filter(([r])=>!hI.has(r)));return n.has_more!==!0&&delete n.next_cursor,n}function wI(e,t){if(!_e(e)||!Array.isArray(e.run_results)||!e.run_results.every(_e))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:c,stderr:l,...d}=s;return o===void 0?s:!t||s.status!=="passed"?{...d,stdout:c,stderr:l}:d});return{...e,...o===void 0?{}:{execution_context:o},run_results:i}}function vg(e,t){if(t==="json")return`${JSON.stringify(e,null,2)}
|
|
26
|
+
`;let n=Bi(e);return n===void 0?`{}
|
|
27
|
+
`:`${_l(n,0)}
|
|
28
|
+
`}function EI(e,t,n,r){let o=t?{handled:!1,result:e,warnings:[]}:ic("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&&no(`Warning: ${i}. Returning context.payload now declines safely for compatibility; migrate the override to declineServiceOverride() or { handled: false }.
|
|
29
|
+
`),o.handled&&typeof o.result=="string"?{result:o.result,rendered:o.result.endsWith(`
|
|
30
|
+
`)?o.result:`${o.result}
|
|
31
|
+
`}:{result:o.handled?o.result:e,rendered:null}}function vI(e,t,n){let r=Cp(),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],["outputCursor",n.outputCursor],["outputRowContract",n.outputRowContract]].filter(g=>g[1]!==void 0))},s=cg(o??"",i)??yI(n),a={...i,resolvedOutputFormat:s},c={...n,command:o,commandOptions:a},l=EI(e,t,c,s);if(l.rendered!==null)return l.rendered;let d=l.result,u=o==="test"?wI(d,n.lean===!0):d,p=_g(o,a,u);ag(p)&&(process.exitCode||=_.USAGE);let f=g=>{if(s==="toon"){let E=_I(g);if(E!==null)return E}let b=t?{rendered:null}:Ip(s,g);return b.rendered!==null?b.rendered.endsWith(`
|
|
32
|
+
`)?b.rendered:`${b.rendered}
|
|
33
|
+
`:s==="json"?vg(n.lean===!0?bI(g):g,"json"):vg(g,"toon")},y=n.tokenAccounting===!0?bg(p,f):p;return f(y)}function TI(e,t){let n=Op(e),r=ym(n.result)?n.result:null,o=lI(n.result),i=r?r.result:dI(n.result);return zn(i),r?"":vI(i,o,t)}function xg(e,t){_e(e)&&Number.isInteger(e.exit_code)&&cI.has(Number(e.exit_code))&&(process.exitCode===void 0||process.exitCode===_.SUCCESS)&&(process.exitCode=Number(e.exit_code));let n=t.idOnly?Pi(e,{idOnly:!0}):t.fullChangedFields?e:t.noChangedFields?Pi(e,{changedFields:"compact"}):Pi(e,{compactEnvelope:!0}),r=TI(n,t);t.quiet||ft(r)}function yl(e){let t=ic("error_format",{message:e}),n=t.handled&&typeof t.result=="string"?t.result:e;no(n.endsWith(`
|
|
34
|
+
`)?n:`${n}
|
|
35
|
+
`)}import Mg from"fast-json-patch";import Dt from"node:fs/promises";import pt from"node:path";import{randomUUID as AI}from"node:crypto";import{createRequire as SI}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 kI="history-event-index.sqlite",hl="2";function Ki(e){return pt.join(e,"runtime",kI)}function xI(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}function CI(e,t){let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=22?xI(t):null}var Hi;function bl(){return Hi!==void 0||(Hi=CI(process.versions.node,SI(import.meta.url))),Hi}function OI(e){e.exec(`
|
|
36
|
+
PRAGMA journal_mode = OFF;
|
|
37
|
+
PRAGMA synchronous = OFF;
|
|
38
|
+
CREATE TABLE metadata (
|
|
39
|
+
key TEXT PRIMARY KEY,
|
|
40
|
+
value TEXT NOT NULL
|
|
41
|
+
) STRICT;
|
|
42
|
+
CREATE TABLE events (
|
|
43
|
+
stream_id TEXT NOT NULL,
|
|
44
|
+
stream_offset INTEGER NOT NULL,
|
|
45
|
+
ts TEXT NOT NULL,
|
|
46
|
+
author TEXT NOT NULL,
|
|
47
|
+
agent_harness TEXT,
|
|
48
|
+
agent_instance TEXT,
|
|
49
|
+
op TEXT NOT NULL,
|
|
50
|
+
entry_json TEXT NOT NULL,
|
|
51
|
+
PRIMARY KEY(stream_id, stream_offset)
|
|
52
|
+
) STRICT;
|
|
53
|
+
CREATE INDEX events_order
|
|
54
|
+
ON events(ts, stream_id, stream_offset);
|
|
55
|
+
CREATE INDEX events_op_order
|
|
56
|
+
ON events(op, ts, stream_id, stream_offset);
|
|
57
|
+
CREATE INDEX events_author_order
|
|
58
|
+
ON events(author, ts, stream_id, stream_offset);
|
|
59
|
+
CREATE INDEX events_harness_order
|
|
60
|
+
ON events(agent_harness, ts, stream_id, stream_offset);
|
|
61
|
+
CREATE INDEX events_instance_order
|
|
62
|
+
ON events(agent_instance, ts, stream_id, stream_offset);
|
|
63
|
+
`),e.prepare("INSERT INTO metadata(key, value) VALUES ('version', ?)").run(hl)}function Cg(e,t){e.prepare(`INSERT INTO events(
|
|
64
|
+
stream_id, stream_offset, ts, author, agent_harness,
|
|
65
|
+
agent_instance, op, entry_json
|
|
66
|
+
) 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 N2(e){let t=bl();if(!t)return!1;let n=pt.join(e,"history"),o=(await Dt.readdir(n,{withFileTypes:!0}).catch(c=>{if(typeof c=="object"&&c!==null&&"code"in c&&c.code==="ENOENT")return[];throw c})).filter(c=>c.isFile()&&c.name.endsWith(".jsonl")).sort((c,l)=>c.name.localeCompare(l.name)),i=Ki(e);await Dt.mkdir(pt.dirname(i),{recursive:!0});let s=`${i}.${AI()}.tmp`,a;try{a=new t(s),OI(a),a.exec("BEGIN IMMEDIATE");for(let c of o){let l=c.name.slice(0,-6),d=await Ve(pt.join(n,c.name),l);for(let[u,p]of d.entries())Cg(a,{stream_id:l,stream_offset:u,entry:p})}return a.exec("COMMIT"),a.close(),a=void 0,await Dt.rm(i,{force:!0}),await Dt.rename(s,i),!0}catch(c){throw a?.close(),await Dt.rm(s,{force:!0}),c}}async function Og(e,t){let n=pt.dirname(pt.dirname(e)),r=Ki(n);try{await Dt.access(r)}catch{return}let o=bl();if(!o)return;let i;try{if(i=new o(r),i.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==hl)throw new TypeError("Unsupported history event index version");let a=pt.basename(e,".jsonl"),c=i.prepare("SELECT COALESCE(MAX(stream_offset), -1) + 1 AS value FROM events WHERE stream_id = ?").get(a);Cg(i,{stream_id:a,stream_offset:Number(c.value),entry:t}),i.close()}catch{i?.close(),await Dt.rm(r,{force:!0})}}async function Yi(e){await Dt.rm(Ki(pt.dirname(pt.dirname(e))),{force:!0})}function Wi(e,t,n,r){!r||r.length===0||(e.push(`${n} IN (${r.map(()=>"?").join(", ")})`),t.push(...r))}function II(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 D2(e,t){let n=bl();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)),Wi(r,o,"op",t.ops),Wi(r,o,"author",t.authors),II(r,o,t.harnesses,t.harness_alias_authors),Wi(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);Wi(r,o,"stream_id",t.stream_ids);let i=r.length===0?"":` WHERE ${r.join(" AND ")}`,s;try{if(s=new n(Ki(e),{readOnly:!0}),s.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==hl)return s.close(),null;let c=s.prepare(`SELECT stream_id, stream_offset, entry_json
|
|
67
|
+
FROM events${i}
|
|
68
|
+
ORDER BY ts, stream_id, stream_offset
|
|
69
|
+
LIMIT ?`).all(...o,Math.max(0,Math.floor(t.limit))+1),l=c.length>t.limit,d=c.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:l}}catch{return s?.close(),null}}import wl from"node:fs/promises";import Qn from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="5121b339-6594-58ec-b479-11cbf7dafd27")}catch{}})();var RI=Qn.join("runtime","history-drift-cache.json"),Ig={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 Rg(e){return typeof e=="object"&&e!==null&&"code"in e&&typeof e.code=="string"?e.code:void 0}async function NI(e){let t=Qn.join(e,RI),n=!1,r="invalid_cache_path";try{n=(await wl.stat(await wl.realpath(e))).isDirectory()}catch(o){let i=Rg(o);r=i===void 0?"unknown":Ig[i]??"filesystem_error"}if(!n){no(`[pm] warning: history_drift_cache_invalidation_failed:${r}
|
|
70
|
+
`);return}try{await wl.rm(t,{force:!0})}catch(o){let i=Rg(o);if(ue(o))return;let s=i===void 0?"unknown":Ig[i]??"filesystem_error";no(`[pm] warning: history_drift_cache_invalidation_failed:${s}
|
|
71
|
+
`)}}async function ro(e){let t=Qn.dirname(Qn.resolve(e));Qn.basename(t)==="history"&&await NI(Qn.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]="2fc7f675-3500-5abb-8d5c-9ca9caa803b6")}catch{}})();var DI={front_matter:{},body:""},mt=2,Zn=[1,2];function Xi(e,t){return(e??"").localeCompare(t??"")}function Ng(e,t){return(e??0)-(t??0)}function Lt(e,t,n){return JSON.stringify(e??n).localeCompare(JSON.stringify(t??n))}function LI(e,t){return[e.scope.localeCompare(t.scope),Xi(e.path,t.path),Xi(e.command,t.command),Ng(e.timeout_seconds,t.timeout_seconds),Xi(e.pm_context_mode,t.pm_context_mode),+!!e.shared_host_safe-+!!t.shared_host_safe,Lt(e.env_clear,t.env_clear,[]),Lt(e.env_set,t.env_set,{}),Lt(e.assert_stdout_contains,t.assert_stdout_contains,[]),Lt(e.assert_stdout_regex,t.assert_stdout_regex,[]),Lt(e.assert_stderr_contains,t.assert_stderr_contains,[]),Lt(e.assert_stderr_regex,t.assert_stderr_regex,[]),Ng(e.assert_stdout_min_lines,t.assert_stdout_min_lines),Lt(e.assert_json_field_equals,t.assert_json_field_equals,{}),Lt(e.assert_json_field_gte,t.assert_json_field_gte,{}),Xi(e.note,t.note)].find(r=>r!==0)??0}function PI(e){return!e||e==="/"?[]:e.startsWith("/")?e.slice(1).split("/").map(t=>t.replaceAll("~1","/").replaceAll("~0","~")):[]}function MI(e,t){let n=PI(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 FI(e,t){let n=[],r=structuredClone(e);for(let o of t){let i=o.op==="replace"&&!MI(r,o.path)?{...o,op:"add"}:o;n.push(i),r=Mg.applyPatch(r,[i],!0,!0).newDocument}return n}function El(e,t){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{front_matter:{},body:e.body??""};let r=Le(e),o=t===1&&r.metadata.tests?{...r.metadata,tests:[...r.metadata.tests].sort(LI)}:r.metadata;return{front_matter:x(o,je),body:r.body}}function Dg(e){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{metadata:{},body:e.body??""};let n=Le(e);return{metadata:x(n.metadata,je),body:n.body}}function $I(e){return Qi(e,mt)}function Qi(e,t){if(!Zn.some(n=>n===t))throw new TypeError(`unsupported_item_hash_version:${String(t)}`);return Jt(ne(El(e,t)))}function jI(){return Jt(ne(DI))}function gt(e){let t=El(e.before,mt),n=El(e.after,mt),r=Dg(e.before),o=Dg(e.after),i=Mg.compare(r,o),s=FI(r,i),a=_m(e.author),c=a.harness?Object.fromEntries(Object.entries($c().provenance_outcomes).filter(([,d])=>d.status==="failed")):void 0,l=c===void 0||Object.keys(c).length===0?e.context:{...e.context,agent_provenance_outcomes:c};return{ts:e.nowIso,author:e.author,author_source:e.authorSource??gm(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:Jt(ne(t)),after_hash:Jt(ne(n)),item_hash_version:mt,message:e.message===void 0?void 0:e.message,...l===void 0?{}:{context:l}}}function Lg(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function UI(e){let t=e.ts.trim();return t.length>0?t:X()}function Pg(e,t){let n=e.ts;return typeof n=="string"&&n.trim().length>0?e:{...e,ts:t}}function Ji(e,t){let n=UI(t);if(typeof e=="string"){try{let r=JSON.parse(e);if(Lg(r))return JSON.stringify(Pg(r,n))}catch{}return e}return Lg(e)?JSON.stringify(Pg(e,n)):JSON.stringify(e)}async function _t(e,t){let n=await De("history_append",{history_path:e,entry:t});if(n.handled){if(n.result===!1)return;if(typeof n.result=="string"){await Et(e,Ji(n.result,t)),await ro(e),await Yi(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 Et(o,Ji(r.line,t)),await ro(o),await Yi(o);return}await Et(o,Ji(r.entry??t,t)),await ro(o),await Yi(o);return}}await Et(e,Ji(t,t)),await ro(e),await Og(e,t)}import vl 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]="0c37a722-fda7-523e-991c-f8abfb7a1495")}catch{}})();var zI={metadata:{},body:""};function er(){return structuredClone(zI)}function Zi(e,t=mt){if(Object.keys(e.metadata).length===0||Array.isArray(e.metadata.tags))try{return Qi(oo(e),t)}catch{}return Jt(ne({replay_fallback:!0,metadata:e.metadata,body:e.body}))}function oo(e){return{metadata:e.metadata,body:e.body}}function qI(e,t={}){return Le(oo(e),t)}function VI(e){if(!e.metadata||Object.keys(e.metadata).length===0)return{metadata:{},body:e.body??""};let t=Le(e);return{metadata:x(t.metadata,je),body:t.body}}function Fg(e){return e==="/front_matter"?"/metadata":e.startsWith("/front_matter/")?`/metadata/${e.slice(14)}`:e}function GI(e){return typeof e=="object"&&e!==null&&typeof e.op=="string"&&typeof e.path=="string"}function Tl(e){return Array.isArray(e)?e.filter(GI).map(t=>({...t,path:Fg(t.path),from:typeof t.from=="string"?Fg(t.from):void 0})):[]}function BI(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 tr(e,t){try{let n=Tl(t),r=vl.applyPatch(structuredClone(e),n,!0,!1).newDocument;return BI(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 Al(e){let t=er(),n;for(let r=0;r<e.length;r+=1){let o=e[r],i=o.item_hash_version;if(i!==void 0&&!Zn.includes(i))return{ok:!1,errors:[`verify_failed:unsupported_item_hash_version:${String(i)}:entry_${r+1}`]};let s=tr(t,o.patch);if(!s.ok)return{ok:!1,errors:[`verify_failed:patch_apply_failed:entry_${r+1}`]};let c=(i===void 0?[mt,1]:[i]).filter(d=>Zi(t,d)===o.before_hash);if(c.length===0)return{ok:!1,errors:[`verify_failed:before_hash_mismatch:entry_${r+1}`]};let l=c.find(d=>Zi(s.document,d)===o.after_hash);if(l===void 0)return{ok:!1,errors:[`verify_failed:after_hash_mismatch:entry_${r+1}`]};t=s.document,n=l}return{ok:!0,errors:[],...n===void 0?{}:{item_hash_version:n}}}function mn(e){let t=Al(e);return{ok:t.ok,errors:t.errors}}function $g(e,t){try{return{ok:!0,document:vl.applyPatch(structuredClone(e),[t],!0,!1).newDocument}}catch{return{ok:!1}}}function HI(e,t){let n=structuredClone(e),r=0,o=0;for(let a of Tl(t)){let c=$g(n,a);if(c.ok){n=c.document;continue}if(a.op==="replace"){let l=$g(n,{...a,op:"add"});if(l.ok){n=l.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 WI(e){let t=Al(e);if(t.ok&&t.item_hash_version!==void 0)return t.item_hash_version;let n=[...new Set(e.map(r=>r.item_hash_version).filter(r=>r!==void 0&&Zn.includes(r)))];return n.length===1?n[0]:n.length===0?1:mt}function oG(e,t=WI(e)){let n=e.findIndex(u=>u.item_hash_version!==void 0&&!Zn.includes(u.item_hash_version));if(n>=0)throw new TypeError(`unsupported_item_hash_version:${String(e[n]?.item_hash_version)}:entry_${n+1}`);let r=er(),o=[],i=[],s=0,a=0,c=0,l=0,d=t!==1||e.some(u=>u.item_hash_version!==void 0);for(let u=0;u<e.length;u+=1){let p=e[u],f=Zi(r,t),y=tr(r,p.patch),g,b,E=!1,O=0,z=0;if(y.ok)g=y.document,b=p.patch;else{let de=HI(r,p.patch);g=de.document,b=vl.compare(r,g),E=!0,O=de.convertedReplaceToAdd,z=de.skippedOps,c+=O,l+=z,a+=1}let M=Zi(g,t),Z=f!==p.before_hash||M!==p.after_hash;Z&&(s+=1);let le={...p,patch:b,before_hash:f,after_hash:M};d?le.item_hash_version=t:delete le.item_hash_version,o.push(le),i.push({index:u+1,rehashed:Z,patch_repaired:E,converted_replace_to_add:O,skipped_ops:z}),r=g}return{entries:o,finalDocument:r,entriesRehashed:s,entriesPatchRepaired:a,convertedReplaceToAdd:c,skippedOps:l,details:i,itemHashVersion:t,explicitItemHashVersion:d}}function iG(e){return e.length===0?"":`${e.map(t=>JSON.stringify(t)).join(`
|
|
72
|
+
`)}
|
|
73
|
+
`}(function(){try{var e=typeof window<"u"?window:typeof 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 jg(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function Sl(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?jg(n):"metadata"}let t=e.replace(/^\//,"").split("/")[0];return t?jg(t):"root"}function es(e,t){return t==="body"?e.body:t==="metadata"?e.metadata:t==="root"?e:e.metadata[t]}function KI(e,t){let n=t?.windowStartIndex??0,r=t?.field;if(e.length===0||n>=e.length)return[];let o=er(),i=[];for(let s=0;s<e.length;s+=1){let a=e[s],c=o,l=tr(o,a.patch),d;l.ok?(d=l.document,o=d):d=c;let u=new Set;for(let f of a.patch)u.add(Sl(f.path)),f.from!==void 0&&u.add(Sl(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:es(c,r),after:es(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:es(c,y),after:es(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 YI from"node:fs/promises";import XI 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 JI(e){return[...new Set(e.filter(t=>t.trim().length>0))].sort((t,n)=>t.localeCompare(n))}function QI(e,t){return new h(`Missing history stream for ${e}. ${t} requires history streams when settings.history.missing_stream is strict_error.`,_.NOT_FOUND)}async function ZI(e,t){return await Ro(XI.dirname(e)),await(await YI.open(e,"a")).close(),me({path:e,scope:"project",op:`${t}:history:auto_create`})}async function ts(e){return Ug({pmRoot:e.pmRoot,settings:e.settings,itemIds:[e.itemId],commandLabel:e.commandLabel})}async function Ug(e){let t=JI(e.itemIds),n=[],r=[];for(let o of t){let i=Fn(e.pmRoot,o);if(!await Y(i)){if(e.settings.history.missing_stream==="strict_error")throw QI(o,e.commandLabel);r.push(...await ZI(i,e.commandLabel)),r.push(`history_stream_auto_created:${o}`),n.push(o)}}return{auto_created_ids:n,warnings:r}}import yt from"node:fs/promises";import kl from"node:path";import{randomUUID as eR}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]="a9ad8a9f-de6e-5bce-8685-844f1129d5fb")}catch{}})();function tR(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 Gg(e){try{let t=await yt.readFile(e,"utf8");return await ze({path:e,scope:"project"}),tR(t)}catch(t){return ue(t)?{info:null,warnings:[]}:{info:null,warnings:["lock_info_read_failed"]}}}function xl(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}async function Bg(e,t){await me({path:e,scope:"project",op:t})}function nR(e,t,n){return{id:e,pid:process.pid,owner:t,created_at:X(),ttl_seconds:n}}async function rR(e,t,n,r){await yt.mkdir(kl.dirname(e),{recursive:!0});let o=await yt.open(e,"wx");try{await o.writeFile(`${JSON.stringify(nR(t,n,r),null,2)}
|
|
74
|
+
`,"utf8")}finally{await o.close()}await Bg(e,"lock:create")}async function Hg(e,t){try{return await yt.unlink(e),await Bg(e,t),!0}catch{return!1}}function Wg(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 oR(e){return e?.owner?` (owner ${e.owner})`:""}var iR=25,sR=200,aR=250,cR=3,lR=".stale-cleanup",Kg="owner.json",dR=1e4,uR=5*6e4;function zg(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 fR(e){let t=process.env.PM_LOCK_WAIT_MS,n=zg(t);if(n!==void 0)return n;let r=zg(e);return r!==void 0?r:0}function pR(e){let t=Math.max(1,Math.round(e*(.5+Math.random())));return new Promise(n=>setTimeout(n,t))}function Yg(e,t,n){let r=n>0?` after waiting ${n}ms`:"";return new h(`Item ${e} is locked${oR(t)}${r}`,_.CONFLICT,{code:"lock_conflict",recovery:{retry_after_ms:aR}})}function mR(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 gR(e,t,n,r){if(!n&&r){let o=t.warnings.length>0?` (${t.warnings.join(",")})`:"";throw new h(`Item ${e} lock is stale${o}; rerun with --force when supported for this command`,_.CONFLICT)}}function _R(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 Xg(e){try{return _R(await yt.readFile(kl.join(e,Kg),"utf8"))}catch{return null}}function yR(e){try{return process.kill(e,0),!0}catch(t){return!xl(t,"ESRCH")}}async function Cl(e){try{return await yt.rm(e,{recursive:!0,force:!0}),!0}catch{return!1}}async function qg(e,t){let n=await Xg(e);n===null||n.token!==t||await Cl(e)}async function Vg(e){try{await yt.mkdir(e)}catch(n){return xl(n,"EEXIST"),null}let t={pid:process.pid,token:eR()};try{await yt.writeFile(kl.join(e,Kg),`${JSON.stringify(t)}
|
|
75
|
+
`,"utf8")}catch{return await Cl(e),null}return t}async function hR(e){let t;try{let r=await yt.stat(e);if(t=Date.now()-r.mtimeMs,t<=dR)return!1}catch(r){return ue(r)}let n=await Xg(e);return n!==null&&yR(n.pid)&&t<=uR?!1:Cl(e)}async function bR(e,t){let n=`${e}${lR}`,r=await Vg(n);if(r!==null)return async()=>qg(n,r.token);if(!await hR(n))return null;let o=await Vg(n);return o===null?null:async()=>qg(n,o.token)}async function wR(e){let t=await bR(e.lockPath,e.id);if(t===null)return{lockInfo:e.fallbackLockInfo,shouldRetryCreate:!1,staleRemovalCounted:!1};try{let n=await Gg(e.lockPath);if(n.info===null&&n.warnings.length===0)return{lockInfo:n,shouldRetryCreate:!0,staleRemovalCounted:!1};if(!Wg(n.info,e.ttlSeconds))return{lockInfo:n,shouldRetryCreate:!1,staleRemovalCounted:!1};if(gR(e.id,n,e.force,e.forceRequiredForStaleLock),e.staleRemovals>=cR)throw Yg(e.id,n.info,Date.now()-e.startedAtMs);return{lockInfo:n,shouldRetryCreate:await Hg(e.lockPath,"lock:stale_remove"),staleRemovalCounted:!0}}finally{await t()}}async function we(e,t,n,r,o=!1,i=!0,s){let a=await De("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=mR(a.result);if(f)return async()=>{await Promise.resolve(f()),await De("lock_release",{pm_root:e,id:t,owner:r})}}let c=ff(e,t),l=fR(s),d=Date.now(),u=0,p=iR;for(;;)try{return await rR(c,t,r,n),async()=>{await Hg(c,"lock:release"),await De("lock_release",{pm_root:e,id:t,owner:r})}}catch(f){if(!xl(f,"EEXIST"))throw new h(`Failed to acquire lock for ${t}: ${j(f)}`,_.GENERIC_FAILURE);let y=await Gg(c);if(Wg(y.info,n)){let b=await wR({lockPath:c,id:t,ttlSeconds:n,force:o,forceRequiredForStaleLock:i,staleRemovals:u,waitBudgetMs:l,startedAtMs:d,fallbackLockInfo:y});if(y=b.lockInfo,b.staleRemovalCounted&&(u+=1),b.shouldRetryCreate)continue}let g=Date.now()-d;if(l===0||g>=l)throw Yg(t,y.info,l===0?0:g);await pR(Math.min(p,l-g)),p=Math.min(p*2,sR)}}import Jg from"node:fs/promises";import nr 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]="9027d972-ce29-5511-ba81-27e17d97446e")}catch{}})();var Pt="_workspace";function gn(e){return nr.join(e,"history",`${Pt}.jsonl`)}function Ol(e,t){return{metadata:{id:Pt,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 rr(e,t=e.length){let n=er();for(let r of e.slice(0,t))n=tr(n,r.patch).document;return oo(n)}function io(e){return"documents"in e.metadata&&typeof e.metadata.documents=="object"&&e.metadata.documents!==null&&!Array.isArray(e.metadata.documents)?e.metadata.documents:{}}function so(e){throw new h(`Workspace history verification failed: ${e.join(", ")}`,_.CONFLICT,{code:"workspace_history_chain_invalid",reason:"workspace_history_chain_verification_failed",verification_errors:[...e],required:"Repair the _workspace history chain before reading, reconciling, restoring, or appending audited singleton state.",why:"Continuing against an unverifiable append-only stream could hide or compound workspace state corruption.",examples:["pm history _workspace --verify --json","pm validate --check-history-drift --fix-hints --json"],nextSteps:["Inspect the exact verification_errors and preserve the corrupt stream as evidence.","Use the history-drift remediation returned by validate before retrying the refused operation."],recovery:{recovery_mode:"compact",next_best_command:"pm history _workspace --verify --json"}})}function Il(e,t){let n=nr.resolve(t),r=nr.relative(e,n).replaceAll("\\","/");if(r.length===0||r===".."||r.startsWith("../")||nr.isAbsolute(r))throw new TypeError("Workspace history document path must stay inside the tracker root");return{documentPath:r,absolutePath:n}}async function ER(e){let t=await Ve(gn(e),Pt),n=mn(t);n.ok||so(n.errors);let r=io(t.length===0?Cn:rr(t)),o=[],i=[],s=[],a=[];for(let c of Object.keys(r).sort()){let l;try{let d=Il(e,nr.resolve(e,c));if(l=await G(d.absolutePath),l===null){s.push(c);continue}let u=JSON.parse(l);(ne(u)===ne(r[c])?o:i).push(c)}catch{a.push(c)}}return{ok:i.length===0&&s.length===0&&a.length===0,document_count:Object.keys(r).length,matching_documents:o,mismatched_documents:i,missing_documents:s,unreadable_documents:a}}async function Qg(e){let t=gn(e.pmRoot),n=await Ve(t,Pt),r=mn(n);r.ok||so(r.errors);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?Cn:rr(n),a=io(s),c=a[e.documentPath];if(c!==void 0&&ne(c)!==ne(e.before))throw new h(`Workspace history state for "${e.documentPath}" changed outside the audited mutation path.`,_.CONFLICT,{code:"workspace_history_state_conflict",reason:"out_of_band_workspace_state",required:"Reconcile the singleton document with its matching _workspace history state before retrying the mutation.",why:"Accepting the write would make the append-only audit stream describe a state that was not actually observed.",examples:["pm history _workspace --verify","pm validate --check-history-drift --fix-hints"],nextSteps:["Review the version-control change that altered the singleton and preserve the intended document plus its matching workspace history.","Rerun the original mutation only after the on-disk singleton agrees with the latest audited workspace state."],recovery:{recovery_mode:"compact",next_best_command:"pm history _workspace --verify"}});let l=Ol({...a,[e.documentPath]:e.after},n.length===0?i:s.metadata.created_at),d=gt({nowIso:i,author:e.author,op:e.idempotencyKey===void 0?e.op:`${e.op}:${e.idempotencyKey}`,before:s,after:l,message:e.message});return await _t(t,d),{entry:d,historyPath:t}}async function vR(e){let t=await we(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await Qg(e)}finally{await t()}}async function TR(e){let t=await we(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let n=gn(e.pmRoot),r=await Ve(n,Pt),o=mn(r);o.ok||so(o.errors);let i=r.length===0?Cn:rr(r),s=gt({nowIso:new Date().toISOString(),author:e.author,op:e.op,before:i,after:i,message:e.message,context:e.context});return await _t(n,s),{entry:s,historyPath:n}}finally{await t()}}async function Zg(e,t){if(t===e.raw)return!1;let n=t===null?null:JSON.parse(t),r=JSON.parse(e.raw);await D(e.filePath,e.raw);try{(t!==null||e.recordCreation!==!1)&&await Qg({pmRoot:e.pmRoot,documentPath:nr.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 Jg.rm(e.filePath,{force:!0}):await D(e.filePath,t),o}return!0}async function AR(e){let t=await we(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let n=await G(e.filePath),r=await e.mutate(n);return{changed:await Zg({...e,raw:r.raw},n),result:r.result}}finally{await t()}}async function Rl(e){let t=await we(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await Zg(e,await G(e.filePath))}finally{await t()}}async function SR(e){let t=e.authorizationDecision.trim();if(!t)throw new TypeError("Workspace history reconciliation requires an authorization decision");let n=await we(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let{documentPath:r,absolutePath:o}=Il(e.pmRoot,e.filePath),i=gn(e.pmRoot),s=await Ve(i,Pt),a=mn(s);a.ok||so(a.errors);let c=rr(s),l=io(c);if(!Object.hasOwn(l,r))throw new TypeError(`Workspace history does not govern document ${r}`);let d=await G(o);if(d===null)throw new TypeError(`Workspace history document is missing: ${r}`);let u=JSON.parse(d);if(ne(l[r])===ne(u))return{changed:!1,historyPath:i};let p=new Date().toISOString(),f=gt({nowIso:p,author:e.author,op:e.op,before:c,after:Ol({...l,[r]:u},c.metadata.created_at),message:e.message,context:{reason:"out_of_band_workspace_state_reconciliation",document_path:r,authorization_decision:t}});return await _t(i,f),{changed:!0,entry:f,historyPath:i}}finally{await n()}}async function kR(e){let t=await we(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let{documentPath:n,absolutePath:r}=Il(e.pmRoot,e.filePath),o=await Ve(gn(e.pmRoot),Pt),i=mn(o);if(i.ok||so(i.errors),!Number.isInteger(e.targetVersion)||e.targetVersion<1||e.targetVersion>o.length)throw new TypeError(`Invalid workspace history target version: ${String(e.targetVersion)}`);let s=io(rr(o,e.targetVersion))[n];if(s===void 0)throw new TypeError(`Workspace history version ${e.targetVersion} does not contain ${n}`);let a=await G(r),c=`${JSON.stringify(s,null,2)}
|
|
76
|
+
`;if(a===c)return{document_path:n,restored_from_version:e.targetVersion,changed:!1};let l=rr(o),d=new Date().toISOString(),u=gt({nowIso:d,author:e.author,op:e.op,before:l,after:Ol({...io(l),[n]:s},l.metadata.created_at),message:e.message,context:{reason:"workspace_state_restore",document_path:n,restored_from_version:e.targetVersion,replaced_out_of_band_state:!0}});await D(r,c);try{await _t(gn(e.pmRoot),u)}catch(p){throw a===null?await Jg.rm(r,{force:!0}):await D(r,a),p}return{document_path:n,restored_from_version:e.targetVersion,changed:!0}}finally{await t()}}import{readFile as xR}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 CR=e=>xR(e,"utf8");async function OR(e,t,n=CR){if(t!==void 0)throw new h("--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 h("--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 h(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 IR from"node:crypto";import e_ 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 n_(e){let t=(e??"").trim().toLowerCase();return t?t.endsWith("-")?t:`${t}-`:"pm-"}function ns(e){let t=e.trim().toLowerCase();return t.startsWith("#")&&(t=t.slice(1)),t}function _n(e,t){let n=n_(t),r=ns(e);return r.startsWith(n)?r:`${n}${r}`}function RR(e){let t=zu(e);if(t!==void 0)return t;let n="";for(let r=0;r<e;r+=1)n+=IR.randomInt(0,36).toString(36);return n}async function NR(e,t,n){let r=[...new Set(Object.values(n))].flatMap(o=>[e_.join(e,o,`${t}.md`),e_.join(e,o,`${t}.toon`)]);return(await Promise.all(r.map(o=>Y(o)))).some(Boolean)}var t_=4,r_=12;function DR(e){return typeof e!="number"||!Number.isFinite(e)?t_:Math.min(r_,Math.max(t_,Math.trunc(e)))}async function LR(e,t,n={}){let r=DR(n.tokenLength),o=Math.min(r+6,r_),i=0;for(;r<=o;){for(let s=0;s<32;s+=1){let a=`${n_(t)}${RR(r)}`;if(n.probeExisting===!1||!await NR(e,a,n.typeToFolder??fe))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 PR=new Set(["none","null","undefined"]);function QG(e){let t=e?.trim().toLowerCase().replaceAll("-","_");if(t==="warn"||t==="strict_error")return t;if(t==="strict")return"strict_error";throw new h("Config set parent-reference-policy requires --policy with one of: warn, strict_error (alias: strict)",_.USAGE)}function MR(e){if(typeof e!="string")throw new h("--parent must be a string. Use --unset parent to clear this field.",_.USAGE);let t=e.trim();if(t.length===0)throw new h("--parent must not be empty. Use --parent none to unset.",_.USAGE);if(o_(t))throw new h(`--parent must not use placeholder token "${t}". Use --unset parent to clear this field.`,_.USAGE);return t}function o_(e){return PR.has(e.trim().toLowerCase())}function FR(e,t){if(t==="strict_error")throw new h(`Parent item "${e}" was not found. Create it first or use --parent none.`,_.USAGE);return{warnings:[`validation_warning:parent_reference_missing:${e}`]}}function $R(e,t,n){let r=_n(e,n),o=_n(t,n);if(r!==o)return;let i=t!==o||e!==r?` (normalized from parent "${t}" and item "${e}")`:"";throw new h(`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 or="-",i_=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 s_(e){let t=e.trim();if(t==="")return[];let r=(VR(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 a_(e){if(!Array.isArray(e)||e.length===0)return[];let t=[];for(let n of e)if(typeof n=="string")for(let r of s_(n))t.push(r);return Array.from(new Set(t)).sort((n,r)=>n.localeCompare(r))}function c_(e){return Array.isArray(e)?e.filter(t=>typeof t=="string").map(t=>t.trim().toLowerCase()).filter(Boolean):[]}function jR(e){return typeof e!="string"?[]:e.split(";").map(t=>t.trim()).filter(Boolean)}function UR(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 h('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(c=>c!==a)}}return{criteria:i,unmatchedRemovals:o}}function zR(e,t){let n=c_(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 a_(t))r.add(o);return Array.from(r).sort((o,i)=>o.localeCompare(i))}function qR(e,t){let n=Array.from(new Set(c_(e))).sort((o,i)=>o.localeCompare(i));if(!t||t.length===0)return n;let r=new Set(a_(t));return r.size===0?n:n.filter(o=>!r.has(o))}function VR(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 Nl(e){return e.replace(/\r\n/g,`
|
|
77
|
+
`)}function l_(e){let t=Nl(e).trim();if(!t.startsWith("```"))return e;let n=t.split(`
|
|
78
|
+
`);return n.length<2||n.at(-1)?.trim()!=="```"?e:n.slice(1,-1).join(`
|
|
79
|
+
`)}function GR(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 d_(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 BR(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 HR(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 WR(e,t){let n=e.replaceAll(/\s+/g," ").trim(),r=n.length>160?`${n.slice(0,157)}...`:n,o=HR(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} ${or} to read piped stdin input.`}function KR(e){let t=l_(e).trim();if(t.length===0||!t.includes(`
|
|
80
|
+
`)&&!t.startsWith("-")&&!t.startsWith("*")&&!t.startsWith("+"))return null;let n={},r,o=Nl(t).split(`
|
|
81
|
+
`).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]=d_(s[3].trim()),r=a;continue}if(r&&i_.has(r.toLowerCase())){n[r]=`${n[r]}
|
|
82
|
+
${i}`;continue}return null}return n}function YR(e,t){let n=l_(e).trim();if(!n)throw new h(`${t} cannot be empty`,_.USAGE);let r=KR(n);if(r)return r;let o={},i,s=GR(n);for(let a of s){let c=BR(a);if(c>0){let l=a.slice(0,c).trim(),d=d_(a.slice(c+1).trim());o[l]=d,i=l;continue}if(i&&i_.has(i.toLowerCase())){o[i]=`${o[i]},${a.trim()}`;continue}throw new h(WR(e,t),_.USAGE)}return o}var XR=/^[A-Za-z]:[\\/]/,JR=/^(?:[-*+]\s+)?[A-Za-z_][A-Za-z0-9_.-]*\s*=/;function QR(e){let t=e.trim();return XR.test(t)?!1:JR.test(t)}function ZR(e,t,n){let r=new Set(n.map(i=>i.toLowerCase())),o=Object.keys(e).filter(i=>!r.has(i.toLowerCase()));if(o.length>0)throw new h(`${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 h(`${t} provides key "${i}" more than once after case normalization.`,_.USAGE);e[s]=e[i],delete e[i]}}}async function eN(e){if(process.stdin.isTTY===!0)throw new h(`${e} value "${or}" 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(Nl(r))}),process.stdin.on("error",o=>{n(o)})})}function tN(){let e,t,n=async i=>{if(t&&t!==i)throw new h(`Only one option may use "${or}" stdin token per command invocation. Already used by ${t}.`,_.USAGE);return t=i,e||(e=eN(i)),await e};return{resolveValue:async(i,s)=>{if(i!==void 0)return i.trim()!==or?i:await n(s)},resolveList:async(i,s)=>{if(!i)return;let a=i.map((d,u)=>d.trim()===or?u:-1).filter(d=>d>=0);if(a.length===0)return i;if(a.length>1)throw new h(`${s} accepts "${or}" stdin token at most once per command invocation`,_.USAGE);let c=await n(s),l=[...i];return l[a[0]]=c,l}}}function nN(e,t){let n=Number(e);if(!Number.isFinite(n))throw new h(`Invalid ${t} value "${e}"`,_.USAGE);return n}function rN(e,t){let n=e.trim(),r=Number(n);if(n===""||!Number.isInteger(r)||r<0)throw new h(`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 Dl={critical:0,high:1,medium:2,low:3,minimal:4},oN=Object.keys(Dl),iN=`numbers 0..4 (0=critical, 1=high, 2=medium, 3=low, 4=minimal) or names (${oN.join(", ")}), case-insensitive`;function rs(e){return new h(`Invalid priority "${e}". Accepted values: ${iN}.`,_.USAGE)}function sN(e){if(typeof e=="number"){if(Number.isInteger(e)&&e>=0&&e<=4)return e;throw rs(String(e))}if(typeof e!="string")throw rs(String(e));let t=e.trim();if(t.length===0)throw rs(e);let n=t.toLowerCase();if(Object.prototype.hasOwnProperty.call(Dl,n))return Dl[n];if(/^[0-4]$/.test(t))return Number(t);throw rs(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 aN=/^[A-Za-z0-9][A-Za-z0-9._/-]*$/,cN=64;function cB(e){let t=e?.trim().toLowerCase().replaceAll("-","_");if(t==="warn"||t==="strict_error")return t;if(t==="strict")return"strict_error";throw new h("Config set sprint-release-format-policy requires --policy with one of: warn, strict_error (alias: strict)",_.USAGE)}function lN(e,t,n){let r=t.trim();if(r.length===0)throw new h(`--${e} must not be empty. Use --${e} none to unset.`,_.USAGE);if(r.length<=cN&&aN.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 h(`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 u_={open:"open_status",closed:"close_status",canceled:"canceled_status",cancelled:"canceled_status"},f_="all";function mB(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]===f_}function dN(e,t){let n=e.trim().toLowerCase();if(n.length===0)return;let r=u_[n];return r?t[r]:an(e,t)}function uN(e){let t=new Set(Object.keys(u_));for(let n of e.definitions){t.add(n.id);for(let r of n.aliases)t.add(r)}return[...t]}function fN(e,t){let n=e.trim().toLowerCase(),r,o=Number.POSITIVE_INFINITY;for(let i of uN(t)){let s=Ue(n,i.toLowerCase(),2);s!==null&&s<o&&(r=i,o=s)}return r}function pN(e,t,n){if(typeof e!="string")return;let r=n?.strict===!0,o=n?.flagLabel??"--status",i=e.split(",").map(c=>c.trim()).filter(c=>c.length>0);if(i.length===0)return;if(i.filter(c=>c.trim().toLowerCase()===f_).length>0){if(i.length===1)return;throw new h(`Invalid ${o} value "all". Use it by itself, or omit ${o} to search every status.`,_.USAGE)}let a=[];for(let c of i){let l=dN(c,t);if(l===void 0){if(r){let d=fN(c,t);throw new h(`Invalid ${o} value "${c}". Use open|closed|canceled or a configured status id${d?`. Did you mean "${d}"?`:"."}`,_.USAGE)}a.push(c);continue}a.push(l)}return[...new Set(a)]}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b7a167e0-3041-5056-a672-ea0a054ed8df")}catch{}})();var mN={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 gN(e){if(e!==void 0)return mN[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 m_(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 Ll(e){return e==null?"":Array.isArray(e)?e.map(t=>Ll(t)).join(";"):typeof e=="object"?JSON.stringify(e):String(e)}function p_(e){return/[",\r\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function _N(e){if(e.length===0)return"";let t=m_(e),n=[t.map(r=>p_(r)).join(",")];for(let r of e)n.push(t.map(o=>p_(Ll(r[o]))).join(","));return n.join(`
|
|
83
|
+
`)}function yN(e){if(e.length===0)return"";let t=m_(e),n=e.map(s=>t.map(a=>Ll(s[a]))),r=t.map((s,a)=>Math.max(s.length,...n.map(c=>c[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,c)=>o(a,c)).join(" | "));return i.join(`
|
|
84
|
+
`)}(function(){try{var e=typeof window<"u"?window:typeof 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 hN(e,t="--limit"){if(e===void 0)return;let n=Number(e);if(!Number.isFinite(n)||n<0)throw new h(`${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 bN=new Map(Dn.map(e=>[e.toLowerCase(),e])),wN=/^[A-Za-z][A-Za-z0-9_-]*$/;function g_(e,t){if(!wN.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 Pl(e){return bN.get(e.trim().toLowerCase())}function h_(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function EN(e){return e.replace(/[\\"`$]/g,t=>`\\${t}`)}function b_(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 TB(e){let t=(e.name??"").trim();if(t.length===0)throw new Error("Type name must not be empty.");g_(t,"Type name");let n=Pl(t);if(n)throw new Error(`Cannot redefine built-in item type "${n}". Built-in types are reserved: ${Dn.join(", ")}.`);let r=e.description?.trim(),o=e.defaultStatus?.trim(),i=e.folder?.trim(),s=i&&i.length>0?Jo(i):void 0,a=b_(e.aliases??[]);for(let c of a){g_(c,"Alias");let l=Pl(c);if(l)throw new Error(`Alias "${c}" collides with built-in item type "${l}". Built-in types are reserved: ${Dn.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 AB(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 h_(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 __(e,t){return typeof t=="string"&&t.trim().length>0?Jo(t).toLowerCase():wr(e).toLowerCase()}function SB(e,t,n){let r=e.name.toLowerCase(),o=__(e.name,e.folder),i=a=>{throw new Error(`Item type "${e.name}" would store items in folder "${o}", which already belongs to existing item type "${a}". Pass a distinct --folder to keep their storage separate.`)};for(let a of t.definitions){if(typeof a.name!="string")continue;let c=a.name.trim();c.length===0||c.toLowerCase()===r||__(c,a.folder)===o&&i(c)}let s=n?.get(o);s!==void 0&&s.toLowerCase()!==r&&i(s)}function kB(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:vN(t)}}function vN(e){let t=TN(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 TN(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 xB(e,t){let n=t.name.toLowerCase(),r=e.definitions.slice(),o=r.findIndex(c=>typeof c.name=="string"&&c.name.trim().toLowerCase()===n),i=o>=0?r[o]:void 0,s=b_([...h_(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,y_(a,"description",t.description),y_(a,"default_status",t.defaultStatus),o>=0?r[o]=a:r.push(a),r.sort((c,l)=>c.name.localeCompare(l.name)),{file:{definitions:r},definition:a,replaced:o>=0,...i&&typeof i.name=="string"?{previousName:i.name}:{}}}function CB(e,t){let n=(t??"").trim();if(n.length===0)throw new Error("Type name must not be empty.");let r=Pl(n);if(r)throw new Error(`Cannot remove built-in item type "${r}". Built-in types are reserved: ${Dn.join(", ")}.`);let o=n.toLowerCase(),i=e.definitions.slice(),s=i.findIndex(c=>typeof c.name=="string"&&c.name.trim().toLowerCase()===o);if(s<0)return{file:{definitions:i},removed:!1};let[a]=i.splice(s,1);return{file:{definitions:i},removed:!0,definition:a}}function y_(e,t,n){let r=e;n!==void 0&&(r[t]=n)}function OB(e){return`${JSON.stringify({definitions:e.definitions},null,2)}
|
|
85
|
+
`}function AN(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 "${EN(n)}" (writes ${r}).`}function SN(e,t,n){return`Invalid type value "${e}". Allowed: ${t.join(", ")}. ${AN(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 w_(e,t){return se(e,t)}function kN(e,t,n){let r={};for(let o of t.command_to_fields.get(n)??[]){let i=Ti(e,o);i!==void 0&&(r[o.metadata_key]=sn(o,i))}return r}function xN(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(!w_(o,r[r.length-1]))return!1;continue}if(!w_(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 E_(e){return typeof e=="string"?e.trim().toLowerCase():""}function os(e,t){let n=xe(e);return n.length===0?"":t?.alias_to_id?.get(n)??n}function CN(e){let t=Array.isArray(e?.type_workflows)?e.type_workflows:[],n=new Map;for(let r of t){let o=E_(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 c=xe(a[0]),l=xe(a[1]);c.length===0||l.length===0||s.pairs.some(d=>d[0]===c&&d[1]===l)||s.pairs.push([c,l])}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 ON(e){let t=E_(e.typeName),n=e.typeWorkflows.find(s=>s.type===t);if(!n)return{allowed:!0,hasRule:!1,allowedTransitions:[]};let r=os(e.fromStatus,e.statusRegistry),o=os(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=os(s[0],e.statusRegistry),c=os(s[1],e.statusRegistry);return a===r&&c===o}),hasRule:!0,allowedTransitions:n.allowed_transitions}}function IN(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 re={ok:!1},w=e=>typeof e=="string"?{ok:!0,value:e}:re,N=e=>typeof e=="boolean"?{ok:!0,value:e}:re;function V(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?re:{ok:!0,value:t}}function $(...e){return t=>typeof t=="string"&&e.includes(t)?{ok:!0,value:t}:re}function T(e,t){return n=>{if(!Array.isArray(n)||t!==void 0&&n.length>t)return re;let r=[];for(let o of n){let i=e(o);if(!i.ok)return re;r.push(i.value)}return{ok:!0,value:r}}}function Fl(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}:re}function m(e){return t=>t===void 0?{ok:!0,value:void 0}:e(t)}function is(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return re;let n={};for(let[r,o]of Object.entries(t)){let i=e(o);if(!i.ok)return re;n[r]=i.value}return{ok:!0,value:n}}}function C(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return re;let n=t,r={};for(let[o,i]of Object.entries(e)){let s=i(n[o]);if(!s.ok)return re;s.value!==void 0&&(r[o]=s.value)}return{ok:!0,value:r}}}var RN=C({key:w,values:T(w),required:m(N),aliases:m(T(w)),description:m(w)}),NN=C({command:$("create","update"),option:w,required:m(N),visible:m(N),enabled:m(N)}),DN=C({name:w,description:m(w),default_status:m(w),folder:m(w),aliases:m(T(w)),required_create_fields:m(T(w)),required_create_repeatables:m(T(w)),options:m(T(RN)),command_option_policies:m(T(NN))}),LN=C({id:w,aliases:m(T(w)),roles:m(T($(...Vo))),description:m(w),order:m(V())}),PN=C({key:w,metadata_key:m(w),front_matter_key:m(w),cli_flag:m(w),cli_aliases:m(T(w)),description:m(w),type:m($(...Pn)),commands:m(T($(...Go))),repeatable:m(N),required:m(N),required_on_create:m(N),required_types:m(T(w)),allow_unset:m(N)}),MN=e=>{if(!Array.isArray(e)||e.length!==2)return re;let[t,n]=e;return typeof t!="string"||typeof n!="string"?re:{ok:!0,value:[t,n]}},FN=C({type:w,allowed_transitions:T(MN)}),$N=m(C({version:m(V({int:!0})),files:m(C({types:m(w),statuses:m(w),fields:m(w),workflows:m(w)})),statuses:m(T(LN)),fields:m(T(PN)),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(T(FN)),unknown_field_policy:m($(...Bo))})),jN=m(C({preset:m($(...Xu)),ownership_enforcement:m($("none","warn","strict")),create_mode_default:m($("progressive","strict")),close_validation_default:m($("off","warn","strict")),require_close_reason:m(N),parent_reference:m($("warn","strict_error")),metadata_profile:m($("core","strict","custom")),force_required_for_stale_lock:m(N),create_default_type:m(w),workflow_enforcement:m($("off","warn","strict")),duplicate_detection_mode:m($("off","advisory","strict")),duplicate_detection_threshold:m(V({min:0,max:1})),duplicate_detection_limit:m(V({int:!0,min:0,max:20}))})),UN=C({name:w,disabled:m(N),require_trusted:m(N),require_provenance:m(N),sandbox_profile:m($("none","restricted","strict")),allowed_capabilities:m(T(w)),blocked_capabilities:m(T(w)),allowed_surfaces:m(T(w)),blocked_surfaces:m(T(w)),allowed_commands:m(T(w)),blocked_commands:m(T(w)),allowed_actions:m(T(w)),blocked_actions:m(T(w)),allowed_services:m(T(w)),blocked_services:m(T(w))}),Ml=$("block","warn"),zN=e=>typeof e=="string"?Ml(e):C({global:m(Ml),project:m(Ml)})(e),qN=m(C({mode:m($("off","warn","enforce")),trust_mode:m($("off","warn","enforce")),pm_max_version_exceeded_mode:m(zN),require_provenance:m(N),trusted_extensions:m(T(w)),default_sandbox_profile:m($("none","restricted","strict")),allowed_extensions:m(T(w)),blocked_extensions:m(T(w)),allowed_capabilities:m(T(w)),blocked_capabilities:m(T(w)),allowed_surfaces:m(T(w)),blocked_surfaces:m(T(w)),allowed_commands:m(T(w)),blocked_commands:m(T(w)),allowed_actions:m(T(w)),blocked_actions:m(T(w)),allowed_services:m(T(w)),blocked_services:m(T(w)),extension_overrides:m(T(UN))})),yn=Fl(128),VN=C({harness:Fl(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u),environment_keys:m(T(yn,64)),model_environment_keys:m(T(yn,64)),session_environment_keys:m(T(yn,64)),provenance_environment_keys:m(is(T(yn,64))),provenance_resolvers:m(is($("ai_agent_version","claude_session_file"))),provenance_unavailable_dimensions:m(T(yn,64)),argv_markers:m(T(yn,64)),client_names:m(T(yn,64))}),GN=C({version:V({int:!0}),id_prefix:w,ids:m(C({token_length:m(V({int:!0,min:4,max:12}))})),author_default:w,agent_identity:m(C({probes_enabled:m(N),identity_vocabulary:m(C({version:V({int:!0,positive:!0}),aliases:is(Fl(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u))})),harness_signals:T(VN)})),mutation_guard:m(C({require_attributed_author:m(N),secret_guard:m($("off","advise","block")),stale_in_progress_hours:m(V({int:!0,positive:!0}))})),item_format:m($("toon","json_markdown")),locks:C({ttl_seconds:V({int:!0}),wait_ms:m(V({int:!0,min:0}))}),checkpoints:m(C({retention_days:m(V({int:!0,positive:!0}))})),output:C({default_format:$("toon","json")}),history:m(C({missing_stream:$("auto_create","strict_error"),compact_policy:m(C({enabled:m(N),max_entries:m(V({int:!0,positive:!0})),trigger:m($("health_warn","auto"))}))})),validation:m(C({sprint_release_format:$("warn","strict_error"),parent_reference:m($("warn","strict_error")),metadata_profile:m($("core","strict","custom")),metadata_required_fields:m(T(w)),lifecycle_stale_blocker_reason_patterns:m(T(w)),lifecycle_closure_like_blocked_reason_patterns:m(T(w)),lifecycle_closure_like_resolution_patterns:m(T(w)),lifecycle_closure_like_actual_result_patterns:m(T(w)),estimate_defaults_by_type:m(is(V({int:!0,positive:!0})))})),governance:jN,workflow:m(C({definition_of_done:T(w)})),testing:m(C({record_results_to_items:N})),telemetry:m(C({enabled:N,first_run_prompt_completed:m(N),capture_level:m($("minimal","redacted","max")),endpoint:m(w),installation_id:m(w),retention_days:m(V({int:!0,positive:!0}))})),agent_guidance:m(C({prompt_completed:m(N),declined:m(N),declined_at:m(w),template_version:m(V({int:!0,positive:!0})),last_checked_files:m(T(w))})),item_types:m(C({definitions:T(DN)})),schema:$N,context:m(C({default_depth:m($("brief","standard","deep")),activity_limit:m(V({int:!0,positive:!0})),stale_threshold_days:m(V({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:T(w),disabled:T(w),policy:qN}),search:C({score_threshold:V(),hybrid_semantic_weight:m(V()),max_results:V({int:!0}),embedding_model:w,embedding_corpus_max_characters:m(V()),embedding_batch_size:V({int:!0}),embedding_timeout_ms:m(V({int:!0})),scanner_max_batch_retries:V({int:!0}),provider:m(w),corpus_fields:m(T(w)),mutation_refresh_policy:m($("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(V({int:!0,positive:!0}))})),bm25:m(C({k1:m(V()),b:m(V())}))}),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 v_(e){let t=GN(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 BN={Epic:2880,Feature:480,Story:480,Milestone:2880,Task:120,Issue:60,Bug:60,Chore:30,Decision:15,Plan:120},T_=120;function $l(e){return typeof e=="number"&&Number.isFinite(e)&&e>0}function S_(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n.toLowerCase(),r);return t}var HN=S_(BN),A_=new WeakMap;function WN(e){let t=A_.get(e);if(t)return t;let n=S_(e);return A_.set(e,n),n}function jB(e,t){let n=(e??"").trim().toLowerCase();if(n.length===0)return T_;if(t){let o=WN(t).get(n);if($l(o))return Math.floor(o)}let r=HN.get(n);return $l(r)?Math.floor(r):T_}function jl(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||!$l(r)||(t[o]=Math.floor(r))}return t}import{stat as KN}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 ss=new Map;function k_(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}async function YN(e){try{let t=await KN(e);return{path:e,mtime_ms:t.mtimeMs,size:t.size}}catch{return{path:e,mtime_ms:null,size:null}}}async function Mt(e){let t=k_(e),n=await Promise.all(t.map(r=>YN(r)));return n.sort((r,o)=>r.path.localeCompare(o.path)),n}function ao(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 x_(e){return ss.get(e)}function as(e,t){let n=k_(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));ss.set(e,{tracked_paths:n,signatures:r,value:t.value})}function Ft(e){if(e){ss.delete(e);return}ss.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 XN="settings:write",N_=Symbol("pm.settings.persist_source"),JN=128,QN=new Set(["off","advisory","strict"]);function C_(e){return structuredClone(la[e])}function ZN(e){return e==="minimal"||e==="default"||e==="strict"||e==="custom"?e:S.governance.preset}function O_(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 e0(e){return e.preset==="custom"?O_({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):O_({preset:e.preset},e)}function t0(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),QN.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 ls(e){let t=e.governance??{},n=ZN(t.preset),r=t0(t);if(n==="custom"){let s=C_("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=C_(n),i=r.require_close_reason??o.require_close_reason;return{preset:n,...o,...r,require_close_reason:i}}function D_(){return structuredClone(S)}function L_(e){return e==="cache_only"||e==="semantic_configured"||e==="semantic_auto"?e:S.search.mutation_refresh_policy}function P_(e){return typeof e=="boolean"?e:S.search.query_expansion.enabled}function M_(e){return typeof e!="string"?S.search.query_expansion.provider:e.trim()}function F_(e){return typeof e=="boolean"?e:S.search.rerank.enabled}function $_(e){return typeof e!="string"?S.search.rerank.model:e.trim()}function j_(e){return typeof e=="number"&&Number.isFinite(e)&&Number.isInteger(e)&&e>0?e:S.search.rerank.top_k}function U_(e){if(typeof e!="string")return S.vector_store.collection_name;let n=e.trim().replaceAll(/[^a-zA-Z0-9_-]/g,"_").slice(0,JN);return n.length>0?n:S.vector_store.collection_name}function Ul(e){return{present:Array.isArray(e),values:Array.isArray(e)?structuredClone(e):[]}}function n0(e,t){let n=e.schema,r=Ul(n?.statuses),o=Ul(n?.fields),i=Ul(n?.type_workflows);return{source_settings:structuredClone(e),has_source_item_type_definitions:Array.isArray(e.item_types?.definitions),source_item_type_definitions:ir(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:ir(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 Bl(e,t){Object.defineProperty(e,N_,{value:t,writable:!0,configurable:!0,enumerable:!1})}function Hl(e){let t=e[N_];if(!(!t||typeof t!="object"))return t}function r0(e){let t=Hl(e);if(t){let n=structuredClone(t);n.source_settings.item_format=e.item_format,Bl(e,n)}}function cs(e){let t=structuredClone(e.settings),n=Hl(e.settings);return n&&Bl(t,n),{settings:t,metadata:{has_explicit_item_format:e.metadata.has_explicit_item_format},warnings:[...e.warnings]}}function o0(e,t,n){let r=We(t);return[n,be(e,r.files.types,ge.types),be(e,r.files.statuses,ge.statuses),be(e,r.files.fields,ge.fields),be(e,r.files.workflows,ge.workflows)]}async function i0(e,t,n){let r=await Mt(t);as(e,{tracked_paths:t,signatures:r,value:cs(n)})}async function s0(e,t,n){try{await i0(e,t,n)}catch{Ft(e)}}function I_(e,t){return e.find(n=>n.path===t)}function a0(e,t,n){for(let r of n){let o=I_(e,r),i=I_(t,r);if(!o||!i||!ao([o],[i]))return!1}return!0}async function zl(e,t,n,r,o){try{let i=await Mt(t);if(!a0(r,i,o)){Ft(e);return}as(e,{tracked_paths:t,signatures:i,value:cs(n)})}catch{Ft(e)}}function c0(e,t){let n=We(e.schema),r=ir(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=se(r,t.runtime_item_type_definitions),s=se(n.statuses,t.runtime_schema_statuses),a=se(n.fields,t.runtime_schema_fields),c=se(o,t.runtime_schema_type_workflows);return{item_type_definitions:i?t.has_source_item_type_definitions?ir(t.source_item_type_definitions):[]:r,schema_statuses:s?t.has_source_schema_statuses?structuredClone(t.source_schema_statuses):[]:n.statuses,schema_fields:a?t.has_source_schema_fields?structuredClone(t.source_schema_fields):[]:n.fields,schema_type_workflows:c?t.has_source_schema_type_workflows?structuredClone(t.source_schema_type_workflows):void 0:n.type_workflows}}function co(e){return{settings:D_(),metadata:{has_explicit_item_format:!1},warnings:e?[e]:[]}}function l0(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e.item_format;return t==="toon"||t==="json_markdown"}function Vl(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function z_(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:Vl(e?.last_checked_files??t.last_checked_files)}}function Ge(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function d0(e){return e==="off"||e==="warn"||e==="enforce"?e:S.extensions.policy.mode}function u0(e){return e==="off"||e==="warn"||e==="enforce"?e:S.extensions.policy.trust_mode}function q_(e){return e==="none"||e==="restricted"||e==="strict"?e:S.extensions.policy.default_sandbox_profile}function f0(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=q_(e.sandbox_profile));let r=Ge(e.allowed_capabilities),o=Ge(e.blocked_capabilities),i=Ge(e.allowed_surfaces),s=Ge(e.blocked_surfaces),a=Ge(e.allowed_commands),c=Ge(e.blocked_commands),l=Ge(e.allowed_actions),d=Ge(e.blocked_actions),u=Ge(e.allowed_services),p=Ge(e.blocked_services);return r.length>0&&(n.allowed_capabilities=r),o.length>0&&(n.blocked_capabilities=o),i.length>0&&(n.allowed_surfaces=i),s.length>0&&(n.blocked_surfaces=s),a.length>0&&(n.allowed_commands=a),c.length>0&&(n.blocked_commands=c),l.length>0&&(n.allowed_actions=l),d.length>0&&(n.blocked_actions=d),u.length>0&&(n.allowed_services=u),p.length>0&&(n.blocked_services=p),n}function p0(e){let t=new Map;for(let n of e??[]){let r=f0(n);r&&t.set(r.name,r)}return[...t.values()].sort((n,r)=>n.name.localeCompare(r.name))}function ql(e){return e==="block"||e==="warn"?e:void 0}function m0(e){if(typeof e=="string")return ql(e);if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let t=ql(e.global),n=ql(e.project);return t===void 0&&n===void 0?void 0:{...t!==void 0?{global:t}:{},...n!==void 0?{project:n}:{}}}}function Ce(e,t){return Ge(e?.[t]??S.extensions.policy[t])}function V_(e){let t=m0(e?.pm_max_version_exceeded_mode);return{mode:d0(e?.mode),trust_mode:u0(e?.trust_mode),...t!==void 0?{pm_max_version_exceeded_mode:t}:{},require_provenance:e?.require_provenance===!0,trusted_extensions:Ce(e,"trusted_extensions"),default_sandbox_profile:q_(e?.default_sandbox_profile),allowed_extensions:Ce(e,"allowed_extensions"),blocked_extensions:Ce(e,"blocked_extensions"),allowed_capabilities:Ce(e,"allowed_capabilities"),blocked_capabilities:Ce(e,"blocked_capabilities"),allowed_surfaces:Ce(e,"allowed_surfaces"),blocked_surfaces:Ce(e,"blocked_surfaces"),allowed_commands:Ce(e,"allowed_commands"),blocked_commands:Ce(e,"blocked_commands"),allowed_actions:Ce(e,"allowed_actions"),blocked_actions:Ce(e,"blocked_actions"),allowed_services:Ce(e,"allowed_services"),blocked_services:Ce(e,"blocked_services"),extension_overrides:p0(e?.extension_overrides??S.extensions.policy.extension_overrides)}}function G_(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 $t(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 Oe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:{}}function Gl(e){return Array.isArray(e)?e:[]}function g0(e,t,n){return{...t.validation,...e.validation,parent_reference:n.parent_reference,metadata_profile:n.metadata_profile,metadata_required_fields:G_(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:$t(e.validation?.lifecycle_stale_blocker_reason_patterns??t.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:$t(e.validation?.lifecycle_closure_like_blocked_reason_patterns??t.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:$t(e.validation?.lifecycle_closure_like_resolution_patterns??t.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:$t(e.validation?.lifecycle_closure_like_actual_result_patterns??t.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:jl(e.validation?.estimate_defaults_by_type)}}function _0(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 y0(e,t){return{...t.search,...e.search,mutation_refresh_policy:L_(e.search?.mutation_refresh_policy),query_expansion:{...t.search.query_expansion,...e.search?.query_expansion,enabled:P_(e.search?.query_expansion?.enabled),provider:M_(e.search?.query_expansion?.provider)},rerank:{...t.search.rerank,...e.search?.rerank,enabled:F_(e.search?.rerank?.enabled),model:$_(e.search?.rerank?.model),top_k:j_(e.search?.rerank?.top_k)}}}function h0(e,t){return{adapter:e.vector_store.adapter??t.vector_store.adapter,collection_name:U_(e.vector_store.collection_name),qdrant:{...t.vector_store.qdrant,...e.vector_store.qdrant},lancedb:{...t.vector_store.lancedb,...e.vector_store.lancedb}}}function b0(e,t){return e.item_format==="json_markdown"?"toon":e.item_format??t.item_format}function w0(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 E0(e,t){return{openai:{...t.providers.openai,...e.providers.openai},ollama:{...t.providers.ollama,...e.providers.ollama}}}function ir(e){let t=(e??[]).map(r=>Xo(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 B_(e){let t=D_(),n=ls({governance:e.governance??{preset:"default"}});return{...t,...e,item_format:b0(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:g0(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:_0(e,t),agent_guidance:z_(e.agent_guidance??t.agent_guidance),item_types:{definitions:ir(e.item_types?.definitions)},schema:We(e.schema??t.schema),context:w0(e,t),extensions:{enabled:[...e.extensions.enabled],disabled:[...e.extensions.disabled],policy:V_(e.extensions.policy??t.extensions.policy)},search:y0(e,t),providers:E0(e,t),vector_store:h0(e,t)}}function v0(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(Oe(t.identity_vocabulary),["version","aliases"])),e.agent_identity.harness_signals=Gl(e.agent_identity.harness_signals).map(n=>x(Oe(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(Oe(e.schema.files),["types","statuses","fields","workflows"]),e.schema.workflow=x(Oe(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(Oe(e.context.sections),["hierarchy","activity","progress","blockers","files","workload","staleness","tests"]),e.extensions=x(e.extensions,["enabled","disabled","policy"]),e.extensions.policy=x(Oe(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=Gl(e.extensions.policy.extension_overrides).map(n=>x(Oe(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(Oe(e.search.query_expansion),["enabled","provider"]),e.search.rerank=x(Oe(e.search.rerank),["enabled","model","top_k"]),e.providers=x(e.providers,["openai","ollama"]),e.providers.openai=x(Oe(e.providers.openai),["base_url","api_key","model"]),e.providers.ollama=x(Oe(e.providers.ollama),["base_url","model"]),e.vector_store=x(e.vector_store,["adapter","collection_name","qdrant","lancedb"]),e.vector_store.qdrant=x(Oe(e.vector_store.qdrant),["url","api_key"]),e.vector_store.lancedb=x(Oe(e.vector_store.lancedb),["path"])}function T0(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 A0(e,t){return{...e.validation,parent_reference:t.parent_reference,metadata_profile:t.metadata_profile,metadata_required_fields:G_(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:$t(e.validation?.lifecycle_stale_blocker_reason_patterns??S.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:$t(e.validation?.lifecycle_closure_like_blocked_reason_patterns??S.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:$t(e.validation?.lifecycle_closure_like_resolution_patterns??S.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:$t(e.validation?.lifecycle_closure_like_actual_result_patterns??S.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:jl(e.validation?.estimate_defaults_by_type)}}function S0(e){return{...S.search,...e.search,mutation_refresh_policy:L_(e.search?.mutation_refresh_policy),query_expansion:{...S.search.query_expansion,...e.search?.query_expansion,enabled:P_(e.search?.query_expansion?.enabled),provider:M_(e.search?.query_expansion?.provider)},rerank:{...S.search.rerank,...e.search?.rerank,enabled:F_(e.search?.rerank?.enabled),model:$_(e.search?.rerank?.model),top_k:j_(e.search?.rerank?.top_k)}}}function k0(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 x0(e){return{...e.vector_store,adapter:e.vector_store?.adapter??S.vector_store.adapter,collection_name:U_(e.vector_store?.collection_name),qdrant:{...e.vector_store?.qdrant},lancedb:{...e.vector_store?.lancedb}}}function C0(e,t,n,r){return{...e,item_format:"toon",validation:A0(e,t),governance:t,agent_guidance:z_(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:S0(e),context:k0(e),extensions:{enabled:Vl(e.extensions?.enabled),disabled:Vl(e.extensions?.disabled),policy:V_(e.extensions?.policy)},vector_store:x0(e)}}function H_(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(!se(i,s)){if(s===void 0){delete e[o];continue}if(typeof i=="object"&&i!==null&&!Array.isArray(i)&&typeof s=="object"&&s!==null&&!Array.isArray(s)){let a=e[o],c=typeof a=="object"&&a!==null&&!Array.isArray(a)?a:{};H_(c,i,s),Object.keys(c).length>0?e[o]=c:delete e[o];continue}e[o]=structuredClone(s)}}}var W_=["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 R_(e,t){let n=T0(e),r=ls(n),o=We(n.schema),i=c0(n,t),s=C0(n,r,o,i),a=x({...s,governance:e0(r)},W_);return v0(a),a}function O0(e,t={}){let n=R_(e,t.persist_source);if(t.persist_source){let r=B_(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=R_(r,t.persist_source),i=structuredClone(t.persist_source.source_settings);return H_(i,o,n),`${JSON.stringify(x(i,W_),null,2)}
|
|
86
|
+
`}return`${JSON.stringify(n,null,2)}
|
|
87
|
+
`}async function jt(e){let t=Ae(e),n=[t];await ze({path:t,scope:"project"});let r=x_(e);if(r){let l=await Mt(r.tracked_paths);if(ao(l,r.signatures))return cs(r.value)}let o=await Mt([t]),i;try{i=await G(t)}catch{return co("settings_read_fs_error")}if(i===null){let l=co();return await zl(e,[t],l,o,[t]),l}let s=await Mt([t]);if(!ao(o,s))return Ft(e),jt(e);let a;try{a=JSON.parse(i)}catch{let l=co("settings_read_invalid_json");return await zl(e,[t],l,s,[t]),l}let c=v_(a);if(!c.success){let l=co("settings_read_invalid_schema");return await zl(e,[t],l,s,[t]),l}try{let l=B_(c.data),d=o0(e,l.schema,t);n=d;let u=await Mt(d),p=await qp(e,l.schema),f=await Vp(e,l.schema),y=await Mt(d),g={...l,item_types:{definitions:ir([...l.item_types.definitions,...Gl(f.type_definitions_from_file)])},schema:f.schema};Bl(g,n0(c.data,g));let b={settings:g,metadata:{has_explicit_item_format:l0(a)},warnings:[...c.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?ao(u,y)?as(e,{tracked_paths:d,signatures:y,value:cs(b)}):Ft(e):Ft(e),b}catch{let l=co("settings_read_merge_failed");return await s0(e,n,l),l}}async function Xe(e){return(await jt(e)).settings}async function lo(e,t,n=XN){let r=Ae(e),o=O0(t,{persist_source:Hl(t)});try{await Rl({pmRoot:e,filePath:r,raw:o,op:n,author:Xr(void 0,t.author_default),lockTtlSeconds:t.locks.ttl_seconds,lockWaitMs:t.locks.wait_ms,recordCreation:!1}),await me({path:r,scope:"project",op:n})}finally{Ft(e)}}import{spawnSync as Y_}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 I0="PM_DISABLE_OLLAMA_AUTO_DEFAULTS",R0="PM_OLLAMA_MODEL",N0="http://localhost:11434",D0="qwen3-embedding:0.6b",L0=".agents/pm/search/lancedb/",P0=1500,M0=2500,F0=/qwen.*(?:embed|embedding)|(?:embed|embedding).*qwen/i,$0=/embed|embedding/i,Je=P;function j0(){let e=Je(process.env[I0]);if(!e)return!1;let t=e.toLowerCase();return t==="1"||t==="true"||t==="yes"}function K_(e){return e.some(t=>Je(t)!==null)}function U0(e){let t=Je(e);return!!(t&&t.toLowerCase()!=="ollama")}function z0(e){let t=Je(e);return!!(t&&t.toLowerCase()!=="lancedb")}function q0(e){return U0(e.search?.provider)||z0(e.vector_store?.adapter)||K_([e.providers?.openai?.base_url,e.providers?.openai?.model,e.providers?.openai?.api_key])?!0:K_([e.vector_store?.qdrant?.url,e.vector_store?.qdrant?.api_key])}function V0(){let e=Y_("ollama",["--version"],{encoding:"utf8",timeout:P0});return e.error?!1:e.status===0}function G0(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=>F0.test(i));return r||(n.find(i=>$0.test(i))??null)}function B0(e){let t=Je(e.providers?.ollama?.model);if(t)return t;let n=Je(process.env[R0]);if(n)return n;let r=Y_("ollama",["list"],{encoding:"utf8",timeout:M0});if(!r.error&&r.status===0){let o=G0(typeof r.stdout=="string"?r.stdout:"");if(o)return o}return null}function H0(e){return{baseUrl:Je(e.providers?.ollama?.base_url)===null,model:Je(e.providers?.ollama?.model)===null,lancedbPath:Je(e.vector_store?.lancedb?.path)===null,embeddingModel:Je(e.search?.embedding_model)===null}}function W0(e){return e.baseUrl||e.model||e.lancedbPath||e.embeddingModel}function K0(e,t,n){if(!t.baseUrl&&!t.model)return;let r=e.providers??={},o=r.ollama??={};t.baseUrl&&(o.base_url=N0),t.model&&(o.model=n)}function Y0(e,t){if(!t.lancedbPath)return;let n=e.vector_store??={},r=n.lancedb??={};r.path=L0}function X0(e,t,n){if(!t.embeddingModel)return;let r=e.search??={};r.embedding_model=n}function sr(e){let t={settings:e,auto_ollama_defaults_applied:!1};if(j0()||q0(e))return t;let n=H0(e);if(!W0(n)||n.model&&!V0())return t;let r=structuredClone(e),o=B0(r);return o?(K0(r,n,o),Y0(r,n),X0(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 ${D0} or configure providers.ollama.model explicitly (and search.embedding_model if you need an override).`}}import{spawn as J0}from"node:child_process";import{mkdirSync as X_,rmSync as Q_,statSync as Q0}from"node:fs";import ds 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 Z_="reindex",Z0="search/pending-refresh.json",eD="search/pending-refresh.gate.lock",tD=3e4,nD="PM_SEARCH_REFRESH_INLINE",ey="PM_SEARCH_REFRESH_CHILD",rD=3e4;function J_(e){if(typeof e!="string")return!1;let t=e.trim().toLowerCase();return t==="1"||t==="true"||t==="yes"||t==="on"}function Kl(){if(J_(process.env[nD])||J_(process.env[ey]))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 ty(e){return ds.join(e,Z0)}function ny(e){return ds.join(e,eD)}function oD(e){let t=ny(e);try{if(Date.now()-Q0(t).mtimeMs<tD)return!1;Q_(t,{recursive:!0,force:!0})}catch{}try{return X_(ds.dirname(t),{recursive:!0}),X_(t),!0}catch{return!1}}function iD(e){try{Q_(ny(e),{recursive:!0,force:!0})}catch{}}async function ry(e,t,n){for(let r=0;r<50;r+=1){if(oD(e))try{return await t()}finally{iD(e)}await sD(20)}return n}function sD(e){return new Promise(t=>{setTimeout(t,e)})}async function Yl(e){let t=await G(ty(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 oy(e,t){await D(ty(e),`${JSON.stringify({ids:t})}
|
|
88
|
+
`)}async function Wl(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 Yl(e),s=[...new Set([...i,...n])].sort((a,c)=>a.localeCompare(c));await oy(e,s)};await ry(e,async()=>(await r(),!0),!1)||await r()}async function aD(e){return ry(e,async()=>{let t=await Yl(e);return t.length>0&&await oy(e,[]),t},[])}function cD(){return ds.join(st(import.meta.url,["../../.."]),"dist","cli","search-refresh.js")}function Xl(e){try{let t=J0(process.execPath,[cD()],{detached:!0,stdio:"ignore",env:{...process.env,PM_PATH:e,[ey]:"1"}});t.on("error",()=>{}),t.unref()}catch{}}function lD(e){setTimeout(()=>Xl(e),rD)}async function iy(e,t){await Wl(e,t),Xl(e)}async function g5(e,t,n=lD){let r=[],o=[];if(!await Y(e))return{processed:o,rounds:0,warnings:r};let i;try{let u=await jt(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=sr(u.settings).settings}catch(u){return n(e),{processed:o,rounds:0,warnings:[`search_background_refresh_settings_read_failed:${j(u)}`]}}let s=null;try{s=await we(e,Z_,i.locks.ttl_seconds,Xr(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,c=!1,l=!1;try{for(;;){let u=await aD(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 Wl(e,u),c=!0,l=!0;break}o.push(...p.refreshed)}catch(p){r.push(`search_background_refresh_failed:${j(p)}`),await Wl(e,u),c=!0;break}}}finally{await s?.()}return l&&n(e),(c?[]:await Yl(e)).length>0&&Xl(e),{processed:[...new Set(o)].sort((u,p)=>u.localeCompare(p)),rounds:a,warnings:r}}import hn from"node:fs/promises";import ay from"node:path";import{randomUUID as dD}from"node:crypto";import{createRequire as uD}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 fD="metadata-query-index.sqlite",uo="4";function pD(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}var us;function mD(e,t){let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=22?pD(t):null}function fo(){return us!==void 0||(us=mD(process.versions.node,uD(import.meta.url))),us}function sy(e,t){return Math.max(0,Math.floor(e===void 0?t:e))}function ar(e){return ay.join(e,"runtime",fD)}function gD(e){e.exec(`
|
|
89
|
+
PRAGMA foreign_keys = ON;
|
|
90
|
+
PRAGMA journal_mode = OFF;
|
|
91
|
+
PRAGMA synchronous = OFF;
|
|
92
|
+
CREATE TABLE metadata (
|
|
93
|
+
key TEXT PRIMARY KEY,
|
|
94
|
+
value TEXT NOT NULL
|
|
95
|
+
) STRICT;
|
|
96
|
+
CREATE TABLE items (
|
|
97
|
+
id TEXT PRIMARY KEY,
|
|
98
|
+
relative_path TEXT NOT NULL UNIQUE,
|
|
99
|
+
metadata_json TEXT NOT NULL,
|
|
100
|
+
status TEXT NOT NULL,
|
|
101
|
+
type TEXT NOT NULL,
|
|
102
|
+
priority INTEGER NOT NULL,
|
|
103
|
+
updated_at TEXT NOT NULL,
|
|
104
|
+
created_at TEXT NOT NULL,
|
|
105
|
+
parent TEXT,
|
|
106
|
+
assignee TEXT,
|
|
107
|
+
sprint TEXT,
|
|
108
|
+
release TEXT
|
|
109
|
+
) STRICT;
|
|
110
|
+
CREATE INDEX items_default_order
|
|
111
|
+
ON items(priority, updated_at DESC, id);
|
|
112
|
+
CREATE INDEX items_status_default_order
|
|
113
|
+
ON items(status, priority, updated_at DESC, id);
|
|
114
|
+
CREATE INDEX items_type_default_order
|
|
115
|
+
ON items(type, priority, updated_at DESC, id);
|
|
116
|
+
CREATE INDEX items_parent_default_order
|
|
117
|
+
ON items(parent, priority, updated_at DESC, id);
|
|
118
|
+
CREATE TABLE item_metadata_keys (
|
|
119
|
+
item_id TEXT NOT NULL,
|
|
120
|
+
key TEXT NOT NULL,
|
|
121
|
+
PRIMARY KEY(item_id, key),
|
|
122
|
+
FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
|
|
123
|
+
) STRICT;
|
|
124
|
+
CREATE INDEX item_metadata_keys_key_item
|
|
125
|
+
ON item_metadata_keys(key, item_id);
|
|
126
|
+
CREATE TABLE item_linked_files (
|
|
127
|
+
item_id TEXT NOT NULL,
|
|
128
|
+
path TEXT NOT NULL,
|
|
129
|
+
scope TEXT NOT NULL,
|
|
130
|
+
note TEXT,
|
|
131
|
+
PRIMARY KEY(item_id, path, scope),
|
|
132
|
+
FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
|
|
133
|
+
) STRICT;
|
|
134
|
+
CREATE INDEX item_linked_files_path_scope_item
|
|
135
|
+
ON item_linked_files(path, scope, item_id);
|
|
136
|
+
CREATE VIRTUAL TABLE item_search USING fts5(
|
|
137
|
+
id UNINDEXED,
|
|
138
|
+
title,
|
|
139
|
+
description,
|
|
140
|
+
tags,
|
|
141
|
+
tokenize = 'unicode61'
|
|
142
|
+
);
|
|
143
|
+
`)}function ps(e,t,n){e.prepare("INSERT INTO metadata(key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value").run(t,n)}function cy(e,t){let n=t.metadata;e.prepare(`INSERT INTO items(
|
|
144
|
+
id, relative_path, metadata_json, status, type, priority,
|
|
145
|
+
updated_at, created_at, parent, assignee, sprint, release
|
|
146
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
147
|
+
ON CONFLICT(id) DO UPDATE SET
|
|
148
|
+
relative_path = excluded.relative_path,
|
|
149
|
+
metadata_json = excluded.metadata_json,
|
|
150
|
+
status = excluded.status,
|
|
151
|
+
type = excluded.type,
|
|
152
|
+
priority = excluded.priority,
|
|
153
|
+
updated_at = excluded.updated_at,
|
|
154
|
+
created_at = excluded.created_at,
|
|
155
|
+
parent = excluded.parent,
|
|
156
|
+
assignee = excluded.assignee,
|
|
157
|
+
sprint = excluded.sprint,
|
|
158
|
+
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 ly(e){let t=ar(e.pmRoot),n=fo();if(!n){await hn.rm(t,{force:!0});return}await hn.mkdir(ay.dirname(t),{recursive:!0});let r=`${t}.${dD()}.tmp`,o;try{o=new n(r),gD(o),o.exec("BEGIN IMMEDIATE"),ps(o,"version",uo),ps(o,"context_fingerprint",e.contextFingerprint),ps(o,"source_cursor",e.sourceCursor);for(let i of e.rows)cy(o,i);o.exec("COMMIT"),o.close(),o=void 0,await hn.rm(t,{force:!0}),await hn.rename(r,t)}catch(i){throw o?.close(),await Promise.allSettled([hn.rm(r,{force:!0})]),i}}function ms(e){return Object.fromEntries(e.prepare("SELECT key, value FROM metadata").all().map(t=>[String(t.key),String(t.value)]))}async function dy(e){let t=ar(e.pmRoot),n;try{await hn.access(t);let r=fo();if(!r)return!1;n=new r(t),n.exec("PRAGMA foreign_keys = ON");let o=ms(n);if(o.version!==uo||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 c of e.deletedRelativePaths??[]){let l=s.get(c);i.run(c),l&&a.run(l.id)}return e.row&&cy(n,e.row),ps(n,"source_cursor",e.sourceCursor),n.exec("COMMIT"),n.close(),!0}catch{try{n?.exec("ROLLBACK")}catch{}return n?.close(),!1}}function fs(e,t,n,r,o){!r||r.length===0||(e.push(`${n} ${o} (${r.map(()=>"?").join(", ")})`),t.push(...r))}function _D(e){let t=[],n=[];fs(t,n,"status",e.statuses,"IN"),fs(t,n,"status",e.excludeStatuses,"NOT IN"),fs(t,n,"type",e.types,"IN"),fs(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 yD(e){let t=fo();if(!t)return null;let n=e.query??{},{where:r,parameters:o}=_D(n),i;try{i=new t(ar(e.pmRoot),{readOnly:!0});let s=ms(i);if(s.version!==uo||s.source_cursor!==e.expectedSourceCursor)return i.close(),null;let a=i.prepare(`SELECT COUNT(*) AS count FROM items${r}`).get(...o),c=[],l="";n.limit!==void 0?(l+=" LIMIT ?",c.push(Math.max(0,Math.floor(n.limit))),n.offset!==void 0&&(l+=" OFFSET ?",c.push(Math.max(0,Math.floor(n.offset))))):n.offset!==void 0&&(l+=" LIMIT -1 OFFSET ?",c.push(Math.max(0,Math.floor(n.offset))));let u=i.prepare(`SELECT metadata_json FROM items${r}
|
|
159
|
+
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${l}`).all(...o,...n.terminalStatuses??[],...c).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 hD(e){let t=fo();if(!t||e.paths.length===0)return null;let n;try{n=new t(ar(e.pmRoot),{readOnly:!0});let r=ms(n);if(r.version!==uo||r.source_cursor!==e.expectedSourceCursor)return n.close(),null;let o=e.paths.map(()=>"?").join(", "),i=e.scope===void 0?"":" AND scope = ?",s=[...e.paths,...e.scope===void 0?[]:[e.scope]],a=`path IN (${o})${i}`,c=n.prepare(`SELECT COUNT(DISTINCT item_id) AS count
|
|
160
|
+
FROM item_linked_files
|
|
161
|
+
WHERE ${a}`).get(...s),l=sy(e.limit,50),d=sy(e.offset,0),u=n.prepare(`SELECT items.id, items.metadata_json
|
|
162
|
+
FROM items
|
|
163
|
+
WHERE EXISTS (
|
|
164
|
+
SELECT 1 FROM item_linked_files
|
|
165
|
+
WHERE item_linked_files.item_id = items.id AND ${a}
|
|
166
|
+
)
|
|
167
|
+
ORDER BY items.priority ASC, items.updated_at DESC, items.id ASC
|
|
168
|
+
LIMIT ? OFFSET ?`).all(...s,l,d),p=[];if(u.length>0){let f=u.map(b=>String(b.id)),y=n.prepare(`SELECT item_id, path, scope, note
|
|
169
|
+
FROM item_linked_files
|
|
170
|
+
WHERE item_id IN (${f.map(()=>"?").join(", ")})
|
|
171
|
+
AND ${a}
|
|
172
|
+
ORDER BY path ASC, scope ASC`).all(...f,...s),g=new Map(f.map(b=>[b,[]]));for(let b of y){let E=String(b.item_id),O=g.get(E);O.push({path:String(b.path),scope:String(b.scope),...b.note===null?{}:{note:String(b.note)}}),g.set(E,O)}for(let b of u){let E=JSON.parse(String(b.metadata_json));p.push({item:E,files:g.get(String(b.id))})}}return n.close(),{source_cursor:r.source_cursor,total:Number(c.count),matches:p}}catch{return n?.close(),null}}async function bD(e){let t=fo();if(!t)return null;let n;try{n=new t(ar(e.pmRoot),{readOnly:!0});let r=ms(n);if(r.version!==uo||r.source_cursor!==e.expectedSourceCursor)return n.close(),null;let i=n.prepare(`SELECT items.metadata_json
|
|
173
|
+
FROM item_search
|
|
174
|
+
JOIN items ON items.id = item_search.id
|
|
175
|
+
WHERE item_search MATCH ?
|
|
176
|
+
ORDER BY bm25(item_search), items.priority, items.updated_at DESC, items.id
|
|
177
|
+
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 gs(e){await hn.rm(ar(e),{force:!0})}import ce from"node:fs/promises";import W from"node:path";import{createHash as wD,randomUUID as gy}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8b8c705a-8d80-576f-8642-f6f686cdbed9")}catch{}})();var Qe=8,Ql=500,ED="metadata-derived-index",vD="metadata-cache.json",TD="metadata-cache-bodies.json",AD="metadata-cache-collections.json",SD="metadata-cache-delta.json",kD="metadata-cache-manifest.json",uy=4,xD=["comments","notes","learnings","files","tests","test_runs","docs"];function _y(){return zr(Ct())}function ys(e){let t={...e},n={};for(let r of xD)r in t&&(n[r]=t[r],delete t[r]);return{light:t,heavy:n}}function yy(e,t){return!t||Object.keys(t).length===0?e:{...e,...t}}function hy(e,t,n,r){let o=wD("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 hs(e){return W.join(e,"runtime",vD)}function bs(e){return W.join(e,"runtime",TD)}function ws(e){return W.join(e,"runtime",AD)}function Zl(e){return W.join(e,"runtime",SD)}function ed(e){return W.join(e,"runtime",kD)}function Es(e,t){let n=W.extname(e);return`${e.slice(0,-n.length)}.${t}${n}`}var CD=24,Fe=new Map,vs=new WeakMap;function td(e){return vs.get(e)??e.source_cursor}function OD(e,t){let n=td(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){vs.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 ID(e,t){if(!e)return;let n=td(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){vs.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 RD(e,t){if(!e)return;let n=td(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){vs.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 ND(e,t,n,r){!e||!r||e.context_fingerprint!==r.context_fingerprint||(OD(e,r),ID(t,r),RD(n,r))}function Jl(e,t){Fe.size>=CD&&!Fe.has(e)&&Rn(Fe),Fe.set(e,t)}async function Ut(e,t){let n;try{n=await ce.stat(e)}catch{return Fe.delete(e),null}let r=Fe.get(e);if(r&&po(r.signature,n.mtimeMs,n.ctimeMs,n.size))return Fe.delete(e),Fe.set(e,r),r.envelope;let o;try{o=t(await ce.readFile(e,"utf8"))}catch{o=null}return Jl(e,{signature:{mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size},envelope:o}),o}async function DD(e,t,n){let r=a=>{let c=JSON.parse(a);return c.version!==Qe||typeof c.source_cursor!="string"||typeof c.entries!="object"||c.entries===null?null:c},o=hs(e),i=await Ut(o,r);if(!t||i===null||i.context_fingerprint===t)return i;let s=await Ut(Es(o,t),r);return s===null&&_o(n,`metadata_cache_context_changed:${i.context_fingerprint}->${t}`),s}async function LD(e,t){let n=i=>{let s=JSON.parse(i);return s.version!==Qe||typeof s.source_cursor!="string"||typeof s.bodies!="object"||s.bodies===null?null:s},r=bs(e),o=await Ut(r,n);return t&&o?.context_fingerprint!==t?await Ut(Es(r,t),n):o}async function PD(e,t){let n=i=>{let s=JSON.parse(i);return s.version!==Qe||typeof s.source_cursor!="string"||typeof s.collections!="object"||s.collections===null?null:s},r=ws(e),o=await Ut(r,n);return t&&o?.context_fingerprint!==t?await Ut(Es(r,t),n):o}async function nd(e){let t=Zl(e),n=await Ut(t,r=>{let o=JSON.parse(r);return o.version!==Qe||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 ce.stat(t),{envelope:null,invalid:!0}}catch{return{envelope:null,invalid:!1}}}async function rd(e){let t=ed(e),n=await Ut(t,r=>{let o=JSON.parse(r);return o.version!==Qe||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 ce.stat(t),await cr(e)}catch{}return null}async function mo(e,t){await ce.mkdir(W.dirname(e),{recursive:!0}),await D(e,JSON.stringify(t));try{let r=await ce.stat(e);Jl(e,{signature:{mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size},envelope:t})}catch{Fe.delete(e)}let n=W.dirname(W.dirname(e));if(e===hs(n)||e===bs(n)||e===ws(n)){let r=Es(e,t.context_fingerprint);await D(r,JSON.stringify(t));try{let c=await ce.stat(r);Jl(r,{signature:{mtime_ms:c.mtimeMs,ctime_ms:c.ctimeMs,size:c.size},envelope:t})}catch{Fe.delete(r)}let o=W.dirname(e),i=W.extname(e),s=W.basename(e,i),a=(await ce.readdir(o,{withFileTypes:!0}).catch(()=>[])).filter(c=>c.isFile()&&c.name!==W.basename(e)&&c.name.startsWith(`${s}.`)&&c.name.endsWith(i)).map(c=>W.join(o,c.name));if(a.length>uy){let c=(await Promise.all(a.map(async l=>{try{return{path:l,mtime:(await ce.stat(l)).mtimeMs}}catch{return null}}))).filter(l=>l!==null);for(let l of c.sort((d,u)=>d.mtime-u.mtime).slice(0,Math.max(0,c.length-uy)))await ce.rm(l.path,{force:!0}),Fe.delete(l.path)}}}function MD(e,t,n){return n?t===n&&e!==n:t==="toon"&&e!=="toon"}function by(e,t,n){return e===void 0||MD(e,t,n)}function _o(e,t){e&&!e.includes(t)&&e.push(t)}function po(e,t,n,r){return e.mtime_ms===t&&e.ctime_ms===n&&e.size===r}async function FD(e,t,n){let r=W.join(e,t);try{let o=await ce.readdir(r);return{folder:t,dirPath:r,files:o}}catch(o){return typeof o=="object"&&o!==null&&"code"in o&&!ue(o)&&_o(n,`item_list_directory_read_failed:${t}`),{folder:t,dirPath:r,files:[]}}}async function $D(e,t){try{let n=await ce.stat(W.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 _s(e,t){return Object.fromEntries(await Promise.all(t.map(async n=>await $D(e,n))))}function go(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&&po(o,r.mtime_ms,r.ctime_ms,r.size)})}function jD(e){return Qo.some(t=>e.toLowerCase().endsWith(t))}function UD(e,t,n,r,o,i){r||(e.metadata=!0),t&&!o&&(e.body=!0),n&&!i&&(e.collections=!0)}async function zD(e,t,n){if(n)for(let r of await ze({path:e,scope:"project"}))_o(t,r)}function fy(e,t,n,r){if(e)return t&&n?n.collections:r}async function qD(e,t,n){let r=await ce.stat(e),o=r.mtimeMs,i=r.ctimeMs,{size:s}=r,a=Ar(e);await zD(e,n.warnings,n.dispatchReadHooks);let c=n.previousEntries[t],l=!n.forceSourceRead&&c!==void 0&&po(c,o,i,s),d=n.previousBodies[t],u=!n.forceSourceRead&&d!==void 0&&po(d,o,i,s),p=n.previousCollections[t],f=!n.forceSourceRead&&p!==void 0&&po(p,o,i,s);if(!(!l||n.includeBody&&!u||n.includeCollections&&!f))return{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:c.metadata,heavyMetadata:fy(n.includeCollections,f,p,void 0),bodyLength:c.body_length,body:n.includeBody?d.body:void 0};let g=await ce.readFile(e,"utf8"),b=cn(g,{format:a,schema:n.schema,extensionFieldNames:n.extensionFieldNames,onWarning:O=>_o(n.warnings,O)}),E=ys(b.metadata);return UD(n.state.misses,n.includeBody,n.includeCollections,l,u,f),{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:l?c.metadata:E.light,heavyMetadata:fy(n.includeCollections,f,p,E.heavy),bodyLength:l?c.body_length:b.body.length,body:n.includeBody?b.body:void 0}}function VD(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?yy(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};by(i?.itemFormat,r.itemFormat,n.preferredFormat)&&n.state.documentsById.set(o.id,{candidate:s,itemFormat:r.itemFormat})}async function GD(e,t,n,r){try{let o=await qD(t,n,r);VD(t,n,r,o)}catch{_o(r.warnings,`item_list_item_read_failed:${e}/${W.basename(t)}`)}}function BD(e,t){return e&&e.context_fingerprint===t?e.entries:{}}function HD(e,t){return e&&e.context_fingerprint===t?e.bodies:{}}function WD(e,t){return e&&e.context_fingerprint===t?e.collections:{}}function KD(){return{newEntries:{},newBodies:{},newCollections:{},documentsById:new Map,misses:{metadata:!1,body:!1,collections:!1}}}function YD(e,t){let n=[];for(let{folder:r,dirPath:o,files:i}of e)for(let s of i){if(!jD(s))continue;let a=W.join(o,s),c=W.relative(t.pmRoot,a);n.push(GD(r,a,c,t))}return n}async function XD(e){if(!(!(e.state.misses.metadata||Object.keys(e.previousEntries).length!==Object.keys(e.state.newEntries).length||!go(e.existingCache?.directory_signatures,e.directorySignatures))&&e.existingCache!==null&&e.existingCache.context_fingerprint===e.contextFingerprint))try{await mo(hs(e.pmRoot),{version:Qe,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,directory_signatures:e.directorySignatures,entries:e.state.newEntries}),await mo(ed(e.pmRoot),{version:Qe,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:W.relative(e.pmRoot,r.item_path),metadata:ys(r.metadata).light,linkedFiles:r.metadata.files??[]}));n.length>=e.minimumIndexedItems?await ly({pmRoot:e.pmRoot,contextFingerprint:e.contextFingerprint,sourceCursor:e.sourceCursor,rows:n}):await gs(e.pmRoot)}catch{}}async function JD(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 mo(bs(e.pmRoot),{version:Qe,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,bodies:e.state.newBodies}).catch(()=>{})}async function QD(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 mo(ws(e.pmRoot),{version:Qe,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,collections:e.state.newCollections}).catch(()=>{})}async function Ts(e,t,n={}){let r=await rd(e);return n.required!==!0&&(r===null||r.entry_count<Ql)?async()=>{}:we(e,ED,30,t,!1,!1,3e3)}async function ZD(e,t){let n=await rd(e);if(n===null)return null;let r=await nd(e);if(r.invalid)return await cr(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&&!go(i,await _s(e,t))?null:{source_cursor:o,entry_count:n.entry_count}}function py(e,t){let n=W.relative(e,t);return n===""||n===".."||n.startsWith(`..${W.sep}`)||W.isAbsolute(n)?null:n}async function cr(e){await Promise.all([hs(e),bs(e),ws(e),Zl(e),ed(e)].map(async t=>{await ce.rm(t,{force:!0}),Fe.delete(t)})),await gs(e)}async function eL(e){if(e.mutation.document===null)return{entry:null,body:null,collections:null};let t=await ce.stat(e.mutation.itemPath),n=ys(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 tL(e,t,n){return e?.context_fingerprint===t&&e.base_source_cursor===n?structuredClone(e.changes):{}}async function As(e){let t=py(e.pmRoot,e.itemPath),n=e.previousItemPath?py(e.pmRoot,e.previousItemPath):void 0;if(t===null||n===null)return await cr(e.pmRoot),["metadata_derived_index_path_invalidated"];try{let r=hy(e.preferredFormat,e.typeToFolder,e.schema,_y()),o=await rd(e.pmRoot);if(o===null||o.context_fingerprint!==r)return[];let i=o.source_cursor,s=await nd(e.pmRoot);if(s.invalid)return await cr(e.pmRoot),["metadata_derived_index_refresh_failed"];let a=tL(s.envelope,r,i),c=s.envelope?.context_fingerprint===r&&s.envelope.base_source_cursor===i?s.envelope.source_cursor:i;n!==void 0&&(a[n]={entry:null,body:null,collections:null}),a[t]=await eL({mutation:e});let l=gy();return await mo(Zl(e.pmRoot),{version:Qe,context_fingerprint:r,base_source_cursor:i,source_cursor:l,directory_signatures:await _s(e.pmRoot,[...new Set(Object.values(e.typeToFolder))]),changes:a}),await dy({pmRoot:e.pmRoot,contextFingerprint:r,expectedSourceCursor:c,sourceCursor:l,row:e.document===null?null:{relativePath:t,metadata:ys(e.document.metadata).light,linkedFiles:e.document.metadata.files},deletedRelativePaths:[...n===void 0?[]:[n],...e.document===null?[t]:[]]})||await gs(e.pmRoot),[]}catch{return await cr(e.pmRoot).catch(()=>{}),["metadata_derived_index_refresh_failed"]}}function nL(e){return[...e.documentsById.values()].sort((t,n)=>t.candidate.metadata.id.localeCompare(n.candidate.metadata.id)).map(t=>t.candidate)}function my(e,t,n){return e?.context_fingerprint===t&&e.source_cursor===n}function rL(e,t,n,r,o){return e.every(i=>(!t||r[i]!==void 0)&&(!n||o[i]!==void 0))}function oL(e){let t=new Map;for(let[n,r]of Object.entries(e.previousEntries)){let o=Ar(n);if(!o)continue;let i=e.includeCollections?yy(r.metadata,e.previousCollections[n]?.collections):r.metadata,s=t.get(i.id);by(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:W.join(e.pmRoot,n)}})}return[...t.values()].sort((n,r)=>n.candidate.metadata.id.localeCompare(r.candidate.metadata.id)).map(n=>n.candidate)}function iL(e){return e.forceSourceScan||oc()||e.existingCache?.context_fingerprint!==e.contextFingerprint||e.entryKeys.length<e.minimumIndexedItems||!go(e.existingCache?.directory_signatures,e.directorySignatures)?!1:[!e.includeBody||my(e.existingBodyCache,e.contextFingerprint,e.existingCache.source_cursor),!e.includeCollections||my(e.existingCollectionsCache,e.contextFingerprint,e.existingCache.source_cursor)].every(Boolean)&&rL(e.entryKeys,e.includeBody,e.includeCollections,e.previousBodies,e.previousCollections)}async function yo(e,t,n,r,o,i={}){let s=i.includeBody!==!1,a=i.includeCollections!==!1,c=_y(),l=hy(t,n,o,c),d=await nd(e);d.invalid&&await cr(e);let u=await DD(e,l,i.cacheDiagnostics),p=s?await LD(e,l):null,f=a?await PD(e,l):null;ND(u,p,f,d.envelope);let y=BD(u,l),g=HD(p,l),b=WD(f,l),E=[...new Set(Object.values(n))],O=await _s(e,E),z=Object.keys(y),M=Math.max(1,Math.floor(i.derivedIndexMinimumItems??Ql));if(iL({forceSourceScan:i.forceSourceScan===!0,contextFingerprint:l,existingCache:u,existingBodyCache:p,existingCollectionsCache:f,directorySignatures:O,entryKeys:z,minimumIndexedItems:M,includeBody:s,includeCollections:a,previousBodies:g,previousCollections:b}))return oL({pmRoot:e,preferredFormat:t,includeBody:s,includeCollections:a,previousEntries:y,previousBodies:g,previousCollections:b});let Z=await Promise.all(E.map(lE=>FD(e,lE,r))),le=oc(),de=KD(),Wt={pmRoot:e,preferredFormat:t,warnings:r,schema:o,extensionFieldNames:c,includeBody:s,includeCollections:a,forceSourceRead:i.forceSourceScan===!0,dispatchReadHooks:le,previousEntries:y,previousBodies:g,previousCollections:b,state:de};await Promise.all(YD(Z,Wt));let Kt=await _s(e,E),ra=go(O,Kt)?Kt:{},oa=de.misses.metadata||Object.keys(y).length!==Object.keys(de.newEntries).length||!go(u?.directory_signatures,ra)||u===null?gy():u.source_cursor;return await XD({pmRoot:e,contextFingerprint:l,sourceCursor:oa,existingCache:u,previousEntries:y,directorySignatures:ra,state:de,minimumIndexedItems:M}),s&&await JD({pmRoot:e,contextFingerprint:l,sourceCursor:oa,existingBodyCache:p,previousBodies:g,state:de}),a&&await QD({pmRoot:e,contextFingerprint:l,sourceCursor:oa,existingCollectionsCache:f,previousCollections:b,state:de}),nL(de)}async function wy(e,t,n,r,o){return(await yo(e,t,n,r,o,{includeBody:!1})).map(s=>({metadata:s.metadata,body:s.body??""}))}async function Ey(e,t,n,r,o){return(await yo(e,t,n,r,o,{includeBody:!1,includeCollections:!1})).map(s=>({metadata:s.metadata,body:s.body??""}))}import ht from"node:fs/promises";import lr 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]="d24d61bf-7db8-5f35-8dbc-5ef93ec8220b")}catch{}})();async function sL(e){try{return await ht.access(e),!0}catch{return!1}}function zt(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}function aL(e,t){e&&(e.includes(t)||e.push(t))}function vy(e){return e??zr(Ct())}function cL(e){return e==="toon"?["toon","json_markdown"]:e==="json_markdown"?["json_markdown","toon"]:["toon","json_markdown"]}function Ss(e){return new h(`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."]})}function od(e){return new h(`Tracker root is not readable at ${e}.`,_.GENERIC_FAILURE,{code:"tracker_root_unreadable",reason:"unreadable",nextSteps:["Grant read and directory-search permission to the tracker root, then retry the SDK read."]})}async function lL(e){let t=lr.parse(lr.resolve(e)).root,n=lr.dirname(lr.resolve(e));for(;n!==t;){let r;try{r=await ht.stat(n)}catch(o){if(zt(o,"ENOTDIR"))throw Ss(e);if(!zt(o,"ENOENT"))throw o;n=lr.dirname(n);continue}if(!r.isDirectory())throw Ss(e);break}}async function id(e){let t;try{t=await ht.stat(e)}catch(n){throw zt(n,"ENOENT")?(await lL(e),new h(`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."]})):zt(n,"ENOTDIR")?Ss(e):zt(n,"EACCES")||zt(n,"EPERM")?od(e):n}if(!t.isDirectory())throw Ss(e);if(process.platform!=="win32"&&((t.mode&292)===0||(t.mode&73)===0))throw od(e);try{await(await ht.opendir(e)).close()}catch(n){throw zt(n,"EACCES")||zt(n,"EPERM")?od(e):n}}async function ho(e,t,n="pm-",r,o=fe){let i=_n(t,n),s=ns(t),a=i===s?[i]:[i,s],c=Object.entries(o),l=cL(r);for(let d of a)for(let[u]of c)for(let p of l){let f=Mn(e,u,d,p,o);if(await sL(f))return{id:d,type:u,itemPath:f,item_format:p}}return null}async function bo(e,t={}){let n=await ht.readFile(e.itemPath,"utf8");await ze({path:e.itemPath,scope:"project"});let r=cn(n,{format:e.item_format,schema:t.schema,extensionFieldNames:vy(t.extensionFieldNames),onWarning:o=>aL(t.warnings,o)});return{raw:n,document:r}}async function Ty(e,t,n=fe,r,o){return await id(e),(await wy(e,t,n,r,o)).map(s=>s.metadata)}async function dL(e,t,n=fe,r,o){return await id(e),(await Ey(e,t,n,r,o)).map(s=>s.metadata)}async function Z5(e,t,n=fe,r,o,i={}){return await id(e),(await yo(e,t,n,r,o,{includeBody:!0,forceSourceScan:i.forceSourceScan})).map(a=>({...a.metadata,body:a.body}))}function sd(e){return{async get(t){let n=await ho(e.pmRoot,t,e.settings.id_prefix,e.settings.item_format,e.typeToFolder);if(!n)return null;let{document:r}=await bo(n,{schema:e.settings.schema});return{item:r.metadata,body:r.body}},list:()=>Ty(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema)}}async function uL(e,t){let n=new Set(Object.values(t)),r=[];return await Promise.all([...n].map(async o=>{try{let i=await ht.readdir(lr.join(e,o));for(let s of i)for(let a of Qo)if(s.toLowerCase().endsWith(a)){r.push(s.slice(0,-a.length));break}}catch{}})),r}async function fL(e,t,n,r){let o=_n(t,n),i=await uL(e,r);if(i.length===0)return[];let s=Math.max(3,Math.floor(o.length/2));return i.map(c=>({id:c,distance:Ue(c,o,s)})).filter(c=>c.distance!==null).sort((c,l)=>c.distance-l.distance).slice(0,3).map(c=>c.id)}async function Ay(e,t,n,r){let o=await fL(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 h(`Item ${t} not found`,_.NOT_FOUND,{nextSteps:i})}function pL(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 Sy(e){let t=e.typeToFolder??Er(e.settings,Ct()).type_to_folder,n=await ho(e.pmRoot,e.id,e.settings.id_prefix,e.settings.item_format,t);if(!n)throw await Ay(e.pmRoot,e.id,e.settings.id_prefix,t);let r=await we(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 bo(n,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames,warnings:o}),a=s.metadata.assignee?.trim(),c=s.metadata.claim_principal?.trim()||a,l=Uc(e.author),d=ls(e.settings);if(a&&c!==l&&!e.force&&!pL(e.op,e.bypassAssigneeConflict)){if(d.ownership_enforcement==="strict")throw new h(`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 mL(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 gL(e){if(!e.skipItemWrite){if(e.effectiveTargetItemPath!==e.originalItemPath){await D(e.originalItemPath,e.originalRaw),await ht.rm(e.effectiveTargetItemPath,{force:!0});return}await D(e.originalItemPath,e.originalRaw)}}async function _L(e){let t=await Sy({pmRoot:e.pmRoot,settings:e.settings,id:e.id,op:e.op,author:e.author,force:e.force,bypassAssigneeConflict:e.bypassAssigneeConflict,extensionFieldNames:e.extensionFieldNames,typeToFolder:e.typeToFolder}),{typeToFolder:n,located:r,originalRaw:o,document:i,warnings:s,releaseLock:a}=t;try{let c=Le(i,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),l=Le(structuredClone(i),{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),d=await e.mutate(l);if(e.skipNoop===!0&&d.changedFields.length===0)return{item:c.metadata,body:c.body,changedFields:[],warnings:[...s,...d.warnings??[]]};l.metadata.updated_at=X();let u=Le(l,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames});await bi({pm_root:e.pmRoot,operation:e.op,before:c,after:u,changed_fields:d.changedFields,sdk:sd({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:n})});let p=await ts({pmRoot:e.pmRoot,settings:e.settings,itemId:r.id,commandLabel:e.op}),f="toon",y=Kr(u,{format:f,schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),g=Mn(e.pmRoot,u.metadata.type,r.id,f,n),b=Fn(e.pmRoot,r.id),E=await De("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:b,item_format:f,before:c,after:u,contents:y}),{effectiveTargetItemPath:O,effectiveSerializedAfter:z,skipItemWrite:M}=mL(E,g,y),Z=await Ts(e.pmRoot,e.author),le=[];try{M||await D(O,z),!M&&O!==r.itemPath&&await ht.rm(r.itemPath);let Wt=gt({nowIso:u.metadata.updated_at,author:e.author,op:e.op,before:c,after:u,message:e.message});try{await _t(b,Wt)}catch(Kt){throw await gL({skipItemWrite:M,effectiveTargetItemPath:O,originalItemPath:r.itemPath,originalRaw:o}),Kt}M||(le=await As({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:n,schema:e.settings.schema,itemPath:O,previousItemPath:r.itemPath,document:u}))}finally{await Z()}let de=[...await me({path:O,scope:"project",op:e.op,item_id:u.metadata.id,item_type:u.metadata.type,before:c,after:u,changed_fields:d.changedFields}),...await me({path:b,scope:"project",op:`${e.op}:history`,item_id:u.metadata.id,item_type:u.metadata.type,before:c,after:u,changed_fields:d.changedFields})];return hi({id:u.metadata.id,op:e.op,item_type:u.metadata.type,previous_status:c.metadata.status,status:u.metadata.status,previous:Ur(c.metadata,d.changedFields),current:Ur(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,...de]}}finally{await a()}}async function yL(e){let t=await Sy({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=vy(void 0),c=Le(o,{schema:e.settings.schema,extensionFieldNames:a});await bi({pm_root:e.pmRoot,operation:"delete",before:c,after:null,changed_fields:["deleted"],sdk:sd({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:t.typeToFolder})});let l=await ts({pmRoot:e.pmRoot,settings:e.settings,itemId:n.id,commandLabel:"delete"}),d=X(),u=Cn,p=gt({nowIso:d,author:e.author,op:"delete",before:c,after:u,message:e.message}),f=Fn(e.pmRoot,n.id),y=await De("item_store_delete",{op:"delete",pm_root:e.pmRoot,item_id:n.id,item_path:n.itemPath,history_path:f,before:c}),g=n.itemPath,b=!1;if(y.handled&&typeof y.result=="object"&&y.result!==null){let M=y.result;typeof M.item_path=="string"&&M.item_path.trim().length>0&&(g=M.item_path),M.skip_delete===!0&&(b=!0)}if(e.dryRun===!0)return{item:c.metadata,changedFields:["deleted"],targetPath:g,warnings:[...i,...l.warnings,...y.warnings]};let E=await Ts(e.pmRoot,e.author),O=[];try{b||await ht.rm(g);try{await _t(f,p)}catch(M){throw b||await D(g,r),M}b||(O=await As({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:t.typeToFolder,schema:e.settings.schema,itemPath:g,document:null}))}finally{await E()}let z=[...await me({path:g,scope:"project",op:"delete",item_id:c.metadata.id,item_type:c.metadata.type,before:c,after:u,changed_fields:["deleted"]}),...await me({path:f,scope:"project",op:"delete:history",item_id:c.metadata.id,item_type:c.metadata.type,before:c,after:u,changed_fields:["deleted"]})];return hi({id:c.metadata.id,op:"delete",item_type:c.metadata.type,previous_status:c.metadata.status,previous:Ur(c.metadata,Object.keys(c.metadata)),changed_fields:["deleted"]}),{item:c.metadata,changedFields:["deleted"],warnings:[...i,...l.warnings,...y.warnings,...O,...z]}}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 hL=3e4;function bn(e,t,n=hL){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 wn(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 bL(e){try{return(await e.text()).replaceAll(/\s+/g," ").trim()}catch(t){return`(failed to read response body: ${j(t)})`}}async function ks(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: ${j(o)}`)}if(!r.ok){let o=await bL(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: ${j(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 iH(e,t){let n=P(e);if(!n)return"unconfigured";let r=P(t);return r&&r.toLowerCase()===n.toLowerCase()?"configured":"auto-detected"}function wL(e){let t=yr(e),n=t.toLowerCase();return n.endsWith("/embeddings")?t:n.endsWith("/v1")?`${t}/embeddings`:`${t}/v1/embeddings`}function xy(e){let t=e.search?.embedding_model;return P(t)||null}function EL(e){let t=P(e.providers?.openai?.base_url),n=P(e.providers?.openai?.model);if(!t||!n)return null;let r=xy(e),o=P(e.providers?.openai?.api_key);return{name:"openai",base_url:t,model:r??n,...o?{api_key:o}:{}}}function vL(e){let t=P(e.providers?.ollama?.base_url),n=P(e.providers?.ollama?.model);if(!t||!n)return null;let r=xy(e);return{name:"ollama",base_url:t,model:r??n}}function Cy(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 TL(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 AL(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 xs(e){let t=EL(e),n=vL(e),r=[t,n].filter(a=>a!==null),o=P(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 ky(e){let t=yr(e.base_url);return e.name==="openai"?{provider:"openai",endpoint:wL(t),model:e.model}:{provider:"ollama",endpoint:`${t}/api/embed`,model:e.model}}function SL(e,t){let n=Cy(t);return e.name==="openai"?{target:ky(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:ky(e),method:"POST",headers:{"content-type":"application/json"},body:{model:e.model,input:n}}}function kL(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 AL(o).map((s,a)=>{let c=s.embedding;if(!On(c))throw new Error(`OpenAI embedding response entry at index ${a} is missing a numeric embedding vector`);return[...c]})}let n=t.embedding;if(On(n))return[[...n]];let r=t.embeddings;if(Array.isArray(r)&&r.length>0)return r.map((o,i)=>{if(!On(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 Oy(e,t,n={}){let r=bn(n.timeout_ms,"Embedding request"),o=wn(n.fetcher,"Embedding request"),i=Cy(t),s=TL(i),a=SL(e,s.uniqueInputs),c=await ks({endpoint:a.target.endpoint,method:a.method,headers:a.headers,body:a.body,timeoutMs:r,fetcher:o,requestLabel:"Embedding request",responseLabel:"Embedding response"}),l=kL(e,c);if(l.length!==s.uniqueInputs.length)throw new Error(`Embedding response cardinality mismatch: expected ${s.uniqueInputs.length} vector(s), received ${l.length}`);return s.originalToUniqueIndex.map(d=>[...l[d]])}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="61c0153b-8fa5-5c26-aa88-ca9807f2d160")}catch{}})();var Cs=["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 ad(e){let t=e?.search?.corpus_fields;if(!Array.isArray(t))return[...Cs];let n=new Set(Cs),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:[...Cs]}var xL=8e3,cd=3200,En="...[semantic corpus truncated]",CL="search_embedding_corpus_max_characters_invalid:using_provider_default";function et(e){return e.map(t=>t==null?"":String(t).trim()).filter(t=>t.length>0).join(" ")}function OL(e){return(e.reminders??[]).map(t=>et([t.at,t.text]))}function IL(e){return(e.events??[]).map(t=>et([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 RL(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 NL(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 cH(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??[])RL(t,n);return NL(t,e),t.filter(n=>typeof n=="string"&&n.length>0).join(" ")}function DL(e){let t=(e.plan_steps??[]).map(s=>et([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=>et([a.kind,a.id,a.note])).join(" "),(s.files??[]).map(a=>et([a.path,a.note])).join(" "),(s.tests??[]).map(a=>et([a.command,a.path,a.note])).join(" "),(s.docs??[]).map(a=>et([a.path,a.note])).join(" ")])),n=(e.plan_decisions??[]).map(s=>et([s.decision,s.rationale,s.evidence,s.step_id])),r=(e.plan_discoveries??[]).map(s=>et([s.text,s.step_id])),o=(e.plan_validation??[]).map(s=>et([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 Ze(e){return typeof e=="string"&&e.trim().length>0}var LL={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=>Ze(e.metadata.assignee)?e.metadata.assignee:void 0,parent:e=>Ze(e.metadata.parent)?e.metadata.parent:void 0,goal:e=>Ze(e.metadata.goal)?e.metadata.goal:void 0,value:e=>Ze(e.metadata.value)?e.metadata.value:void 0,why_now:e=>Ze(e.metadata.why_now)?e.metadata.why_now:void 0,risk:e=>Ze(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=>Ze(e.metadata.acceptance_criteria)?e.metadata.acceptance_criteria:void 0,resolution:e=>Ze(e.metadata.resolution)?e.metadata.resolution:void 0,expected_result:e=>Ze(e.metadata.expected_result)?e.metadata.expected_result:void 0,actual_result:e=>Ze(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=>OL(e.metadata),events:e=>IL(e.metadata),dependencies:e=>(e.metadata.dependencies??[]).map(t=>({id:t.id,kind:t.kind})),plan:e=>DL(e.metadata)};function Iy(e,t={}){let n=t.fields??Cs,r={};for(let o of n){let i=LL[o];if(!i)continue;let s=i(e);s!==void 0&&(r[o]=s)}return r}function PL(e){return e?.trim().toLowerCase()==="ollama"?cd:xL}function dr(e,t){let n=PL(e),r=Fu(t);return r!==null?{maxCharacters:r,warning:null}:{maxCharacters:n,warning:t==null?null:CL}}function ld(e,t={}){let n=JSON.stringify(Iy(e,{fields:t.fields})),r=dr(t.providerName,t.maxCharacters).maxCharacters;if(n.length<=r)return n;if(r<=En.length)return En.slice(0,r);let o=Math.max(0,r-En.length);return`${n.slice(0,o)}${En}`}(function(){try{var e=typeof window<"u"?window:typeof 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 ML(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 FL(e,t,n){let r=[],o=[],i=0;for(let s of e){let a=o.length>=t,c=o.length>0&&Number.isFinite(n)&&i+s.length>n;(a||c)&&(r.push(o),o=[],i=0),o.push(s),i+=s.length}return r.push(o),r}function $L(e,t){return e.name!=="ollama"?t:{...t,maxBatchInputCharacters:cd}}function jL(e,t){if(!Number.isFinite(t)||t<=0||e.length<=t)return e;let n=Math.max(0,t-En.length);return`${e.slice(0,n)}${En}`.slice(0,t)}function Ry(e){let t=j(e).toLowerCase();return t.includes("timed out")||t.includes("timeout")}function UL(e,t,n,r,o,i){let s=`Embedding batch ${t} failed after ${o} attempt(s): ${j(i)}`,a=`provider=${e.name} model=${e.model} batch_size=${n} timeout_ms=${r}`;return Ry(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 dd(e,t,n,r,o,i){let s=null;for(let a=0;a<=o;a+=1)try{let c=await Oy(e,t,{timeout_ms:r});return a>0&&i.push(`search_embedding_batch_retry_succeeded:batch=${n}:attempt=${a+1}:size=${t.length}`),c}catch(c){if(s=c,Ry(c)&&t.length>1){let l=Math.ceil(t.length/2),d=t.slice(0,l),u=t.slice(l);return i.push(`search_embedding_batch_split_after_timeout:batch=${n}:size=${t.length}:parts=${d.length}|${u.length}`),[...await dd(e,d,`${n}.1`,r,o,i),...await dd(e,u,`${n}.2`,r,o,i)]}if(a<o){let l=Math.min(1e3*2**a,8e3);await new Promise(d=>setTimeout(d,l))}}throw new Error(UL(e,n,t.length,r,o+1,s))}async function ud(e,t,n,r={}){if(n.length===0)return{vectors:[],warnings:[]};let o=[],i=dr(e.name,t.search.embedding_corpus_max_characters);i.warning&&o.push(i.warning);let s=$L(e,ML(t,i.maxCharacters)),a=0,c=n.map(p=>{let f=jL(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 l=FL(c,s.batchSize,s.maxBatchInputCharacters),d=[],u=0;for(let p=0;p<l.length;p+=1){let f=l[p];r.onProgress?.({batch_index:p+1,batch_total:l.length,batch_size:f.length,completed_inputs:u,total_inputs:c.length,phase:"start"}),d.push(...await dd(e,f,String(p+1),s.timeoutMs,s.maxRetries,o)),u+=f.length,r.onProgress?.({batch_index:p+1,batch_total:l.length,batch_size:f.length,completed_inputs:u,total_inputs:c.length,phase:"complete"})}return{vectors:d,warnings:o}}import{mkdir as zL,readFile as qL,stat as md,unlink as VL}from"node:fs/promises";import{basename as Ny,dirname as fd,isAbsolute as GL,join as BL,resolve as gd}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]="98c8d03c-bdde-5ac4-b80d-395d885f7442")}catch{}})();var _d="pm_items",HL=/[^a-zA-Z0-9_-]/g,WL=128,KL=".pm-cli-local-vectors",pd=1,vn=new Map;function Eo(e){return(P(e.collection_name)??_d).replaceAll(HL,"_").slice(0,WL)}function Os(e){if(!On(e)||e.length===0)throw new Error("Vector values must be a non-empty numeric array");return[...e]}function Ly(e){if(!Number.isFinite(e)||e<=0)throw new Error("Vector query limit must be a positive number");return Math.floor(e)}function YL(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=P(s);if(!a)throw new Error(`Qdrant query response entry at index ${o} is missing a non-empty id`);let c=r.score;if(typeof c!="number"||!Number.isFinite(c))throw new TypeError(`Qdrant query response entry at index ${o} is missing a finite numeric score`);let l=r.payload;if(l!==void 0&&(typeof l!="object"||l===null||Array.isArray(l)))throw new Error(`Qdrant query response entry at index ${o} must provide payload as an object when set`);return{id:a,score:c,...l?{payload:l}:{}}});return n.sort((r,o)=>r.score!==o.score?o.score-r.score:r.id.localeCompare(o.id)),n}function yd(e){let t=P(e.result?.status);if(t)return{status:t};let n=P(e.status);if(n)return{status:n};throw new Error("Qdrant upsert response must include status metadata")}async function wo(e,t,n,r,o){return await ks({endpoint:e,method:t.method,headers:t.headers,body:t.body,timeoutMs:n,fetcher:r,requestLabel:`Vector ${o} request`,responseLabel:`Vector ${o} response`})}function XL(e){let t=P(e.vector_store?.qdrant?.url);if(!t)return null;let n=P(e.vector_store?.collection_name),r=P(e.vector_store?.qdrant?.api_key);return{name:"qdrant",url:t,...n&&n!==_d?{collection_name:n}:{},...r?{api_key:r}:{}}}function JL(e){let t=gd(e),n=fd(t);return Ny(t)==="pm"&&Ny(n)===".agents"?fd(n):t}function QL(e,t){return!t||GL(e)?e:gd(JL(t),e)}function ZL(e,t){let n=P(e.vector_store?.lancedb?.path);if(!n)return null;let r=P(e.vector_store?.collection_name);return{name:"lancedb",path:QL(n,t),...r&&r!==_d?{collection_name:r}:{}}}function eP(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=P(t.id);if(!r)throw new Error(`Vector upsert record at index ${n} is missing a non-empty id`);let o=Os(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 tP(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=P(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 nP(e){return e.replace(/\/points\?wait=true$/,"/points/delete?wait=true")}function rP(e){return e.replace(/\/points\?wait=true$/,"")}function Is(e){return{"content-type":"application/json",...e.api_key?{"api-key":e.api_key}:{}}}function Rs(e,t){return ur(e,t)}function ur(e,t){return BL(gd(e),KL,`${t}.json`)}function oP(e,t,n){let r=P(e.id);if(!r)throw new Error(`LanceDB local snapshot '${n}' record at index ${t} is missing a non-empty id`);let o=Os(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 iP(e,t,n){let r;try{r=JSON.parse(n)}catch(c){throw new Error(`LanceDB local snapshot at '${e}' is not valid JSON: ${j(c)}`)}if(typeof r!="object"||r===null||Array.isArray(r))throw new Error(`LanceDB local snapshot at '${e}' must be a JSON object`);if(r.version!==pd)throw new Error(`LanceDB local snapshot at '${e}' must include version=${pd}`);let i=P(r.table);if(!i)throw new Error(`LanceDB local snapshot at '${e}' must include a non-empty table value`);if(i!==t)throw new Error(`LanceDB local snapshot at '${e}' table mismatch: expected '${t}', received '${i}'`);let s=r.records;if(!Array.isArray(s))throw new TypeError(`LanceDB local snapshot at '${e}' must include a records array`);let a=new Map;for(let c=0;c<s.length;c+=1){let l=oP(s[c],c,e);a.set(l.id,l)}return a}async function sP(e){try{let t=await md(e);return{mtimeMs:t.mtimeMs,size:t.size}}catch(t){if(!ue(t))throw t;return null}}function aP(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 vn.set(e,{records:n,mtimeMs:null,size:null}),n}function cP(e,t){return e!==void 0&&t!==null&&e.mtimeMs===t.mtimeMs&&e.size===t.size}async function hd(e,t){let n=Rs(e,t),r=ur(e,t),o=await sP(r),i=vn.get(n);if(!o){let a=aP(n,i);if(a)return a}if(cP(i,o))return i.records;let s=new Map;try{let a=await qL(r,"utf8");s=iP(r,t,a)}catch(a){if(!ue(a))throw a}return vn.set(n,{records:s,mtimeMs:o?.mtimeMs??null,size:o?.size??null}),s}function lP(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 Py(e){try{await VL(e)}catch(t){if(!ue(t))throw new Error(`LanceDB local snapshot delete failed at '${e}': ${j(t)}`)}}async function My(e,t,n){let r=ur(e,t);if(n.size===0){await Py(r);return}let o=fd(r);try{await zL(o,{recursive:!0})}catch(s){throw new Error(`LanceDB local snapshot directory create failed at '${o}': ${j(s)}`)}let i=`${JSON.stringify({version:pd,table:t,records:lP(n)})}
|
|
178
|
+
`;try{await D(r,i)}catch(s){throw new Error(`LanceDB local snapshot write failed at '${r}': ${j(s)}`)}}async function dP(e,t){let n=Rs(e,t),r=ur(e,t);await Py(r),vn.delete(n)}function Dy(e){let t=0;for(let n=0;n<e.length;n+=1)t+=e[n]*e[n];return Math.sqrt(t)}function uP(e,t){let n=0;for(let i=0;i<e.length;i+=1)n+=e[i]*t[i];let r=Dy(e),o=Dy(t);return r===0||o===0?0:n/(r*o)}function Ns(e,t){let n=XL(e),r=ZL(e,t),o=[n,r].filter(c=>c!==null),i=P(e.vector_store?.adapter),s=i?i.toLowerCase():null;return{active:(s?o.find(c=>c.name===s):void 0)??o[0]??null,available:o}}function Ds(e){let t=Eo(e);if(e.name==="qdrant"){let o=yr(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 fP(e,t,n){let r=Ds(e),o=Os(t),i=Ly(n);return e.name==="qdrant"?{target:r,method:"POST",headers:Is(e),body:{vector:o,limit:i,with_payload:!0}}:{target:r,method:"LOCAL",headers:{},body:{table:Eo(e),vector:o,limit:i}}}function pP(e,t){let n=Ds(e),r=eP(t);return e.name==="qdrant"?{target:n,method:"POST",headers:Is(e),body:{points:r}}:{target:n,method:"LOCAL",headers:{},body:{table:Eo(e),records:r}}}function mP(e,t){let n=Ds(e),r=tP(t);return e.name==="qdrant"?{target:n,method:"POST",headers:Is(e),body:{points:r}}:{target:n,method:"LOCAL",headers:{},body:{table:Eo(e),ids:r}}}async function bH(e,t,n,r={}){let o=fP(e,t,n);if(o.method==="LOCAL"){let c=e,l=o.body,d=await hd(c.path,l.table);if(d.size===0)return[];let u=Os(l.vector),p=Ly(l.limit),f=[],y=0;for(let g of d.values()){if(g.vector.length!==u.length){y++;continue}f.push({id:g.id,score:uP(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,b)=>g.score!==b.score?b.score-g.score:g.id.localeCompare(b.id)),f.slice(0,p)}let i=bn(r.timeout_ms,"Vector request"),s=wn(r.fetcher,"Vector request"),a=await wo(o.target.query_target,{method:"POST",headers:o.headers,body:o.body},i,s,"query");return YL(a)}async function bd(e,t,n={}){let r=pP(e,t);if(r.method==="LOCAL"){let a=e,c=r.body,l=Rs(a.path,c.table),d=await hd(a.path,c.table);for(let f of c.records)d.set(f.id,f);await My(a.path,c.table,d);let u=ur(a.path,c.table),p=await md(u);return vn.set(l,{records:d,mtimeMs:p.mtimeMs,size:p.size}),{status:"ok"}}let o=bn(n.timeout_ms,"Vector request"),i=wn(n.fetcher,"Vector request"),s=await wo(r.target.upsert_target,{method:"POST",headers:r.headers,body:r.body},o,i,"upsert");return yd(s)}async function Ls(e,t,n={}){let r=mP(e,t);if(r.method==="LOCAL"){let a=e,c=r.body,l=Rs(a.path,c.table),d=await hd(a.path,c.table);if(d.size===0)return{status:"ok"};for(let u of c.ids)d.delete(u);if(await My(a.path,c.table,d),d.size===0)vn.delete(l);else{let u=ur(a.path,c.table),p=await md(u);vn.set(l,{records:d,mtimeMs:p.mtimeMs,size:p.size})}return{status:"ok"}}let o=bn(n.timeout_ms,"Vector request"),i=wn(n.fetcher,"Vector request"),s=await wo(nP(r.target.upsert_target),{method:"POST",headers:r.headers,body:r.body},o,i,"delete");return yd(s)}async function Fy(e,t=[],n={},r){if(e.name==="lancedb")return await dP(e.path,Eo(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=Ds(e),s=rP(i.upsert_target),a=bn(n.timeout_ms,"Vector request"),c=wn(n.fetcher,"Vector request"),l=Is(e);try{await wo(s,{method:"DELETE",headers:l,body:{}},a,c,"delete")}catch(u){if(!j(u).includes("failed with status 404"))throw u}let d=await wo(s,{method:"PUT",headers:l,body:{vectors:{size:r,distance:"Cosine"}}},a,c,"upsert");return yd(d)}let o=t.map(i=>i.trim()).filter(i=>i.length>0);return o.length===0?{status:"ok"}:await Ls(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 Ps(e,t){let n=P(e),r=P(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=Ps(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 wd(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 Ed(e,t){return!e||e.provider!==t.provider||e.model!==t.model}function vd(e,t){return!!(e&&e.vector_dimension!==t)}function Td(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 Ad 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 gP=["index/manifest.json","search/embeddings.jsonl"],Uy="search/vectorization-status.json";function _P(e,t){return`search_cache_invalidation_failed:${e}:${String(t)}`}function fr(e){return[...new Set([...e].map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function zy(e){return typeof e=="string"&&e.trim().length>0&&Number.isFinite(Date.parse(e))}function qy(e){let t=new Map;for(let[n,r]of Object.entries(e)){let o=n.trim();o.length===0||!zy(r)||t.set(o,r)}return Object.fromEntries([...t.entries()].sort((n,r)=>n[0].localeCompare(r[0])))}async function Vy(e){let t=Ad.join(e,Uy),n=await G(t);if(n===null||n.trim().length===0)return{entries:{},embedding:null,warnings:[]};let r;try{r=JSON.parse(n)}catch{return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]}}if(typeof r!="object"||r===null||r.version!==1||!Array.isArray(r.items))return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};let o=new Map;for(let s of r.items){if(typeof s!="object"||s===null)return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};let a=s.id,c=s.updated_at;if(typeof a!="string"||a.trim().length===0||!zy(c))return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};o.set(a.trim(),c)}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 Gy(e,t,n){let r=qy(t),o=Ad.join(e,Uy),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)}
|
|
179
|
+
`;await D(o,i)}function yP(e){return{id:e.id,type:e.type,status:e.status,priority:e.priority,updated_at:e.updated_at}}function hP(e){let t=Ps(e.name,e.model);if(!t)throw new Error("Embedding provider must include a provider name and model");return t}function vo(e,t){return{refreshed:[],skipped:e,warnings:[t]}}async function bP(e,t,n){if(!n.settings&&!await Y(Ae(e)))return vo(t,"search_semantic_refresh_skipped:settings_not_initialized");let r;try{if(n.settings)r=n.settings;else{let a=await jt(e),c=a.warnings.find(l=>l.startsWith("settings_read_"));if(c)return vo(t,`search_semantic_refresh_skipped:settings_read_failed:${c}`);r=a.settings}}catch(a){return vo(t,`search_semantic_refresh_skipped:settings_read_failed:${j(a)}`)}let o=n.apply_runtime_defaults?sr(r).settings:r,i=xs(o).active;if(!i)return vo(t,"search_semantic_refresh_skipped:provider_unconfigured");let s=Ns(o,e).active;return s?{settings:o,provider:i,vectorStore:s}:vo(t,"search_semantic_refresh_skipped:vector_store_unconfigured")}async function wP(e,t,n,r,o,i){let s=[],a=new Set,c=new Set,l=[];for(let d of r){let u=await ho(e,d,t,n,o);if(!u){c.add(d);continue}try{let p=await bo(u,{schema:i});l.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}:${j(p)}`)}}return l.sort((d,u)=>d.id.localeCompare(u.id)),{documents:l,missingIds:fr(c),skippedIds:fr(a),warnings:s}}async function EP(e,t,n){let r=dr(t.name,e.search.embedding_corpus_max_characters).maxCharacters,o=ad(e),i=n.map(a=>ld(a.document,{providerName:t.name,maxCharacters:r,fields:o})),s=await ud(t,e,i);return{vectors:s.vectors,vector_dimension:Td(s.vectors,"Semantic refresh embedding"),warnings:s.warnings}}async function vP(e,t,n){return await bd(e,t.map((r,o)=>({id:r.id,vector:n[o],payload:yP(r.document.metadata)}))),{refreshed:t.map(r=>r.id),skipped:[],warnings:[]}}async function TP(e,t){if(t.length===0)return{refreshed:[],skipped:[],warnings:[]};try{return await Ls(e,t),{refreshed:[],skipped:[],warnings:[]}}catch(n){return{refreshed:[],skipped:t,warnings:[`search_semantic_refresh_delete_failed:${j(n)}`]}}}async function AP(e){let t=[],n=[];for(let r of gP){let o=Ad.join(e,r);try{if(!await Y(o))continue;await _r(o),t.push(r)}catch(i){n.push(_P(r,i))}}return{invalidated:t,warnings:n}}async function jy(e,t,n={}){let r=fr(t);if(r.length===0)return{refreshed:[],skipped:[],warnings:[]};let o=await bP(e,r,n);if(!("settings"in o))return o;let i=Er(o.settings,Ct()),s=await wP(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 Vy(e):{entries:{},embedding:null,warnings:[]},c=hP(o.provider),l=a.entries,d={refreshed:[],skipped:[],warnings:[]},u=a.embedding;if(s.documents.length>0)if(a.embedding&&Ed(a.embedding,c))d={refreshed:[],skipped:s.documents.map(b=>b.id),warnings:["search_semantic_refresh_requires_reindex:embedding_identity_changed"]};else try{let b=await EP(o.settings,o.provider,s.documents);if(vd(a.embedding,b.vector_dimension))d={refreshed:[],skipped:s.documents.map(E=>E.id),warnings:[...b.warnings,"search_semantic_refresh_requires_reindex:vector_dimension_changed"]};else{u=wd(c,b.vector_dimension);let E=await vP(o.vectorStore,s.documents,b.vectors);d={refreshed:E.refreshed,skipped:E.skipped,warnings:[...b.warnings,...E.warnings]}}}catch(b){d={refreshed:[],skipped:s.documents.map(E=>E.id),warnings:[`search_semantic_refresh_failed:${j(b)}`]}}let p=await TP(o.vectorStore,s.missingIds),f=new Set(d.refreshed),y=Object.fromEntries(s.documents.filter(b=>f.has(b.id)).map(b=>[b.id,b.document.metadata.updated_at])),g=[];if(Object.keys(y).length>0||s.missingIds.length>0){let b={...l,...qy(y)};for(let E of s.missingIds)delete b[E];try{await Gy(e,b,u)}catch(E){g.push(`search_vectorization_status_ledger_write_failed:${j(E)}`)}g.push(...a.warnings)}return{refreshed:fr([...d.refreshed,...p.refreshed]),skipped:fr([...s.skippedIds,...d.skipped,...p.skipped]),warnings:[...s.warnings,...d.warnings,...p.warnings,...g]}}function SP(e,t){let n=t?sr(e).settings:e;return!!(xs(n).active&&Ns(n).active)}async function Sd(e,t,n={}){let r=await AP(e),o=fr(t);if(o.length===0)return{invalidated:r.invalidated,refreshed:[],skipped:[],warnings:r.warnings};if(!await Y(Ae(e))){let c=await jy(e,o);return{invalidated:r.invalidated,refreshed:c.refreshed,skipped:c.skipped,warnings:[...r.warnings,...c.warnings]}}let i;try{let c=await jt(e),l=c.warnings.find(d=>d.startsWith("settings_read_"));if(l)return{invalidated:r.invalidated,refreshed:[],skipped:o,warnings:[...r.warnings,`search_semantic_refresh_skipped:settings_read_failed:${l}`]};i=c.settings}catch(c){return{invalidated:r.invalidated,refreshed:[],skipped:o,warnings:[...r.warnings,`search_semantic_refresh_skipped:settings_read_failed:${j(c)}`]}}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&&SP(i,s))return await iy(e,o),{invalidated:r.invalidated,refreshed:[],skipped:[],warnings:[...r.warnings,"search_semantic_refresh_scheduled_background"],scheduled:!0};let a=await jy(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 kP}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 By=new Set(["1","true","yes","on"]);function xP(){return!!(By.has((process.env.PM_SENTRY_DISABLED??"").trim().toLowerCase())||By.has((process.env.PM_TELEMETRY_DISABLED??"").trim().toLowerCase())||process.env.VITEST||process.env.VITEST_WORKER_ID)}var Xy=/(?:token|secret|password|passwd|api[_-]?key|apikey|authorization|cookie|credentials|bearer|dsn)/i,CP=new RegExp(`\\b(${Xy.source})\\s*[:=]\\s*([^\\s,;]+)`,"giu"),OP=/(^|[\s"'`(=])\/(?:[^\s"'`),;]+)/g,IP=/file:\/\/\/?[^\s"'`),;]+/giu,RP=/\b[A-Za-z]:\\[^\s"'`),;]+/g,NP=/\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,DP=/(?:^|[_-])(path|filename|file|module|cwd|dir|directory|location|source|script)s?$/i;var LP=["[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 Hy(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 tt(e,t){if(t&&DP.test(t)&&Hy(e))return"[scrubbed_path]";let n=e.replaceAll(CP,(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(NP,"[scrubbed_ip]").replaceAll(IP,"[scrubbed_path]").replaceAll(RP,"[scrubbed_path]").replaceAll(OP,(r,o)=>`${o}[scrubbed_path]`);return Hy(n)?"[scrubbed_path]":n}function qt(e){let t={};for(let[n,r]of Object.entries(e))Xy.test(n)?t[n]="[scrubbed]":typeof r=="string"?t[n]=tt(r,n):Array.isArray(r)?t[n]=r.map(o=>typeof o=="string"?tt(o,n):o&&typeof o=="object"?qt(o):o):r&&typeof r=="object"?t[n]=qt(r):t[n]=r;return t}function PP(e){for(let n of["filename","absPath","abs_path","module"]){let r=e[n];typeof r=="string"&&(e[n]=tt(r,n))}let t=e.context_line;typeof t=="string"&&(e.context_line=tt(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"?tt(o,n):o))}e.vars&&typeof e.vars=="object"&&(e.vars=qt(e.vars)),e.data&&typeof e.data=="object"&&(e.data=qt(e.data))}var MP=kP(import.meta.url),FP=()=>MP("@sentry/node"),kd,Wy=!1,$P=FP,jP="https://bf7ad2ec76c0051c2ee94e48e8bd6868@o4510603477712896.ingest.de.sentry.io/4511316775338064";function xd(e){return/^\s*PmCliError:/.test(e)}function Cd(e){let t=e.trim().toLowerCase();return t.length===0?!1:LP.some(n=>t.includes(n))}function UP(e){return e.logger!=="console"?!1:typeof e.message=="string"&&Cd(e.message)?!0:Array.isArray(e.exception?.values)&&e.exception.values.some(t=>typeof t.value=="string"&&Cd(t.value))}function zP(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 qP(e){return!!(e.exception?.values?.some(t=>t.type==="PmCliError")||e.exception?.values?.some(t=>typeof t.value=="string"&&xd(t.value))||e.logger==="console"&&typeof e.message=="string"&&xd(e.message))}function Jy(e){return e.category==="console"&&typeof e.message=="string"&&xd(e.message)}function Qy(e){return e.category==="console"&&typeof e.message=="string"&&Cd(e.message)}function VP(){return ga(import.meta.url,["../../.."])??"0.0.0"}function GP(){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 Ky=.2;function BP(){let e=process.env.SENTRY_TRACES_SAMPLE_RATE?.trim();if(!e)return Ky;let t=Number(e);return!Number.isFinite(t)||t<0||t>1?Ky:t}function HP(e){if(e.exception?.values){for(let t of e.exception.values)if(t.value&&(t.value=tt(t.value,"value")),t.stacktrace?.frames)for(let n of t.stacktrace.frames)PP(n)}}function Zy(e){if(e.breadcrumbs)for(let t of e.breadcrumbs)t.message&&(t.message=tt(t.message)),t.data&&typeof t.data=="object"&&(t.data=qt(t.data))}function eh(e){if(e.contexts)for(let[t,n]of Object.entries(e.contexts))n&&typeof n=="object"&&(e.contexts[t]=qt(n))}function Yy(e,t){let n=e,r=n[t];r&&typeof r=="object"&&(n[t]=qt(r))}var WP=e=>{if(qP(e)||UP(e))return null;zP(e)&&(e.level="warning",e.tags={...e.tags,"pm.diagnostic_class":"node_runtime_warning"}),e.message&&(e.message=tt(e.message,"message")),e.transaction&&(e.transaction=tt(e.transaction,"transaction")),HP(e),Zy(e),Yy(e,"extra"),eh(e);for(let t of["request","user","tags"])Yy(e,t);return e},KP=e=>(e.breadcrumbs&&(e.breadcrumbs=e.breadcrumbs.filter(t=>!Jy(t)&&!Qy(t)),Zy(e)),eh(e),e),YP=e=>Jy(e)||Qy(e)?null:(e.message&&(e.message=tt(e.message,"message")),e.data&&typeof e.data=="object"&&(e.data=qt(e.data)),e);async function XP(){if(Wy)return kd;if(Wy=!0,xP())return;let e=$P();kd=e;let t=process.env.SENTRY_DSN?.trim()||jP,n=VP();return e.init({dsn:t,release:`pm-cli@${n}`,environment:GP(),tracesSampleRate:BP(),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:WP,beforeSendTransaction:KP,beforeBreadcrumb:YP}),e}function Tn(){return kd}(function(){try{var e=typeof window<"u"?window:typeof 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 JP=new Set(["init","config","completion","completion-statuses","completion-tags","completion-types"]),QP=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"]),ZP=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"]),eM=new Set(["test","test-all","test-runs","test-verify","trace-test","test-ping"]),tM=new Set(["health","validate","normalize","reindex","gc","telemetry","extension-doctor"]);function nM(e){return e.trim().replaceAll(/\s+/g," ").toLowerCase()}function th(e){let t=e?.trim().toLowerCase();return t&&t.length>0?t:void 0}var rM=[{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")}],oM=new Map([[_.USAGE,"invalid_command_usage"],[_.NOT_FOUND,"item_not_found"],[_.CONFLICT,"lock_conflict"],[_.DEPENDENCY_FAILED,"dependency_failed"]]);function pr(e){let t=nM(e),n=t.length>0?t.split(" "):["<unknown>"],r=n[0],o=n[n.length-1],i="other";return JP.has(r)?i="setup":QP.has(r)?i="query":ZP.has(r)?i="mutation":eM.has(r)?i="testing":r==="extension"?i="extension":tM.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=th(e.errorCode);if(t)return t;let n=(e.errorMessage??"").trim().toLowerCase();for(let o of rM)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?oM.get(r)??"command_failed":"command_failed"}function mr(e){if(e.ok)return"success";let t=th(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 gr;function Vt(e,t,n){if(n===void 0)return;let r=e;typeof r.setAttribute=="function"&&r.setAttribute(t,n)}function Ms(e,t,n){typeof n=="string"&&n.trim().length>0&&e.setTag(t,n)}function iM(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))),Ms(e,"pm.error_code",n?.error_code),Ms(e,"pm.error_category",n?.error_category),Ms(e,"pm.command_resolution",n?.command_resolution),Ms(e,"pm.resolution_stage",n?.resolution_stage)}function sM(e,t,n,r){Vt(e,"pm.ok",t),Vt(e,"pm.command_ok",t),Vt(e,"pm.exit_code",n),Vt(e,"pm.command_exit_code",n),Vt(e,"pm.error_code",r?.error_code),Vt(e,"pm.error_category",r?.error_category),Vt(e,"pm.command_resolution",r?.command_resolution),Vt(e,"pm.resolution_stage",r?.resolution_stage)}function aM(e,t,n,r){let o=Tn();if(!o)return;let i=pr(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 cM(e){let t=Tn();t&&(gr=t.startInactiveSpan({op:"pm.command",name:`pm ${e}`,forceTransaction:!0}))}function lM(e,t,n){if(!gr)return;let r=e?"true":"false",o=typeof n?.exit_code=="number"?String(n.exit_code):void 0,i=Tn();i&&iM(i,r,n),sM(gr,r,o,n),gr.setStatus(e?{code:1}:{code:2,message:t??"command_failed"}),gr.end(),gr=void 0}var dM="unclassified_runtime_error";function uM(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:dM,exit_code:r}}function fM(e){let t=uM(e);return{"pm.error_code":t.error_code,"pm.exit_code":String(t.exit_code)}}function pM(e){if(!gM(e))return;let t=Tn();if(!t)return;let n=fM(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 mM(e){let t=Tn();if(!t)return;let n=e.command_resolution??mr({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 gM(e){if(e instanceof h||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 _M(e=3e3){let t=Tn();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 yM=/\b(?:gh[pousr]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{20,})\b/,hM=/\bnpm_[A-Za-z0-9]{36}\b/,bM=/\bxox[baprs]-(?=[A-Za-z0-9-]{20,80}\b)(?=[A-Za-z0-9-]*\d)[A-Za-z0-9-]{20,80}\b/,wM=/-----BEGIN (?:[A-Z0-9]+ )?PRIVATE KEY-----/,EM=/\b(?:AKIA|ASIA)[A-Z0-9]{16}\b/,nh=/\b(?:token|secret|password|passwd|api[_-]?key)\s*[:=]\s*["']?([A-Za-z0-9+/=_-]{24,})/gi,vM=[{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"}],Rd=new Map(vM.map(e=>[e.action,e]));function TM(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 rh(e){let t=[];for(let n of Id(e)){yM.test(n.value)&&t.push({rule:"github_token",path:n.path}),hM.test(n.value)&&t.push({rule:"npm_token",path:n.path}),bM.test(n.value)&&t.push({rule:"slack_token",path:n.path}),wM.test(n.value)&&t.push({rule:"private_key",path:n.path}),EM.test(n.value)&&t.push({rule:"aws_access_key",path:n.path}),nh.lastIndex=0;for(let r of n.value.matchAll(nh)){let o=r[1];if(TM(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 AM(e){let t=e.author.trim()||"unknown";if(e.settings.require_attributed_author&&t.toLowerCase()==="unknown")throw new h("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=rh(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 h(`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 SM(e){return Rd.has(e.trim().toLowerCase())}function kM(){return[...Rd.keys()].sort((e,t)=>e.localeCompare(t))}function QH(e){return Rd.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 xM(e){return e.trim().toLowerCase().replace(/\s+/g," ")}function eW(e){return xM(e).split(/[^a-z0-9]+/).filter(t=>t.length>0)}function Fs(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 CM=/\b[a-z][a-z0-9]*-\d+(?:-[a-z0-9]+)*\b/giu;function Nd(e){return e.trim().toLowerCase().replace(/\s+/g," ")}function ih(e){return[...new Set(Nd(e).match(/[\p{L}\p{N}]+/gu)??[])]}function oh(e){let t=Nd(e);return{normalized:t,tokens:ih(t),issueCodes:[...new Set(t.match(CM)?.map(n=>n.toLowerCase())??[])]}}function OM(e,t){return IM(oh(e),oh(t))}function IM(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:Fs(e.tokens,t.tokens),reason:"title_token_jaccard"}}import RM 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 $s(e){return(e??"in_progress").trim().toLowerCase().replaceAll("-","_")}function NM(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 sh(e,t){let n=Math.max(1,Math.trunc(t.threshold_hours)),r=(t.now??new Date).getTime(),o=$s(t.in_progress_status),i=[];for(let s of e){if($s(String(s.status))!==o||(s.assignee?.trim().length??0)>0)continue;let a=NM(s,t.last_history_activity?.(s)),c=Date.parse(a);if(!Number.isFinite(c))continue;let l=Math.max(0,Math.floor((r-c)/36e5));l>=n&&i.push({id:s.id,last_activity_at:a,age_hours:l})}return i.sort((s,a)=>a.age_hours-s.age_hours||s.id.localeCompare(a.id)),{threshold_hours: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 DM(e,t,n){let r=new Map;return await Promise.all(t.filter(o=>$s(String(o.status))===$s(n.in_progress_status)&&(o.assignee?.trim().length??0)===0).map(async o=>{let i;try{i=await Ve(RM.join(e,"history",`${o.id}.jsonl`),o.id)}catch{return}let s=i.map(a=>a.ts).filter(a=>Number.isFinite(Date.parse(a))).sort((a,c)=>Date.parse(c)-Date.parse(a))[0];s&&r.set(o.id,s)})),sh(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 LM=Object.freeze({"<":"<",">":">",""":'"',"'":"'","&":"&"}),PM=/&(?:lt|gt|quot|#39|amp);/g;function MM(e){return typeof e!="string"||!e.includes("<")&&!e.includes(">")?e:e.replace(PM,t=>LM[t])}function FM(e){return Dd(e,new WeakMap)}function Dd(e,t){if(typeof e=="string")return MM(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(Dd(r,t));return n}if(e!==null&&typeof e=="object"){if(!$M(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:Dd(i,t),enumerable:!0,writable:!0,configurable:!0});return r}return e}function $M(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 jM(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 ah(e){return e.split(/[\s,|]+/).map(t=>t.trim()).filter(t=>t.startsWith("--"))}function UM(e){return ah(e)[0]??null}function zM(e,t){let n=UM(t);if(n===null)return!1;let r=o=>o.slice(2).replaceAll("-","_");return ah(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 qM(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 ch from"node:fs/promises";import js 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 VM(e){return"json_markdown"}function lh(e,t){return js.relative(e,t).replaceAll("\\","/")}function GM(e){return String(e).replaceAll(/[^a-zA-Z0-9._-]+/g,"_").slice(0,120)}async function BM(e,t,n="item_format:migrate",r=fe,o){if(t!=="toon")throw new Error("Only toon item-format migration targets are supported. Markdown item files are legacy read-only input.");let i=new Set,s=new Set,a=[],c=0,l=VM(t),d=Object.entries(r);for(let[u,p]of d){let f=js.join(e,p),y=[];try{y=await ch.readdir(f)}catch{continue}let g=new Map;for(let E of y){let O=js.join(f,E),z=Ar(O);if(!z)continue;let M=js.extname(E),Z=E.slice(0,E.length-M.length).trim();if(Z.length===0)continue;let le=g.get(Z)??{};le[z]=O,g.set(Z,le)}let b=[...g.keys()].sort((E,O)=>E.localeCompare(O));for(let E of b){let O=g.get(E);c+=1;let z=O[l];if(!z)continue;let M=O[t]??z,Z=M===O[t]?t:l;try{let le=await ch.readFile(M,"utf8"),de=cn(le,{format:Z,schema:o,onWarning:Nu=>a.push(`item_format_migration_parse_warning:${E}:${Nu}`)}),Wt=Mn(e,u,E,t,r),Kt=Kr(de,{format:t,schema:o});await G(Wt)!==Kt&&(await D(Wt,Kt),a.push(...await me({path:Wt,scope:"project",op:n})),i.add(E)),await _r(z),s.add(lh(e,z)),a.push(...await me({path:z,scope:"project",op:`${n}:remove`})),i.add(E)}catch(le){a.push(`item_format_migration_skipped:${lh(e,M)}:${GM(le)}`)}}}return{target_format:t,scanned:c,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 HM=new Set(["completed","superseded"]);function WM(e){return e!==void 0&&HM.has(e)}function KM(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 YM from"node:readline/promises";import{stdin as XM,stdout as dh}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 JM="PM_TELEMETRY_PROMPT",uh=new Set(["0","false","no","off"]),QM=new Set(["init","completion","completion-statuses","completion-tags","completion-types"]);function ZM(e){return typeof e!="string"?!1:uh.has(e.trim().toLowerCase())}function eF(e){if(typeof e!="string")return!1;let t=e.trim().toLowerCase();return t.length===0?!1:!uh.has(t)}function tF(e,t){if(t.json===!0||t.quiet===!0||process.stdin.isTTY!==!0||process.stdout.isTTY!==!0||ZM(process.env[JM])||eF(process.env.CI))return!0;let n=e.trim().toLowerCase();return n.length===0?!0:QM.has(n)}function nF(e){let t=e.trim().toLowerCase();return!(t==="n"||t==="no")}async function rF(e){let n=`pm telemetry helps improve reliability and usage diagnostics.
|
|
180
|
+
It is enabled by default and can be changed anytime via:
|
|
181
|
+
pm config global set telemetry-tracking --policy disabled
|
|
182
|
+
Enable telemetry now? [${e?"Y/n":"y/N"}] `,r=YM.createInterface({input:XM,output:dh});try{let o=await r.question(n);return o.trim().length===0?e:nF(o)}finally{r.close()}}async function oF(e,t){if(!tF(e,t))try{let n=At(process.cwd()),r=await Xe(n);if(r.telemetry.first_run_prompt_completed)return;let o=await rF(r.telemetry.enabled);r.telemetry.enabled=o,r.telemetry.first_run_prompt_completed=!0,await lo(n,r,"telemetry:first_run_prompt"),dh.write(`Telemetry ${o?"enabled":"disabled"} for this CLI install. Update any time with pm config global set telemetry-tracking --policy ${o?"disabled":"enabled"}.
|
|
183
|
+
`)}catch{}}import rt from"node:crypto";import{spawn as iF}from"node:child_process";import{mkdirSync as Ld,rmSync as sF,statSync as vh}from"node:fs";import{mkdir as Pd,readdir as aF,rm as zd,stat as Th}from"node:fs/promises";import{request as cF}from"node:http";import{request as lF}from"node:https";import qd from"node:os";import Ie 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]="26ea62d9-874d-5826-9822-83c5523b673b")}catch{}})();var dF=Ie.join("runtime","telemetry","events.jsonl"),uF=Ie.join("runtime","telemetry","state.json"),fF=Ie.join("runtime","telemetry","otel-spans.jsonl"),pF=8,fh=500,zs=1,ph=1,mF=100,gF=36e5,_F=3e4,mh=2e4,yF=1e3,hF=25e3,bF=864e5,qs=65536,Ah=6,Sh=20,kh=15,wF=8192,xh=[25,50,100,200],EF=3600*1e3,Ch=6e4,vF=6e4,TF="OTEL_EXPORTER_OTLP_TRACES_ENDPOINT",AF="OTEL_EXPORTER_OTLP_ENDPOINT",SF="OTEL_SERVICE_NAME",kF="PM_TELEMETRY_DISABLED",xF="PM_NO_TELEMETRY",gh=new Set(["1","true","yes","on"]),CF="PM_TELEMETRY_OTEL_DISABLED",OF=new Set(["1","true","yes","on"]),IF="PM_TELEMETRY_INLINE_FLUSH",Oh="PM_TELEMETRY_FLUSH_CHILD",RF="PM_TELEMETRY_SOURCE_CONTEXT",NF="PM_TELEMETRY_HTTP_TIMEOUT_MS",DF=globalThis.fetch,LF=["user","automation","test","dogfood"],_h=Promise.resolve(),yh=Promise.resolve();var PF=new Set(LF),MF=new Set(["1","true","yes","on"]),Vs=rt.randomUUID(),FF=["token","secret","password","passwd","api_key","apikey","authorization","cookie","session","credentials","bearer"],$F=new Set(["literal","literals","regex","regexes","replacement","replacements"]),Ih="(?:token|secret|password|passwd|api[_-]?key|apikey|authorization|cookie|session|credentials|bearer|literals?|regex(?:es)?|replacements?)",jF=new RegExp(`\\b(${Ih})\\s*([:=])\\s*([^\\s,;]+)`,"giu"),UF=new RegExp(`(--${Ih})(=|\\s+)([^\\s,;]+)`,"giu"),zF=/(^|[\s"'`(=])\/(?:[^\s"'`),;]+)/g,qF=/bearer\s+[a-z0-9._=-]+/giu,VF=/\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 Ie.join(e,dF)}function Gs(e){return Ie.join(e,fF)}function GF(e){return Ie.dirname(To(e))}function Rh(e){return Ie.join(e,uF)}function Vd(e){return Ie.join(e,"runtime","telemetry","flush.lock")}function Nh(e){return Ie.join(e,"runtime","telemetry","flush.spawn.lock")}function BF(){return Ie.join(st(import.meta.url,["../../.."]),"dist","cli","telemetry-flush.js")}function HF(){if(Fd(process.env[IF])||Fd(process.env[Oh]))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 WF(e){let t=await G(Rh(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 nt(e,t){try{let r={...await WF(e),...t},o=Object.fromEntries(Object.entries(r).filter(([,i])=>i!==void 0).sort((i,s)=>i[0].localeCompare(s[0])));await D(Rh(e),`${JSON.stringify(o,null,2)}
|
|
184
|
+
`)}catch{}}function Md(e){let t=e.trim().toLowerCase().replaceAll("-","_").replaceAll(/[^a-z0-9_]+/g,"_"),n=t.split("_").filter(r=>r.length>0);return $F.has(t)||FF.some(r=>t===r||t.endsWith(`_${r}`)||n.includes(r))}function Dh(e){return e.replaceAll(jF,(n,r,o)=>`${r}${o}[redacted]`).replaceAll(UF,(n,r,o)=>`${r}${o}[redacted]`)}function Lh(e){return e.replaceAll(zF,(t,n)=>`${n}[redacted_path]`)}function Ph(e){let t=e>=65&&e<=90,n=e>=97&&e<=122,r=e>=48&&e<=57;return t||n||r}function Mh(e){if(!e)return!1;let t=e.charCodeAt(0);return Ph(t)?!0:e==="."||e==="_"||e==="%"||e==="+"||e==="-"}function Fh(e){if(!e)return!1;let t=e.charCodeAt(0);return Ph(t)?!0:e==="."||e==="-"}function KF(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(!Mh(i))return!1;for(let i of r)if(!Fh(i))return!1;return!0}function YF(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&&Mh(e[o]);)o-=1;o+=1;let i=r+1;for(;i<e.length&&Fh(e[i]);)i+=1;let s=e.slice(o,i);if(KF(s)){t+=e.slice(n,o),t+="[redacted_email]",n=i;continue}t+=e.slice(n,r+1),n=r+1}return t}function $h(e){return YF(e).replaceAll(qF,"bearer [redacted_token]").replaceAll(VF,"[redacted_ip]")}function XF(e){let t=$h(e),n=Dh(t),r=Lh(n),o=r.trim();return o.startsWith("/")&&o.length>1?"[redacted_path]":r.length>512?`${r.slice(0,509)}...`:r}function JF(e){let t=$h(e),n=Dh(t),r=Lh(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"?JF(e):XF(e)}function An(e,t,n="redacted",r=0){if(t&&Md(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>=Ah)return"[depth_truncated]";if(Array.isArray(e))return e.slice(0,Sh).map(o=>An(o,void 0,n,r+1));if(typeof e=="object"){let o=e,i={};for(let[s,a]of Object.entries(o))i[s]=An(a,s,n,r+1);return i}return String(e)}function jh(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 c=s.slice(0,a),l=s.slice(a+1);Md(c)?n.push(`--${c}=[redacted]`):n.push(`--${c}=${Q(l,t)}`);continue}if(Md(s)){n.push(`--${s}`),r=!0;continue}}n.push(i)}return n}function Uh(e){let t=e?.trim().toLowerCase();return t==="minimal"||t==="redacted"||t==="max"?t:"redacted"}function Fd(e){return MF.has((e??"").trim().toLowerCase())}function hh(){let e=process.env[NF]?.trim();if(!e)return mh;let t=Number(e);return Number.isFinite(t)?Math.min(hF,Math.max(yF,Math.trunc(t))):mh}async function zh(e,t,n){let r=new URL(e);if(globalThis.fetch!==DF){let i=new AbortController,s,a=new Promise((c,l)=>{s=setTimeout(()=>{i.abort(),l(new Error("telemetry_http_timeout"))},hh())});try{return(await Promise.race([globalThis.fetch(e,{method:"POST",headers:t,body:n,signal:i.signal}),a])).status}finally{clearTimeout(s)}}let o=r.protocol==="https:"?lF:r.protocol==="http:"?cF:void 0;if(!o)throw new Error(`telemetry_http_protocol_unsupported_${r.protocol}`);return new Promise((i,s)=>{let a=hh(),c={method:"POST",headers:{...t,"content-length":Buffer.byteLength(n)},signal:AbortSignal.timeout(a),autoSelectFamilyAttemptTimeout:Math.min(5e3,a)},l=o(r,c,d=>{d.once("error",s),d.once("end",()=>i(d.statusCode)),d.resume()});l.once("error",s),l.end(n)})}function qh(e){let t=typeof e=="string"?e.trim():"";return t.length>0?t:"0.0.0"}function Gd(e){let t=e?.trim();return t&&t.length>0?t:void 0}function Bd(e,t){return Number.isFinite(e)?Math.max(0,Math.trunc(e)):t?0:1}function Vh(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?Uo(e.errorCode):"unknown"}function Gh(e){let t=(process.env[RF]??"").trim().toLowerCase();if(PF.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 ye(e,t){return rt.createHash("sha256").update(`${e}:${t}`).digest("hex")}function Hd(e,t){let n=(jc()??"").trim(),r=Yr({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:ye(t,n)}:{},...r.harness?{agent_harness_hash:ye(t,r.harness)}:{},...r.model?{agent_model_hash:ye(t,r.model)}:{},...r.model_source?{agent_model_source:r.model_source}:{}}}function $d(e,t=0){if(e==null||typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(t>=Ah)return"[depth_truncated]";if(Array.isArray(e))return e.slice(0,Sh).map(n=>$d(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]=$d(n[i],t+1);return r}return String(e)}function jd(e,t){return ye(e,JSON.stringify($d(t)))}function Bh(e,t){return{hashes:t.map(n=>ye(e,n)),digest:ye(e,t.join("\0"))}}function Hh(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 ye(e,s)}function Wd(){return gh.has((process.env[kF]??"").trim().toLowerCase())||gh.has((process.env[xF]??"").trim().toLowerCase())}function QF(){if(OF.has((process.env[CF]??"").trim().toLowerCase()))return null;let e=(process.env[TF]??"").trim();if(e.length>0)try{return new URL(e).toString()}catch{return null}let t=(process.env[AF]??"").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 bh(e){let t=Date.parse(e),n=Number.isNaN(t)?Date.now():t;return`${BigInt(n)*1000000n}`}function $e(e,t){return{key:e,value:{stringValue:t}}}function ZF(e,t){return{key:e,value:{boolValue:t}}}function wh(e,t){return{key:e,value:{intValue:String(Math.max(0,Math.trunc(t)))}}}function e$(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[SF]??"").trim()),i=o.length>0?o:"pm-cli",s=Bd(t.exit_code,t.ok),a=Gd(t.error_code),c=Vh({ok:t.ok,errorCode:a,errorCategory:t.error_category}),l=[$e("pm.command",Q(e.command)),$e("pm.version",e.pm_version),$e("pm.source_context",e.source_context),$e("pm.source_context_source",e.source_context_source),$e("pm.installation_id",e.installation_id),$e("pm.session_id",Vs),$e("pm.pm_root_hash",e.pm_root_hash),$e("pm.cwd_hash",e.cwd_hash),ZF("pm.ok",t.ok),wh("pm.exit_code",s),wh("pm.duration_ms",r)];typeof a=="string"&&l.push($e("pm.error_code",a)),typeof c=="string"&&l.push($e("pm.error_category",c)),typeof t.error=="string"&&t.error.trim().length>0&&l.push($e("pm.error",Q(t.error)));let d={resourceSpans:[{resource:{attributes:[$e("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:bh(e.started_at),endTimeUnixNano:bh(n),attributes:l,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 t$(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=>An(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=An(n[s],s,t),c=JSON.stringify(a).length;if(i+c>wF){o[s]="[preview_truncated]";break}i+=c,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 n$(e){let{captureLevel:t,context:n,pmVersion:r,sourceContext:o,pmRootHash:i,cwdHash:s,installationId:a}=e,c=pr(n.command),l=Bh(a,n.args),d=ye(a,`${n.command}\0${n.args.join("\0")}`),u=jd(a,n.options),p=jd(a,n.global),f=Hd(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:c,command_args_digest:l.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:c,...f,command_args:jh(n.args,t),command_args_hashes:l.hashes,command_args_digest:l.digest,command_invocation_digest:d,command_options:An(n.options,void 0,t),command_options_digest:u,global_options:An(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:ye(a,qd.hostname()),stdin_tty:process.stdin.isTTY===!0,stdout_tty:process.stdout.isTTY===!0}}}function r$(e){let{captureLevel:t,pmVersion:n,sourceContext:r,outcome:o,durationMs:i,startedAt:s,command:a,installationId:c,commandTaxonomy:l,exitCode:d,errorCode:u,errorCategory:p,commandResolution:f,resolutionStage:y}=e,g=o.ok===!1?Hh(c,a,u,o.error):void 0,b=Hd(t,c);return t==="minimal"?{capture_level:t,pm_version:n,source_context:r.source_context,source_context_source:r.source_context_source,command_taxonomy:l,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,...b}:{capture_level:t,pm_version:n,source_context:r.source_context,source_context_source:r.source_context_source,command_taxonomy:l,command_resolution:f,resolution_stage:y,...b,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:t$(o.result,t)}}function o$(e){let{captureLevel:t,pmVersion:n,sourceContext:r,command:o,commandTaxonomy:i,commandResolution:s,resolutionStage:a,args:c,options:l,pmRootHash:d,cwdHash:u,installationId:p,errorCode:f,errorMessage:y,errorCategory:g,exitCode:b}=e,E=Bh(p,c),O=ye(p,o),z=jd(p,l),M=Hh(p,o,f,y),Z=Hd(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:z,error_code:f,error_category:g,exit_code:b,error:Q(y,"redacted"),error_fingerprint:M,...Z}:{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,...Z,attempted_command:Q(o,t),attempted_command_digest:O,attempted_args:jh(c,t),attempted_args_hashes:E.hashes,attempted_args_digest:E.digest,attempted_options:An(l,void 0,t),attempted_options_digest:z,error_code:f,error_category:g,exit_code:b,error:Q(y,t),error_fingerprint:M,pm_root_hash:d,cwd_hash:u,runtime:{node:process.version,platform:process.platform,arch:process.arch,hostname_hash:ye(p,qd.hostname()),stdin_tty:process.stdin.isTTY===!0,stdout_tty:process.stdout.isTTY===!0}}}async function Kd(e){let t=await Xe(e),n=!1;return t.telemetry.installation_id.trim().length===0&&(t.telemetry.installation_id=rt.randomUUID(),n=!0),n&&await lo(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 Yd(e,t){let r=JSON.stringify({client_schema_version:ph,event:t,attempts:0});if(r.length>qs){let o={...t,payload:{...t.payload,result_summary:{truncated:!0,reason:"payload_size_exceeded",original_bytes:r.length}}};r=JSON.stringify({client_schema_version:ph,event:o,attempts:0})}await Ao(async()=>{await Et(To(e),r)})}function Wh(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"&&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 Kh(e){let t=Math.min(_F*2**Math.max(e-1,0),gF);return new Date(Date.now()+t).toISOString()}function Yh(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 i$(e){return Yh(e.next_attempt_after)}function Xh(e){let t=Number.isFinite(e)?Math.max(1,Math.trunc(e)):1;return Date.now()-t*bF}function s$(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 Xd(e,t){let n=Xh(t),r=[],o=0;for(let i of e){if(JSON.stringify(i).length>qs||s$(i,n)||i.attempts>=kh){o+=1;continue}r.push(i)}return{entries:r,prunedCount:o}}async function Us(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 D(To(e),r);return}catch(i){let s=xh[o];if(s===void 0||!Jh(i))throw i;await Qh(s)}}function Jh(e){if(typeof e!="object"||e===null||!("code"in e))return!1;let t=e.code;return t==="EACCES"||t==="EBUSY"||t==="EPERM"}function Qh(e){return new Promise(t=>{setTimeout(t,e)})}async function a$(e,t){let n={id:rt.randomUUID(),endpoint:t.endpoint,payload:t.payload,enqueued_at:X(),attempts:0},r=JSON.stringify(n);r.length>qs||await Ao(async()=>{await Et(Gs(e),r)})}function c$(e){let t=JSON.stringify([e.endpoint,e.enqueued_at,e.payload]);return rt.createHash("sha256").update(t).digest("hex").slice(0,32)}function Zh(e){let t=[];for(let n of e.split(`
|
|
188
|
+
`)){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=c$(o)),t.push(o))}catch{}}return t}function l$(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 eb(e,t){let n=Xh(t),r=[],o=0;for(let i of e){if(JSON.stringify(i).length>qs||l$(i,n)||i.attempts>=kh){o+=1;continue}r.push(i)}if(r.length>fh){let i=r.length-fh;return o+=i,{entries:r.slice(i),prunedCount:o}}return{entries:r,prunedCount:o}}async function d$(e,t){let n=t.map(o=>JSON.stringify(o)).join(`
|
|
189
|
+
`),r=n.length>0?`${n}
|
|
190
|
+
`:"";for(let o=0;;o+=1)try{await D(Gs(e),r);return}catch(i){let s=xh[o];if(s===void 0||!Jh(i))throw i;await Qh(s)}}async function Eh(e,t,n,r){return Ao(async()=>{let o=await G(Gs(e)),i=o===null?[]:Zh(o),s=[];for(let c of i){if(n.has(c.id))continue;let l=r.get(c.id);s.push(l?{...c,attempts:l.attempts,next_attempt_after:l.next_attempt_after}:c)}let{entries:a}=eb(s,t);return await d$(e,a),a.length})}async function u$(e,t){let n=await G(Gs(e));if(n===null||n.trim().length===0){await nt(e,{pending_otel_spans:0});return}let r=Zh(n),{entries:o,prunedCount:i}=eb(r,t),s=o.filter(y=>Yh(y.next_attempt_after)).slice(0,pF);if(s.length===0){let y=i>0?await Eh(e,t,new Set,new Map):o.length;await nt(e,{pending_otel_spans:y});return}let a=X(),c=new Set,l=new Map,d=0,u;await Promise.all(s.map(async y=>{try{let g=await zh(y.endpoint,{"content-type":"application/json"},JSON.stringify(y.payload));if(g<200||g>=300)throw new Error(`local_otel_export_http_${g}`);c.add(y.id),d+=1}catch(g){u=g instanceof Error?Q(g.message,"redacted"):"local_otel_export_failed";let b=y.attempts+1;l.set(y.id,{attempts:b,next_attempt_after:Kh(b)})}}));let p=await Eh(e,t,c,l),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 nt(e,f)}async function tb(e,t,n){try{await g$(e,t,n)}catch{}try{await u$(e,n)}catch{}}async function f$(e,t=EF){try{let n=GF(e),r=await aF(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=Ie.join(n,i.name);(await Th(s)).mtimeMs<o&&await zd(s,{force:!0})}))}catch{}}async function Ao(e){let t=yh.catch(()=>{}).then(e);return yh=t.catch(()=>{}),t}async function Jd(e){let t=await G(To(e));return t===null||t.trim().length===0?[]:Wh(t)}async function p$(e,t,n){return Ao(async()=>{let r=await Jd(e),{entries:o}=Xd(r,n),i=o.filter(s=>!t.has(s.event.event_id));return await Us(e,i),i})}async function m$(e,t,n,r){return Ao(async()=>{let o=await Jd(e),{entries:i}=Xd(o,r),s=i.map(a=>{if(!t.has(a.event.event_id))return a;let c=a.attempts+1;return{...a,attempts:c,last_attempt_at:n,next_attempt_after:Kh(c)}});return await Us(e,s),s})}async function g$(e,t,n){await f$(e);let r=t.trim();if(r.length===0)return;let o=await G(To(e));if(o===null||o.trim().length===0){await nt(e,{endpoint:r,queue_entries:0});return}let i=Wh(o);if(i.length===0){await nt(e,{endpoint:r,queue_entries:0});return}let{entries:s,prunedCount:a}=Xd(i,n);if(s.length===0){await Us(e,[]),await nt(e,{endpoint:r,queue_entries:0});return}let c=s.filter(f=>i$(f)).slice(0,mF);if(c.length===0){a>0&&await Us(e,s),await nt(e,{endpoint:r,queue_entries:s.length});return}let l=new Set(c.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 zh(r,u,JSON.stringify({schema_version:zs,events:c.map(y=>y.event)}));if(f<200||f>=300)throw new Error(`telemetry_flush_http_${f}`)}catch(f){let y=await m$(e,l,d,n),g=f instanceof Error?Q(f.message,"redacted"):"telemetry_flush_failed";await nt(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 p$(e,l,n);await nt(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 Jd(e).catch(()=>s);await nt(e,{endpoint:r,queue_entries:g.length,last_attempted_flush_at:d,last_failed_flush_at:d,last_failed_flush_error:y})}}async function _$(e){let t=Vd(e);await Pd(Ie.dirname(t),{recursive:!0});try{return await Pd(t),!0}catch(n){if(typeof n!="object"||n===null||!("code"in n)||n.code!=="EEXIST")throw n}try{let n=await Th(t);return Date.now()-n.mtimeMs<Ch?!1:(await zd(t,{recursive:!0,force:!0}),await Pd(t),!0)}catch{return!1}}function y$(e,t){try{return Date.now()-vh(e).mtimeMs<t}catch{return!1}}function nb(e){try{sF(e,{recursive:!0,force:!0})}catch{}}function h$(e){if(typeof e!="object"||e===null||!("code"in e))return;let t=e.code;return typeof t=="string"?t:void 0}function b$(e){try{return Ld(e),!0}catch(t){if(h$(t)==="EEXIST"||!ue(t))return!1}try{return Ld(Ie.dirname(e),{recursive:!0}),Ld(e),!0}catch{return!1}}function w$(e){if(y$(Vd(e),Ch))return!1;let t=Nh(e);try{if(Date.now()-vh(t).mtimeMs<vF)return!1;nb(t)}catch(n){if(!ue(n))return!1}return b$(t)}function Ud(e){nb(Nh(e))}async function E$(e,t,n){let r=await _$(e);if(Ud(e),!!r)try{await tb(e,t,n)}finally{try{await zd(Vd(e),{recursive:!0,force:!0})}catch{}}}function Qd(e,t,n){if(HF()){let r=_h,o=tb(e,t,n);_h=Promise.allSettled([r,o]).then(()=>{});return}try{if(!w$(e))return;let o=iF(process.execPath,[BF()],{detached:!0,stdio:"ignore",cwd:qd.tmpdir(),env:{...process.env,PM_GLOBAL_PATH:e,[Oh]:"1"}});o.on("error",()=>{Ud(e)}),o.unref()}catch{Ud(e)}}async function qW(e=At(process.cwd())){if(!Wd())try{if(!(await Xe(e)).telemetry.enabled)return;let{endpoint:n,retentionDays:r}=await Kd(e);await E$(e,n,r)}catch{}}async function v$(e){if(Wd()||e.command==="telemetry"&&e.args.some(t=>t.trim().toLowerCase()==="clear"))return null;try{let t=At(process.cwd()),n=await Xe(t);if(!n.telemetry.enabled)return null;let r=Uh(n.telemetry.capture_level),{installationId:o,endpoint:i,retentionDays:s}=await Kd(t),a=qh(e.pm_version),c=Gh(e.global),l=ye(o,e.pm_root),d=ye(o,process.cwd()),u=QF(),p=X(),f={schema_version:zs,event_id:rt.randomUUID(),event_type:"command_start",occurred_at:p,installation_id:o,session_id:Vs,command:e.command,payload:n$({captureLevel:r,context:e,pmVersion:a,sourceContext:c,pmRootHash:l,cwdHash:d,installationId:o})};await Yd(t,f),Qd(t,i,s);let y=pr(e.command);return{started_at:p,started_at_ms:Date.now(),command:e.command,command_taxonomy:y,pm_version:a,source_context:c.source_context,source_context_source:c.source_context_source,installation_id:o,pm_root_hash:l,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?rt.randomBytes(16).toString("hex"):void 0,otel_span_id:u?rt.randomBytes(8).toString("hex"):void 0}}catch{return null}}async function T$(e,t){if(e)try{let n=X(),r=Math.max(0,Date.now()-e.started_at_ms),o=Gd(Od({ok:t.ok,errorCode:t.error_code,errorMessage:t.error,exitCode:t.exit_code})),i=Vh({ok:t.ok,errorCode:o,errorCategory:t.error_category}),s=Bd(t.exit_code,t.ok),a=t.command_resolution??mr({ok:t.ok,errorCode:o,errorCategory:i}),c=t.resolution_stage??"execute",l={schema_version:zs,event_id:rt.randomUUID(),event_type:"command_finish",occurred_at:n,installation_id:e.installation_id,session_id:Vs,command:e.command,payload:r$({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:c})};await Yd(e.global_pm_root,l);let d=e$(e,{...t,exit_code:s,error_code:o,error_category:i},n,r);d&&await a$(e.global_pm_root,d),Qd(e.global_pm_root,e.endpoint,e.retention_days)}catch{}}async function A$(e){if(!Wd())try{let t=At(process.cwd()),n=await Xe(t);if(!n.telemetry.enabled)return;let r=Uh(n.telemetry.capture_level),{installationId:o,endpoint:i,retentionDays:s}=await Kd(t),a=qh(e.pm_version),c=Gh(e.global),l=ye(o,e.pm_root),d=ye(o,process.cwd()),u=X(),p=Gd(Od({ok:!1,errorCode:e.error_code,errorMessage:e.error_message,exitCode:e.exit_code})),f=e.error_category??Uo(p),y=Bd(e.exit_code,!1),g=e.command.trim().length>0?e.command:"<unknown>",b=pr(g),E=e.command_resolution??mr({ok:!1,errorCode:p,errorCategory:f}),O=e.resolution_stage??"unknown",z={schema_version:zs,event_id:rt.randomUUID(),event_type:"command_error",occurred_at:u,installation_id:o,session_id:Vs,command:Q(g,"redacted"),payload:o$({captureLevel:r,pmVersion:a,sourceContext:c,command:g,commandTaxonomy:b,commandResolution:E,resolutionStage:O,args:e.args,options:e.options,pmRootHash:l,cwdHash:d,installationId:o,errorCode:p,errorCategory:f,exitCode:y,errorMessage:e.error_message})};await Yd(t,z),Qd(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]="a678b9f8-ba36-5127-877f-96bb4acc38c5")}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 S$={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 Zd=[{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"]}],Bs=[{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"]}],k$=[{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"]}],Hs=[{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"]}],Ws=[{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"]}],eu=[{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 bt(e,t){for(let n of t.keys){let r=e[n];if(typeof r=="string")return r}}function Ks(e,t){for(let n of t.keys)if(Object.hasOwn(e,n))return e[n]}function Ys(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 tu=[{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}],nu=tu.filter(e=>e.repeatable!==!0).map(e=>({target:e.target,keys:e.keys})),Xs=tu.filter(e=>e.repeatable===!0).map(e=>({target:e.target,keys:e.keys})),ru=[{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}],ou=ru.filter(e=>e.repeatable!==!0).map(e=>({target:e.target,keys:e.keys})),Js=ru.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]="e2028eff-b29e-5850-87b1-4a3e06f28964")}catch{}})();function oe(e){return e.map(t=>({...t}))}var iu=[{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"}],rb=[{param:"updatedAfter",flag:"--updated-after"},{param:"updatedBefore",flag:"--updated-before"},{param:"createdAfter",flag:"--created-after"},{param:"createdBefore",flag:"--created-before"}],x$=[{param:"today",flag:"--today",booleanish:!0},{param:"recent",flag:"--recent",booleanish:!0},...rb],ob=[{param:"assignee",flag:"--assignee"},{param:"assigneeFilter",flag:"--assignee-filter"},{param:"parent",flag:"--parent"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"}],C$=[{param:"assignee",flag:"--assignee"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"},{param:"parent",flag:"--parent"}],O$=[...iu,...ob],ib=[{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"}],I$=[{param:"filterAcMissing",flag:"--filter-ac-missing"},{param:"filterEstimatesMissing",flag:"--filter-estimates-missing"},{param:"filterResolutionMissing",flag:"--filter-resolution-missing"},{param:"filterMetadataMissing",flag:"--filter-metadata-missing"}],sb=[{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"}],su=[{param:"for",flag:"--for"},{param:"tokenBudget",flag:"--token-budget"},...oe(iu),...oe(x$),{param:"ids",flag:"--ids"},...oe(ob),...oe(I$),...oe(ib),...oe(sb),{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"}],au=[{param:"groupBy",flag:"--group-by"},{param:"sum",flag:"--sum"},{param:"avg",flag:"--avg"},...oe(O$)],cu=[{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"},...oe(iu),...oe(rb),...oe(C$),...oe(ib),...oe(sb),{param:"fields",flag:"--fields"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"}],ab=[{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"}],Qs=oe(ab),cb=[{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"}],lu=oe(cb),lb=[{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"}],du=oe(lb),uu=[{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"}],fu=oe(uu),pu=oe(uu),R$=[{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"}],mu=[{param:"id",flag:"--id"},{param:"op",flag:"--op"},{param:"author",flag:"--author"},{param:"from",flag:"--from"},{param:"to",flag:"--to"},{param:"limit",flag:"--limit"},{param:"unbounded",flag:"--unbounded"},{param:"compact",flag:"--compact"},{param:"raw",flag:"--raw"},{param:"full",flag:"--full"},{param:"provenance",flag:"--provenance"},{param:"provenanceSummary",flag:"--provenance-summary"},{param:"harness",flag:"--harness",repeatable:!0},{param:"agentInstance",flag:"--agent-instance",repeatable:!0},{param:"provenanceFilter",flag:"--provenance-filter",repeatable:!0}],gu=[{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"}],N$=[{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}],D$=[{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 So(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]="c82d9b50-274f-585d-be0e-9a0c5067b9e9")}catch{}})();function yu(e){return e.startsWith("--")?`--${e.slice(2).replaceAll("_","-")}`:e}function ko(e){let t=new Map;for(let n of e){let r=yu(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=yu(n.flag);if(n.flag!==r)return n;let o=So([...n.aliases??[],...t.get(r)]).filter(i=>i!==r);return o.length===0?n:{...n,aliases:o}})}function L$(e){let t=ko(e),n=new Set(t.map(r=>r.flag));return t.filter(r=>{let o=yu(r.flag);return r.flag===o||!n.has(o)})}var Zs=Ha.map(e=>({flag:e.flag,...e.aliases?{aliases:[...e.aliases]}:{},...e.value_name?{value_name:e.value_name}:{}})),P$=[...Zs,{flag:"--version"}],db=[{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"}],ub=[{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"}],fb=vu([{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"},...db,{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"])),pb=[{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}],mb=[{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 vu(e,t){return e.map(n=>t.has(n.flag)?{...n,cursor_semantics:"presentation"}:n)}var gb=[{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"}],_b=[{flag:"--id",value_name:"item-id"},{flag:"--add",aliases:["--learning"]},{flag:"--limit"},{flag:"--full-history"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],yb=[{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"}],hb=[{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"}],bb=[{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"}],wb=[{flag:"--dry-run"},{flag:"--output"},{flag:"--item-path"},{flag:"--prefer"}],Eb=[{flag:"--id",value_name:"item-id"},{flag:"--literal"},{flag:"--regex"},{flag:"--replacement"},{flag:"--dry-run"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],vb=[{flag:"--id",value_name:"item-id"},{flag:"--all"},{flag:"--dry-run"},{flag:"--normalize-provenance"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Tb=[{flag:"--event",repeatable:!0},{flag:"--all-actionable"},{flag:"--dry-run"},{flag:"--plan-fingerprint"},{flag:"--limit",value_type:"number"},{flag:"--attributed-author",aliases:["--attributed_author"]},{flag:"--reviewer"},{flag:"--reason"}],Ab=[{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"}],Sb=[{flag:"--description"},{flag:"--default-status",aliases:["--default_status"]},{flag:"--folder"},{flag:"--alias"},{flag:"--role"},{flag:"--order"},{flag:"--type"},{flag:"--commands"},{flag:"--cli-flag"},{flag:"--required"},{flag:"--required-on-create"},{flag:"--no-allow-unset"},{flag:"--required-types"},{flag:"--infer"},{flag:"--min-count"},{flag:"--apply",value_type:"boolean"},{flag:"--to"},{flag:"--migration-id",aliases:["--migration_id"]},{flag:"--dry-run"},{flag:"--author"},{flag:"--force"}],kb=[{flag:"--dry-run"},{flag:"--author"},{flag:"--force"}],xb=[{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"}],Cb=[{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"}],Ob=[{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"}],Tu=[{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"}],Ee=[{flag:"--project"},{flag:"--local"},{flag:"--global"}],Au=[...Ee,{flag:"--capability"}],hu=[...Tu,{flag:"--declarative"}],Ib=[...Au,{flag:"--declarative"}],Rb=[{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--gh"},{flag:"--github"},{flag:"--ref"}],Nb=Ee,Db=Ee,Lb=[...Ee,{flag:"--markdown"},{flag:"--output"}],Pb=Ee,Mb=Ee,Fb=Ee,$b=[...Ee,{flag:"--dry-run"}],jb=[...Ee,{flag:"--runtime-probe"},{flag:"--fix-managed-state"}],Ub=[...Ee,{flag:"--watch"}],zb=[...Ee,{flag:"--detail"},{flag:"--trace"},{flag:"--fix-managed-state"},{flag:"--isolated"},{flag:"--ignore-global"},{flag:"--strict-exit"},{flag:"--fail-on-warn"}],qb=[...Ee,{flag:"--fields",list:!0}],Vb=[...Ee,{flag:"--gh"},{flag:"--github"},{flag:"--ref"}],Gb=[{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--gh"},{flag:"--github"},{flag:"--ref"}],Bb=[{flag:"--dry-run"},{flag:"--cli-only"},{flag:"--packages-only"},{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--repair"},{flag:"--tag"},{flag:"--package-name"}],M$=[{flag:"--mode"},{flag:"--progress"}],Hb=[{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"}],Wb=[{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"},...ub,{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"}],Kb=[{flag:"--id",value_name:"item-id"},{flag:"--body",short:"-b"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Yb=[{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"]}],Xb=[{flag:"--id",value_name:"item-id"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Jb=[{flag:"--id",value_name:"item-id"},{flag:"--dry-run"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Qb=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"}],Zb=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"}],ew=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"}],tw=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--validate-close",value_name:"off|warn|strict"},{flag:"--force"}],nw=[{flag:"--parent"},{flag:"--allow-missing-parent"},{flag:"--tags"},{flag:"--priority"},{flag:"--body"},{flag:"--description"},{flag:"--author"},{flag:"--message"}],Su=[{flag:"--start"},{flag:"--duration"},{flag:"--end"},{flag:"--location"},{flag:"--timezone"},{flag:"--all-day"},...nw],rw=Su,ow=[{flag:"--at"},{flag:"--text"},...nw],iw=[{flag:"--id",value_name:"item-id"},{flag:"--add"},{flag:"--add-json"},{flag:"--remove"},{flag:"--remove-index",repeatable:!0},{flag:"--run"},{flag:"--match"},{flag:"--only-index"},{flag:"--only-last"},{flag:"--background"},{flag:"--timeout"},{flag:"--progress"},{flag:"--env-set"},{flag:"--env-clear"},{flag:"--shared-host-safe"},{flag:"--pm-context"},{flag:"--override-linked-pm-context"},{flag:"--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"}],sw=[{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"}],aw=[{flag:"--limit"}],cw=[{flag:"--status"},{flag:"--limit"},{flag:"--stream"},{flag:"--tail"},{flag:"--force"},{flag:"--author"}],lw=[{flag:"--dry-run"},{flag:"--scope"}],dw=[{flag:"--include-empty"},{flag:"--storage"},{flag:"--metadata-coverage"},{flag:"--field-utilization"},{flag:"--by-assignee"},{flag:"--by-tag"},{flag:"--by-priority"},{flag:"--tag-prefix"},{flag:"--analytics"}],uw=[{flag:"--status",repeatable:!0,list:!0},{flag:"--since"},{flag:"--threshold"},{flag:"--limit"}],fw=[{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"}],pw=[{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"}],mw=[{flag:"--definition",value_name:"json"},{flag:"--trigger",value_name:"value"},{flag:"--tree",value_name:"value"},{flag:"--gate",value_name:"id"},{flag:"--limit",value_name:"number"},{flag:"--dry-run"},{flag:"--author",value_name:"value"},{flag:"--message",value_name:"value"},{flag:"--owner",value_name:"item-id"},{flag:"--apply",value_type:"boolean"},{flag:"--enforcement",value_name:"level"}],gw=[{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"}],_w=[{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"}],yw=[{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"]}],bu=[{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"},...gw,..._w,{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"}],hw=[{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"}],bw=[{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"}],ww=[{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"}],Ew=[{flag:"--id",value_name:"item-id"},{flag:"--clear"}],vw=[{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"},...yw,...gw,{flag:"--fixed_version"},..._w,{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"}],Tw=[{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"},...ub,{flag:"--dry-run"},{flag:"--rollback"},{flag:"--no-checkpoint"},{short:"-t",flag:"--title"},{short:"-d",flag:"--description"},{short:"-b",flag:"--body"},...yw,{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"}],wu=[{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"}],Aw=[{flag:"--id"},{flag:"--op"},{flag:"--author"},{flag:"--from"},{flag:"--to"},{flag:"--limit"},{flag:"--unbounded"},{flag:"--compact"},{flag:"--raw"},{flag:"--full"},{flag:"--provenance"},{flag:"--provenance-summary"},{flag:"--harness",repeatable:!0},{flag:"--agent-instance",repeatable:!0},{flag:"--provenance-filter",repeatable:!0},{flag:"--stream"}],Sw=[{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"}],Eu=vu([{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"])),kw=[{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"}],xw=[{flag:"--list"},{flag:"--format"},{flag:"--depth"}],Cw=[{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}],Ow=[{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"}],Iw=[{flag:"--mode"},{flag:"--k"},{flag:"--fail-under"},{flag:"--queries"},{flag:"--format"}],Gt=[{flag:"--dry-run"},{flag:"--force"},{flag:"--author"},{flag:"--message"}],Rw=[{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"]}],Nw=vu([{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"},...db],new Set(["--highlight","--compact","--full","--fields","--format","--limit","--token-budget","--after"])),Dw=[{flag:"--action"},{flag:"--command"},{flag:"--summary"},{flag:"--schema-only"},{flag:"--flags-only"},{flag:"--availability-only"},{flag:"--runtime-only"},{flag:"--active-only"},{flag:"--full"}],Lw=[{flag:"--eager-tags"}];function Pw(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 _u(e){return ko(Pw([...Zs,...e]))}var F$=["list","list-all","list-draft","list-open","list-in-progress","list-blocked","list-closed","list-canceled"],Mw=new Map([...F$.map(e=>[e,fb]),["templates",bu],["cal",wu],["ctx",Eu],["test-runs-worker",cw],["init",Cb],["config",Ob],["extension",Tu],["package",hu],["packages",hu],["install",Gb],["upgrade",Bb],["create",bu],["item mutate",hw],["item complete",bw],["copy",ww],["focus",Ew],["aggregate",pb],["calendar",wu],["context",Eu],["get",kw],["guide",xw],["search",Nw],["next",Rw],["eval",Iw],["workspace",Gt],["workspace snapshot",Gt],["workspace snapshot create",Gt],["workspace snapshot list",Gt],["workspace snapshot inspect",Gt],["workspace snapshot restore",Gt],["workspace snapshot delete",Gt],["history",bb],["history-redact",Eb],["history-repair",vb],["history-author-acknowledge",Tb],["history-compact",Ab],["merge",wb],["schema",Sb],["profile",kb],["plan",xb],["activity",Aw],["events",Sw],["restore",Xb],["update",vw],["update-many",Tw],["close",Hb],["close-many",Wb],["delete",Jb],["append",Kb],["comments",mb],["notes",gb],["learnings",_b],["files",yb],["docs",hb],["deps",Cw],["graph",Ow],["test",iw],["test-all",sw],["telemetry",aw],["health",fw],["assurance",mw],["validate",pw],["gc",lw],["stats",dw],["duplicates",uw],["contracts",Dw],["completion",Lw],["claim",Yb],["release",Qb],["start-task",Zb],["pause-task",ew],["close-task",tw],["meet",Su],["event",rw],["remind",ow]]),Fw=new Map([["install",Rb],["uninstall",Nb],["explore",Db],["manage",jb],["describe",Lb],["reload",Ub],["doctor",zb],["catalog",qb],["adopt",Vb],["adopt-all",Pb],["activate",Mb],["deactivate",Fb],["migrate",$b]]);function $w(e){return typeof e!="string"?"":e.trim().toLowerCase()}function $$(e){let t=$w(e);if(Mw.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"||Fw.has(r))}function j$(e,t){return t==="init"?e==="extension"?Au:Ib:Fw.get(t)??[]}function ku(e){let t=$w(e);if(t.length===0)return _u([]);let[n,r,...o]=t.split(/\s+/);if((n==="extension"||n==="package"||n==="packages")&&r!==void 0&&o.length===0)return _u(j$(n,r));let i=Mw.get(t)??[];return _u(i)}function U$(e,t=!0){let r=ko(e).flatMap(i=>[i.short,i.flag,...i.aliases??[]]).filter(i=>!!i),o=t?[...r,...Zs.flatMap(i=>[i.short,i.flag,...i.aliases??[]]).filter(i=>!!i)]:r;return So(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]="19a97f60-3b6e-5653-a652-02aebaf5afdd")}catch{}})();var jw={oneOf:[{type:"number"},{type:"array",items:{type:"string"}}]},Uw={if:{required:["field"]}};Reflect.set(Uw,"then",{oneOf:[{required:["equals"]},{required:["state"]}]});var zw={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:[Uw],properties:{kind:{const:"items"},statuses:{type:"array",items:{type:"string"}},types:{type:"array",items:{type:"string"}},tags:{type:"array",items:{type:"string"}},field:{type:"string"},equals:{type:["string","number","boolean","null"]},state:{enum:["present","missing"]}}},{type:"object",additionalProperties:!1,required:["kind","dependency_kind"],properties:{kind:{const:"dependency_kind"},dependency_kind:{type:"string",minLength:1}}},{type:"object",required:["kind","operation","field"],properties:{kind:{const:"graph"},operation:{type:"string",minLength:1},field:{type:"string",minLength:1},parameters:{type:"object"}},additionalProperties:!1},...["validate","health"].map(e=>({type:"object",required:["kind","check","field"],properties:{kind:{const:e},check:{type:"string",minLength:1},field:{type:"string",minLength:1}},additionalProperties:!1})),{type:"object",additionalProperties:!1,required:["kind"],properties:{kind:{const:"history"},op:{type:"string"},author:{type:"string"},harness:{type:"string"},model:{type:"string"}}},{type:"object",additionalProperties:!1,required:["kind","link","state"],properties:{kind:{const:"links"},link:{enum:["files","tests","docs"]},state:{enum:["present","missing"]}}},{type:"object",additionalProperties:!1,required:["kind","provider","key"],properties:{kind:{const:"provider"},provider:{type:"string",minLength:1},key:{type:"string",minLength:1},parameters:{type:"object"}}},{type:"object",additionalProperties:!1,required:["kind","expression"],properties:{kind:{const:"derived"},expression:{type:"object",minProperties:1}}}]}}},{type:"object",additionalProperties:!1,required:["id","measurement_id","owner_item_id","scope","enforcement","negative_control"],oneOf:[{required:["ceiling"]},{required:["floor"]},{required:["equals"]},{required:["zero"]},{required:["monotone_nondecreasing"]},{required:["monotone_nonincreasing"]},{required:["subset_of"]}],allOf:[{oneOf:[{not:{required:["lifetime"],properties:{lifetime:{const:"retire"}}}},{required:["lifetime","retire_reason"],properties:{lifetime:{const:"retire"},retire_reason:{type:"string",minLength:1}}}]}],properties:{id:{type:"string",minLength:1},measurement_id:{type:"string",minLength:1},owner_item_id:{type:"string",minLength:1},scope:{oneOf:[{type:"object",additionalProperties:!1,required:["kind"],properties:{kind:{enum:["all","active"]}}},{type:"object",additionalProperties:!1,required:["kind","measurement_id"],properties:{kind:{const:"filter"},measurement_id:{type:"string",minLength:1}}}]},ceiling:{type:"number"},floor:{type:"number"},equals:jw,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:jw,expected:{enum:["pass","fail"]}}}}}}}},{type:"object",additionalProperties:!1,required:["id","assertion_ids","triggers"],properties:{id:{type:"string",minLength:1},description:{type:"string"},assertion_ids:{type:"array",minItems:1,items:{type:"string",minLength:1}},triggers:{type:"array",minItems:1,items:{enum:["pre-commit","pre-push","pre-merge","ci","pre-release","post-release","scheduled","on-claim","on-close"]}},provider_policy:{type:"object",additionalProperties:!1,required:["allowed_providers","triggers"],properties:{allowed_providers:{type:"array",items:{type:"string",minLength:1}},triggers:{type:"object",additionalProperties:{type:"object",additionalProperties:!1,required:["max_cost_class","allow_network"],properties:{max_cost_class:{enum:["low","medium","high"]},allow_network:{type:"boolean"}}}}}}}}]};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="cb6f6915-307c-58e7-a892-3dff4c7ae399")}catch{}})();var xo={json:{type:"boolean",default:!0},quiet:{type:"boolean"},profile:{type:"boolean"},noExtensions:{type:"boolean"},noPager:{type:"boolean"},tokenAccounting:{type:"boolean"},outputInclude:{type:"string",minLength:1},outputLimit:{anyOf:[{type:"integer",minimum:1},{const:"unbounded"}]},outputBudget:{anyOf:[{type:"integer",minimum:1},{const:"unbounded"}]},outputFormat:{type:"string",enum:["json","toon"]},outputSession:{anyOf:[{type:"string",minLength:1},{type:"object",additionalProperties:!1,required:["version","id","token_budget","spent_tokens","seen_item_ids"],properties:{version:{const:1},id:{type:"string",pattern:"^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$"},token_budget:{type:"integer",minimum:256},spent_tokens:{type:"integer",minimum:0},seen_item_ids:{type:"array",maxItems:to,items:{type:"string",pattern:"^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"}}}}]},outputCursor:{type:"string",minLength:1},outputRowContract:{type:"boolean"},path:{type:"string"},pmExecutable:{type:"string"},timeoutMs:{type:"number"},id:{type:"string"},target:{type:"string"},snapshotAction:{type:"string",enum:["create","list","inspect","restore","delete"]},artifact:{type:"string",enum:["item","history","relationship","json"]},basePath:{type:"string"},oursPath:{type:"string"},theirsPath:{type:"string"},outputPath:{type:"string"},itemPath:{type:"string"},prefer:{type:"string",enum:["ours","theirs"]},includeReconciled:{type:"boolean"},lockTtlSeconds:{type:"number"},lockWaitMs:{type:"number"},capability:{type:"string",minLength:1},declarative:{type:"boolean"},output:{type:"string",minLength:1},markdown:{type:"boolean"},init:{type:"boolean"},install:{type:"boolean"},uninstall:{type:"boolean"},explore:{type:"boolean"},manage:{type:"boolean"},describe:{type:"boolean"},doctor:{type:"boolean"},catalog:{type:"boolean"},adopt:{type:"boolean"},adoptAll:{type:"boolean"},activate:{type:"boolean"},deactivate:{type:"boolean"},filterFilesMissing:{type:"boolean"},filterDocsMissing:{type:"boolean"},matchMode:{type:"string",enum:["all","any","phrase"]},minScore:{anyOf:[{type:"number"},{type:"string",pattern:"^\\d+(\\.\\d+)?$"}]},rank:{anyOf:[{type:"number"},{type:"string",pattern:"^-?\\d+$"}]},exemptIsolateType:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},saveBaseline:{type:"boolean"},rebuild:{type:"boolean"},github:{type:"string"},ref:{type:"string"},query:{type:"string"},queries:{type:"string"},k:{anyOf:[{type:"number"},{type:"string"}]},failUnder:{anyOf:[{type:"number"},{type:"string"}]},for:{type:"string",minLength:1},keywords:{type:"string"},fields:{type:"string"},sort:{type:"string",enum:["priority","deadline","updated_at","created_at","title","parent"]},prefix:{type:"string"},idPrefix:{type:"string"},workspace:{type:"string"},preset:{type:"string",enum:["minimal","default","strict","custom"]},typePreset:{type:"string",enum:["agile","ops","research"]},defaults:{type:"boolean"},verbose:{type:"boolean"},agentGuidance:{type:"string",enum:["ask","add","skip","status"]},withPackages:{type:"boolean"},mergeFence:{type:"boolean"},scope:{type:"string",enum:["project","global"]},allOver:{type:"number"},minEntries:{type:"number"},closed:{type:"boolean"},allStreams:{type:"boolean"},contractAction:{type:"string"},command:{type:"string"},summary:{type:"boolean"},schemaOnly:{type:"boolean"},flagsOnly:{type:"boolean"},availabilityOnly:{type:"boolean"},runtimeOnly:{type:"boolean"},activeOnly:{type:"boolean"},eagerTags:{type:"boolean"},fullChangedFields:{type:"boolean"},provenance:{type:"boolean"},provenanceSummary:{type:"boolean"},agentInstance:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},provenanceFilter:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},idOnly:{type:"boolean"},allowMissingParent:{type:"boolean"},allowUnresolvedDeps:{type:"boolean"},allowDuplicate:{type:"boolean"},duplicateOf:{type:"string"},configAction:{type:"string",enum:["get","set","list","export"]},key:{type:"string"},title:{type:"string"},item:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},start:{type:"string"},duration:{type:"string"},end:{type:"string"},location:{type:"string"},timezone:{type:"string"},allDay:{type:"boolean"},description:{type:"string"},type:{type:"string"},template:{type:"string"},createMode:{type:"string",enum:["strict","progressive"]},schedulePreset:{type:"string",enum:["lightweight"]},status:{type:"string"},since:{type:"string",format:"date-time"},threshold:{type:"number",minimum:0,maximum:1},filterStatus:{type:"string"},filterType:{type:"string"},filterTag:{type:"string"},filterPriority:{anyOf:[{type:"string"},{type:"number"}]},filterDeadlineBefore:{type:"string"},filterDeadlineAfter:{type:"string"},filterUpdatedAfter:{type:"string"},filterUpdatedBefore:{type:"string"},filterCreatedAfter:{type:"string"},filterCreatedBefore:{type:"string"},filterAssignee:{type:"string"},filterAssigneeFilter:{type:"string",enum:["assigned","unassigned"]},filterParent:{type:"string"},filterSprint:{type:"string"},filterRelease:{type:"string"},closeReason:{type:"string"},completedAt:{type:"string",format:"date-time"},reason:{type:"string"},priority:{anyOf:[{type:"string"},{type:"number"}]},tags:{type:"string"},addTags:{type:"array",items:{type:"string"}},removeTags:{type:"array",items:{type:"string"}},addAc:{type:"array",items:{type:"string"}},removeAc:{type:"array",items:{type:"string"}},body:{type:"string"},deadline:{type:"string"},estimate:{anyOf:[{type:"string"},{type:"number"}]},acceptanceCriteria:{type:"string"},author:{type:"string"},message:{type:"string"},owner:{type:"string"},enforcement:{type:"string"},assignee:{type:"string"},assigneeFilter:{type:"string",enum:["assigned","unassigned"]},parent:{type:"string"},reviewer:{type:"string"},attributedAuthor:{type:"string"},planFingerprint:{type:"string",pattern:"^[a-f0-9]{64}$"},historyEvent:{type:"array",items:{type:"string"}},risk:{type:"string"},confidence:{anyOf:[{type:"string"},{type:"number"}]},sprint:{type:"string"},release:{type:"string"},blockedBy:{type:"string"},blockedReason:{type:"string"},unblockNote:{type:"string"},reporter:{type:"string"},severity:{type:"string"},environment:{type:"string"},reproSteps:{type:"string"},resolution:{type:"string"},expectedResult:{type:"string"},actualResult:{type:"string"},affectedVersion:{type:"string"},fixedVersion:{type:"string"},component:{type:"string"},regression:{anyOf:[{type:"boolean"},{type:"string"},{type:"number"}]},customerImpact:{type:"string"},definitionOfReady:{type:"string"},order:{anyOf:[{type:"string"},{type:"number"}]},goal:{type:"string"},objective:{type:"string"},value:{type:"string"},impact:{type:"string"},outcome:{type:"string"},whyNow:{type:"string"},mode:{type:"string",enum:["keyword","semantic","hybrid"]},semanticWeight:{anyOf:[{type:"string"},{type:"number"}]},op:{type:"string"},compact:{type:"boolean"},raw:{type:"boolean"},brief:{type:"boolean"},full:{type:"boolean"},includeEmpty:{type:"boolean"},view:{type:"string",enum:["agenda","day","week","month"]},date:{type:"string"},from:{type:"string"},before:{type:"string"},at:{type:"string"},to:{type:"string"},migrationId:{type:"string"},fieldTypeScope:{type:"string"},past:{type:"boolean"},fullPeriod:{type:"boolean"},include:{type:"string"},recurrenceLookaheadDays:{anyOf:[{type:"string"},{type:"number"}]},recurrenceLookbackDays:{anyOf:[{type:"string"},{type:"number"}]},occurrenceLimit:{anyOf:[{type:"string"},{type:"number"}]},includeLinked:{type:"boolean"},semantic:{type:"boolean"},hybrid:{type:"boolean"},titleExact:{type:"boolean"},phraseExact:{type:"boolean"},highlight:{type:"boolean"},includeBody:{type:"boolean"},noTruncate:{type:"boolean"},strictRead:{type:"boolean"},tag:{type:"string"},deadlineBefore:{type:"string"},deadlineAfter:{type:"string"},today:{type:"boolean"},recent:{type:"boolean"},updatedAfter:{type:"string"},updatedBefore:{type:"string"},createdAfter:{type:"string"},createdBefore:{type:"string"},filterAcMissing:{type:"boolean"},filterEstimatesMissing:{type:"boolean"},filterResolutionMissing:{type:"boolean"},filterMetadataMissing:{type:"boolean"},filterReviewerMissing:{type:"boolean"},filterRiskMissing:{type:"boolean"},filterConfidenceMissing:{type:"boolean"},filterSprintMissing:{type:"boolean"},filterReleaseMissing:{type:"boolean"},hasNotes:{type:"boolean"},noNotes:{type:"boolean"},hasLearnings:{type:"boolean"},noLearnings:{type:"boolean"},hasFiles:{type:"boolean"},noFiles:{type:"boolean"},hasDocs:{type:"boolean"},noDocs:{type:"boolean"},hasTests:{type:"boolean"},noTests:{type:"boolean"},hasComments:{type:"boolean"},noComments:{type:"boolean"},hasDeps:{type:"boolean"},noDeps:{type:"boolean"},hasBody:{type:"boolean"},emptyBody:{type:"boolean"},hasLinkedCommand:{type:"boolean"},noLinkedCommand:{type:"boolean"},filterHasNotes:{type:"boolean"},filterNoNotes:{type:"boolean"},filterHasLearnings:{type:"boolean"},filterNoLearnings:{type:"boolean"},filterHasFiles:{type:"boolean"},filterNoFiles:{type:"boolean"},filterHasDocs:{type:"boolean"},filterNoDocs:{type:"boolean"},filterHasTests:{type:"boolean"},filterNoTests:{type:"boolean"},filterHasComments:{type:"boolean"},filterNoComments:{type:"boolean"},filterHasDeps:{type:"boolean"},filterNoDeps:{type:"boolean"},filterHasBody:{type:"boolean"},filterEmptyBody:{type:"boolean"},filterHasLinkedCommand:{type:"boolean"},filterNoLinkedCommand:{type:"boolean"},ids:{type:"string"},limit:{anyOf:[{type:"string"},{type:"number"}]},blockedLimit:{anyOf:[{type:"string"},{type:"number"}]},readyOnly:{type:"boolean"},offset:{anyOf:[{type:"string"},{type:"number"}]},progress:{type:"boolean"},background:{type:"boolean"},runId:{type:"string"},stream:{anyOf:[{type:"boolean"},{type:"string",enum:["stdout","stderr","both","rows","ndjson","jsonl"]}]},tail:{anyOf:[{type:"string"},{type:"number"}]},addJson:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},eventType:{type:"string"},includeMeta:{type:"boolean"},allActionable:{type:"boolean"},verboseAuthorEvents:{type:"boolean"},match:{type:"string"},onlyIndex:{anyOf:[{type:"string"},{type:"number"}]},removeIndex:{type:"array",items:{anyOf:[{type:"string"},{type:"number"}]}},onlyLast:{type:"boolean"},envSet:{type:"array",items:{type:"string"}},envClear:{type:"array",items:{type:"string"}},sharedHostSafe:{type:"boolean"},detail:{type:"string",enum:["summary","deep"]},trace:{type:"boolean"},reload:{type:"boolean"},watch:{type:"boolean"},runtimeProbe:{type:"boolean"},fixManagedState:{type:"boolean"},isolated:{type:"boolean"},ignoreGlobal:{type:"boolean"},pmContext:{type:"string",enum:["schema","tracker","auto"]},overrideLinkedPmContext:{type:"boolean"},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"},normalizeProvenance:{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"}},qw={assurance:{definition:zw,kind:{type:"string",enum:["measurement","assertion","gate"]},subcommand:{type:"string",enum:["list","show","put","remove","run","verdicts","presets","apply","derive","promote"]},preset:{type:"string",enum:["software-delivery","research","agent-evaluation","operations"]},enforcement:{type:"string",enum:["warn","block"]},limit:{type:"integer",minimum:1,maximum:1e3}},activity:{harness:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]}},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}}},z$=["create","show","add-step","update-step","complete-step","block-step","reorder-step","remove-step","link","unlink","decision","discovery","validation","resume","approve","materialize"],xu={subcommand:{type:"string",enum:[...z$]},stepRef:{type:"string"},reorderTo:{anyOf:[{type:"string"},{type:"number"}]},scope:{type:"string"},harness:{type:"string",enum:[...Qu]},mode:{type:"string",enum:[...Ju]},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:[...Yo]},stepEvidence:{type:"string"},stepBlockedReason:{type:"string"},stepReplacement:{type:"string"},dependsOn:{type:"string"},link:{type:"string"},linkKind:{type:"string",enum:[...Zu]},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"}}]}},Cu={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"]}},Co={action:{description:"Tool action to execute."},pmExecutable:{description:"Override the pm executable used by actions that invoke or verify an external CLI process.",examples:["pm","node dist/cli.js"]},force:{description:"Allow the selected action to override its supported ownership, terminal-state, or destructive-operation guard."},limit:{description:"Maximum number of rows returned by the selected action.",examples:[10,"25"]},text:{description:"Text payload used by append, comment, note, or learning mutations."},path:{description:"Optional PM data root override for this invocation.",examples:[".agents/pm"]},scope:{description:"Scope selector for commands that operate on project or global state. Linked files, docs, and tests default to project scope when omitted.",examples:["project","global"]},detail:{description:"Detail mode for commands that support concise and deep diagnostics.",examples:["summary","deep"]},trace:{description:"When true for extension-doctor, include actionable registration traces in deep diagnostics."},reload:{description:"When true for extension action payloads, trigger cache-busted extension module reload."},watch:{description:"When true for extension-reload/extension action payloads, enable watch mode semantics."},runtimeProbe:{description:"When true for extension-manage, run a doctor-like runtime activation probe for parity fields."},fixManagedState:{description:"When true for extension-manage/extension-doctor, adopt unmanaged extensions before diagnostics/update checks."},isolated:{description:"When true for extension-doctor/package-doctor, ignore global registrations for hermetic project diagnostics."},ignoreGlobal:{description:"Alias for isolated on extension-doctor/package-doctor action payloads."},target:{description:"Positional target argument for the selected action (ID, source, package source, or extension name).",examples:["pm-a1b2",".agents/pm/extensions/sample","sample-extension"]},capability:{description:"Starter capability selected by extension-init or package-init scaffolding.",examples:["commands","hooks","search","schema"]},declarative:{description:"Generate the package composeExtension declarative blueprint starter."},output:{description:"File path for commands that write generated output, such as package/extension describe Markdown references.",examples:["docs/pm-package-reference.md"]},markdown:{description:"Render the package or extension description as Markdown instead of structured output.",examples:[!0]},github:{description:"GitHub shorthand owner/repo[/path] source for package/extension install actions.",examples:["org/repo/extensions/sample"]},ref:{description:"Git ref/branch/tag used when installing from GitHub shorthand/URL sources.",examples:["main","v1.0.0"]},cliOnly:{description:"Restrict upgrade to the pm CLI/SDK npm package."},packagesOnly:{description:"Restrict upgrade to managed installable pm packages."},repair:{description:"Force npm global reinstall semantics when upgrading the pm CLI/SDK."},tag:{description:"npm version or dist-tag used for CLI and registry package upgrades.",examples:["latest","next","2026.5.11"]},today:{description:"When true for list actions, include only items updated since local midnight today."},recent:{description:"When true for list actions, include only items updated in the last seven days."},packageName:{description:"Override the pm CLI package name for self-upgrade automation and tests.",examples:["@unbrained/pm-cli"]},json:{description:"Emit machine-readable JSON output."},quiet:{description:"Suppress stdout payload output."},noExtensions:{description:"Disable extension loading for this invocation."},noPager:{description:"Disable pager integration for help and long output."},tokenAccounting:{description:"Request a bounded transport-level receipt for output emitted by a compatible CLI or MCP host."},outputInclude:{description:"Comma-separated fields or sections retained by any built-in read action.",examples:["id,title,status","summary,counts"]},outputLimit:{description:"Universal read row ceiling, or unbounded to disable the shared ceiling.",examples:[10,"unbounded"]},outputBudget:{description:"Universal estimated-token ceiling for a read result, or unbounded to disable the shared ceiling.",examples:[600,1200,"unbounded"]},outputFormat:{description:"Universal read-result encoding selector.",examples:["toon","json"]},outputSession:{description:"Caller-carried JSON session state that enforces a token ceiling across read calls and replaces repeated item facts with resolvable context references.",examples:[{version:1,id:"orientation",token_budget:4e3,spent_tokens:0,seen_item_ids:[]}]},outputCursor:{description:"Opaque continuation cursor returned when a declared row collection is compacted by the output budget."},outputRowContract:{description:"Include the row selector and TOON row-encoding contract on a read result."},profile:{description:"Emit deterministic timing diagnostics to stderr."},timeoutMs:{description:"Tool execution timeout in milliseconds.",examples:[12e4]},id:{description:"Item identifier for read or mutation actions.",examples:["pm-a1b2"]},treeId:{description:"Commit, tree, snapshot, or immutable workspace identity judged by an assurance gate.",examples:["0123456789abcdef","release-candidate-3"]},definition:{description:"Structured measurement, assertion, or gate declaration used by assurance put."},trigger:{description:"Lifecycle trigger used to evaluate an assurance gate.",examples:["ci","pre-release"]},gate:{description:"Stable assurance gate id used to filter durable verdict history.",examples:["release-readiness"]},owner:{description:"pm item that owns preset or observation-derived assurance assertions.",examples:["pm-a1b2"]},enforcement:{description:"Explicit next assurance enforcement level.",examples:["warn","block"]},runId:{description:"Background test run identifier.",examples:["tr-kq9x3f-93acde"]},title:{description:"Item title text."},description:{description:"Item description text."},type:{description:"Item type name from the active runtime type registry.",examples:["Task","Feature"]},subcommand:{description:"Subcommand selector for schema, profile, telemetry, and graph actions."},name:{description:"Custom definition name, schema migration source name, or profile name.",examples:["Spike","review","component"]},defaultStatus:{description:"Default status hint recorded for a custom item type.",examples:["open"]},alias:{description:"Aliases for the custom item type or status (repeatable).",examples:[["spike","research"]]},role:{description:"Lifecycle roles for a custom status (schema add-status): draft, active, blocked, terminal, terminal_done, terminal_canceled, default_open, default_close, default_cancel.",examples:[["active"],["terminal","terminal_done"]]},fieldType:{description:"Value type for a custom field (schema add-field): string, number, boolean, or string_array.",examples:["string","number","string_array"]},fieldTypeScope:{description:"Optional item type restricting which records participate in schema rename-field.",examples:["Issue","Feature"]},migrationId:{description:"Optional stable idempotency override used to persist and resume a schema migration plan; omitted values are derived from the workspace and normalized request.",examples:["severity-to-impact-v2"]},commands:{description:"Commands a custom field is wired onto (schema add-field): create, update, update_many, list, search, calendar, context.",examples:[["create","update"],["create","update","list"]]},cliFlag:{description:"Override the auto-derived CLI flag for a custom field (schema add-field).",examples:["--owner"]},required:{description:"Mark a custom field as always required (schema add-field)."},requiredOnCreate:{description:"Mark a custom field as required at create time (schema add-field)."},allowUnset:{description:"Whether a custom field may be cleared via --unset (schema add-field); defaults to true."},allowDuplicate:{description:"Explicitly proceed when strict similarity governance finds likely duplicate items."},allowUnresolvedDeps:{description:"Permit unresolved local dependency targets while returning dependency_target_unresolved warning receipts. Cross-workspace references should use source_kind=external instead.",examples:[!0]},requiredTypes:{description:"Restrict a custom field's requirement to specific item types (schema add-field).",examples:[["Bug"],["Story","Spike"]]},infer:{description:"Infer custom item types from title-prefix conventions (schema add-type); previews unless apply is true."},minCount:{description:"Minimum number of items sharing a title prefix for schema add-type inference (default 10).",examples:[10,25]},preset:{description:"Governance preset for initialization flows.",examples:["minimal","default","strict"]},idPrefix:{description:"Tracker item identifier prefix used by initialization; overrides the positional compatibility prefix.",examples:["pm","work"]},workspace:{description:"Workspace directory where initialization resolves or creates the tracker.",examples:[".","packages/app"]},typePreset:{description:"Domain item-type preset registered during initialization.",examples:["agile","ops","research"]},defaults:{description:"Use non-interactive setup defaults during initialization."},verbose:{description:"Include the full resolved settings tree in init output."},agentGuidance:{description:"Control AGENTS.md/CLAUDE.md guidance behavior during init: ask, add, skip, or status.",examples:["ask","add","skip","status"]},withPackages:{description:"Install all bundled first-party pm packages during initialization."},mergeFence:{description:"Install the repository merge-driver fence for a fresh Git-backed tracker; set false to opt out."},createMode:{description:"Create required-option policy mode.",examples:["strict","progressive"]},schedulePreset:{description:"Schedule-centric create preset for Reminder, Meeting, and Event types.",examples:["lightweight"]},status:{description:"Item status value. Statuses are project-configurable via .agents/pm/settings.json (schema block); the built-in defaults are draft, open, in_progress, blocked, closed, canceled. Custom statuses defined for the project are accepted \u2014 discover the active set with the pm_contracts tool (workspace.statuses) or `pm contracts`. Unknown statuses are rejected at runtime with a did-you-mean hint rather than blocked by a fixed schema enum.",examples:["open","in_progress"]},since:{description:"Inclusive ISO 8601 creation timestamp lower bound for duplicate discovery.",examples:["2026-01-01T00:00:00.000Z"]},threshold:{description:"Minimum duplicate similarity score from zero through one.",examples:[.85]},priority:{description:"Priority value in range 0..4.",examples:[0,1,"2"]},order:{description:"Planning order/rank value for create/update, or sort direction (asc|desc) for list-family sorting.",examples:[0,1,"2","asc","desc"]},sort:{description:"List-family sort field selector.",examples:["priority","deadline","updated_at","created_at","title","parent"]},tags:{description:"Comma-delimited tag list.",examples:["pm-cli,agent-ux"]},addTags:{description:"Tags to add to the existing list without replacing it. Each entry may be CSV or a JSON array.",examples:[["agent-ux"],["fix","security"]]},addAc:{description:"Acceptance criteria appended individually without replacing the existing list (one criterion per entry).",examples:[["error path covered by a regression test"]]},removeAc:{description:"Acceptance criteria removed individually by exact text match; the mutation fails atomically if any selector is unmatched (one criterion per entry).",examples:[["superseded manual QA step"]]},removeTags:{description:"Tags to remove from the existing list. Each entry may be CSV or a JSON array.",examples:[["stale"],["legacy","wontfix"]]},deadline:{description:"ISO/date timestamp or relative offset (+6h/+1d/+2w/+6m).",examples:["2026-04-01T00:00:00.000Z","+1d"]},reminder:{description:"Repeatable reminder seed entries at=<iso|relative>,text=<text>.",examples:[["at=+2d,text=Review PR"]]},event:{description:"Repeatable event seed entries start=<iso|relative> with end=<iso|relative> or duration=<relative|30min|PT30M>. Bare `m` remains months for backward compatibility.",examples:[["start=2026-07-01T10:00:00Z,duration=2h,title=planning"],["start=2026-07-01T10:00:00Z,duration=30min,title=standup"],["start=2026-07-01T10:00:00Z,duration=PT30M,title=window"]]},historyEvent:{description:"Unknown-author history target in <item-id>:<one-based-line> form.",examples:[["pm-example:4","pm-example:5"]]},planFingerprint:{description:"Exact SHA-256 returned by a history-author-acknowledge dry-run preview; apply refuses stale or changed source coordinates.",examples:["0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"]},estimate:{description:"Estimated effort in minutes.",examples:[60,"120"]},acceptanceCriteria:{description:"Complete acceptance-criteria text supplied while creating or replacing an item field."},author:{description:"Intentional mutation-author override. Agent harness identity is automatic when omitted."},attributedAuthor:{description:"Principal attributed to the immutable unknown-author history events after review.",examples:["reviewed-principal"]},message:{description:"History message for mutation audit trail."},assignee:{description:"Assignee identity."},assigneeFilter:{description:"Assignee presence selector for list, calendar, and context filters.",examples:["assigned","unassigned"]},parent:{description:"Parent item ID filter for hierarchical list queries.",examples:["pm-epic01"]},blockedLimit:{description:"Cap blocked rows returned by the next action (defaults to the ready --limit).",examples:["3"]},readyOnly:{description:"When true, the next action omits the blocked companion list."},unset:{description:"Repeatable list of item-metadata fields to clear explicitly during create/update mutations.",examples:[["deadline","assignee"],["close-reason"]]},clearDeps:{description:"When true, clear linked dependencies."},replaceDeps:{description:"When true for update, atomically replace dependencies with the supplied --dep values."},replaceTests:{description:"When true for update, atomically replace linked tests with the supplied --test values."},replaceFiles:{description:"When true for update, atomically replace linked files with the supplied --file values."},replaceDocs:{description:"When true for update, atomically replace linked docs with the supplied --doc values."},lookupPath:{description:"One or more source paths whose referencing pm items should be returned by files lookup.",examples:[["src/sdk/files.ts"],["README.md","docs/SDK.md"]]},explain:{description:"Include ranked linked-file, rationale, and governing-decision evidence for a files lookup."},lines:{description:"Inclusive start:end source-line range for Git contribution attribution; requires one lookup path.",examples:["10:24"]},decisionDepth:{description:"Maximum typed relationship depth searched for a governing Decision during files lookup.",examples:[8]},clearComments:{description:"When true, clear item comments."},clearNotes:{description:"When true, clear item notes."},clearLearnings:{description:"When true, clear item learnings."},clearFiles:{description:"When true, clear linked files."},clearTests:{description:"When true, clear linked tests."},clearDocs:{description:"When true, clear linked docs."},clearReminders:{description:"When true, clear reminders."},clearEvents:{description:"When true, clear events."},clearTypeOptions:{description:"When true, clear type option metadata."},clearCriteria:{description:"When true for config set criteria-list keys (definition-of-done, metadata-required-fields, lifecycle pattern lists), clear the criteria list."},mode:{description:"Mode selector for search and reindex (keyword|semantic|hybrid).",examples:["keyword","hybrid"]},semanticWeight:{description:"Per-query hybrid semantic weight override in [0,1] for search action; invalid values fall back to settings.",examples:[.2,"0.7"]},op:{description:"History operation filter for activity output.",examples:["create","update","close","update_ownership_bypass"]},fullPeriod:{description:"For day/week/month calendar views, include the full anchored period instead of clipping the start to now."},progress:{description:"Emit progress diagnostics to stderr for long-running operations."},background:{description:"Run linked tests in managed background mode."},addJson:{description:"JSON input: one structured context event for notes, or repeatable linked-test entries for test.",examples:[['{"command":"node scripts/run-tests.mjs test -- tests/unit/output.spec.ts","timeout_seconds":240}']]},eventType:{description:"For notes action, return structured context events whose top-level type matches this value."},includeMeta:{description:"Include structured-event counts for notes reads; filtered reads also include total, returned, limit, and has-more metadata."},allActionable:{description:"For history-author-acknowledge, select every currently actionable undispositioned event."},match:{description:"Run only linked tests whose command or path contains this case-insensitive substring.",examples:["output.spec.ts","coverage"]},onlyIndex:{description:"Run only the 1-based linked-test index from pm test <id> --list order.",examples:[1,"2"]},removeIndex:{description:"Remove linked tests by their 1-based positions from pm test <id> --list order; repeatable and lossless for commands containing commas or equals signs.",examples:[[1],["2","4"]]},onlyLast:{description:"Run only the most recently added linked-test entry."},envSet:{description:"Repeatable runtime environment KEY=VALUE overrides for linked-test execution.",examples:[["PORT=0","PLAYWRIGHT_HTML_OPEN=never"]]},envClear:{description:"Repeatable runtime environment variable names to clear before linked-test execution.",examples:[["PLAYWRIGHT_BASE_URL"]]},sharedHostSafe:{description:"Apply additive shared-host-safe runtime defaults during linked-test execution."},pmContext:{description:"PM linked-test context mode (schema keeps isolated tracker data; tracker seeds source tracker data; auto uses tracker for PM tracker-read linked commands).",examples:["schema","tracker","auto"]},overrideLinkedPmContext:{description:"Force run-level --pm-context to override per-linked-test pm_context_mode metadata for all linked-test entries."},failOnContextMismatch:{description:"Fail linked PM command runs when source and sandbox tracker item counts differ."},failOnSkipped:{description:"Treat skipped linked tests as dependency-failed policy violations."},failOnEmptyTestRun:{description:"Treat successful linked-test commands that report zero executed tests as failures."},requireAssertionsForPm:{description:"Require assertion metadata for linked PM command test entries during run execution."},checkContext:{description:"Run linked PM command context preflight diagnostics before command execution."},autoPmContext:{description:"Auto-remediate PM tracker-read linked commands by routing those entries through tracker context regardless of linked-test pm_context_mode overrides."},measure:{description:"Repeatable numeric run evidence in name=value[,unit=...][,threshold=...] form.",examples:[["coverage=100,unit=percent,threshold=100"]]},metricBelow:{description:"Return recorded evidence below a name=value threshold.",examples:["coverage=100"]},metricDiff:{description:"Compare the latest and previous values for one metric.",examples:["coverage"]},dryRun:{description:"Preview command effects without mutating storage artifacts."},normalizeProvenance:{description:"For history-repair: remove invalid legacy provenance observations and emit only aggregate privacy-safe repair evidence."},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."},raw:{description:"For activity, restore the compact per-event stream instead of the default item digest."},brief:{description:"Emit compact low-token output for commands that support terse projections or health details.",examples:[!0]},full:{description:"Enable command-specific full/detail output mode when supported, such as deep item reads for get or full payload mode for search/history."},includeEmpty:{description:"For stats, restore zero-count registered type and lifecycle-status buckets."},fields:{description:"Comma-separated projection fields for get, search, list-family, or context outputs. Valid field names are command-specific (e.g. score/matched_fields apply to search; context projects focus-row fields such as priority/deadline/completion_pct).",examples:["id,title,status,parent,type","id,title,score,matched_fields","id,title,priority,deadline"]},groupBy:{description:"Comma-separated aggregate grouping fields (supported: parent,type,priority,status,assignee,tags,sprint,release).",examples:["parent,type","type,status","priority,assignee","tags","sprint,release"]},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"]}},Vw={assurance:{subcommand:{description:"Assurance operation: list, show, put, remove, run, verdicts, presets, apply, derive, or promote.",examples:["list","run","derive","promote"]},kind:{description:"Assurance declaration kind for registry operations: measurement, assertion, or gate.",examples:["measurement","assertion","gate"]},id:{description:"Stable assurance declaration id or gate id, depending on subcommand.",examples:["active-issues","release-readiness"]},limit:{description:"Maximum number of newest assurance verdicts returned.",examples:[10,25]},preset:{description:"Built-in assurance project shape to preview or apply.",examples:["software-delivery","agent-evaluation"]}},update:{acceptanceCriteria:{description:"Complete acceptance-criteria replacement text. Use removeAc plus addAc together for an atomic one-entry repair that preserves unrelated criteria."}},"update-many":{acceptanceCriteria:{description:"Complete acceptance-criteria replacement text. Use removeAc plus addAc together for an atomic one-entry repair that preserves unrelated criteria."}},stats:{since:{description:"Inclusive ISO 8601 timestamp or negative duration lower bound for provenance and fleet analytics.",examples:["2026-08-01T00:00:00.000Z","-30d"]}},events:{since:{description:"Durable event cursor returned as next_cursor, or an inclusive event timestamp.",examples:["eyJmaW5nZXJwcmludCI6Ii4uLiJ9","2026-08-01T00:00:00.000Z"]},type:{description:"Mutation event type filter, supplied once or as a list.",examples:["create",["create","update"]]},author:{description:"Mutation author filter, supplied once or as a list.",examples:["agent-a",["agent-a","agent-b"]]},item:{description:"Tracked item id filter, supplied once or as a list.",examples:["pm-a1b2",["pm-a1b2","pm-c3d4"]]},limit:{description:"Maximum mutation events returned, from 0 through 1000.",examples:[0,100]}},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]="1d6089b2-ab59-59ad-a475-9a6ef1356b40")}catch{}})();var q$=["json","quiet","profile","noExtensions","noPager","tokenAccounting","path","pmExecutable","timeoutMs"],V$=["outputInclude","outputLimit","outputBudget","outputFormat","outputSession","outputCursor","outputRowContract"],Kw=new Set(["action","cwd","options",...Object.keys(xo).filter(e=>e!=="severity")]);function G$(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 Kw.has(n)?{field:e,property:n,owner:"mcp_tool_input",nested_path:`options.${n}`}:void 0}var B$={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"]},Yw=["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"],C6=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(lt.filter(e=>e==="install"||e==="extension"||e==="package"||e.startsWith("extension-")||e.startsWith("package-")).map(e=>[e,["project","local","global"]]))});function Re(e){return So(e)}var H$=Re([...lu.map(e=>e.param),...Qs.map(e=>e.param),"assignee","closeReason","completedAt"]),Xw=Re([...du.map(e=>e.param),...Qs.map(e=>e.param),"force"]),W$=Re([...fu.map(e=>e.param),...Xw.filter(e=>e!=="allowMissingParent"&&e!=="completedAt"),"dryRun","rollback","noCheckpoint"]),K$=Re([...pu.map(e=>e.param),"reason","completedAt","resolution","expectedResult","actualResult","validateClose","dryRun","rollback","noCheckpoint","author","message","force"]),Gw=Re([...gu.map(e=>e.param),"past","section"]),Y$=Re([...mu.map(e=>e.param),"stream"]),Bt=Re([...su.map(e=>e.param),"includeBody","noTruncate","strictRead","compact","brief","full"]),Ht=[[{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"}}]],X$=[[{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}}]],J$=Re([...au.map(e=>e.param),"count","completion","includeUnparented"]),Q$=Re(["query","keywords","mode","semantic","hybrid","includeLinked","titleExact","phraseExact","highlight","compact","full",...cu.map(e=>e.param)]),Bw=Re(["type","tag","priority","assignee","assigneeFilter","sprint","release","parent","limit","blockedLimit","readyOnly","format","includeDecisions","tokenBudget","explainRanking"]),ve=["author","message","force"],Jw=["text","reason","closeReason","completedAt","duplicateOf","validateClose","resolution","expectedResult","actualResult"],Oo=["author","assignee","message","force"],Z$=["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 Hw(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:Z$}}}var Ww={required:["title"],optional:["start","duration","end","location","timezone","allDay","parent","allowMissingParent","tags","priority","body","description","author","message"]},ea={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"]},...Hw("extension"),...Hw("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:H$},copy:{required:["id"],optional:["title","author","message","allowDuplicate"]},focus:{optional:["id","clear"],mutuallyExclusive:[["id","clear"]]},list:{optional:Bt,mutuallyExclusiveWhen:Ht},"list-all":{optional:Bt,mutuallyExclusiveWhen:Ht},"list-draft":{optional:Bt,mutuallyExclusiveWhen:Ht},"list-open":{optional:Bt,mutuallyExclusiveWhen:Ht},"list-in-progress":{optional:Bt,mutuallyExclusiveWhen:Ht},"list-blocked":{optional:Bt,mutuallyExclusiveWhen:Ht},"list-closed":{optional:Bt,mutuallyExclusiveWhen:Ht},"list-canceled":{optional:Bt,mutuallyExclusiveWhen:Ht},aggregate:{optional:J$},guide:{optional:["list","format","depth"]},context:{optional:Gw},ctx:{optional:Gw},get:{required:["id"],optional:["for","tokenBudget","at","depth","full","fields","tree","treeDepth","format"]},search:{optional:Q$,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:Ww,event:Ww,remind:{required:["title"],optional:["at","text","parent","allowMissingParent","tags","priority","body","description","author","message"]},next:{optional:[...Bw,"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",...ve],anyOfRequired:[["literal"],["regex"]]},"history-repair":{optional:["id","all","dryRun","normalizeProvenance",...ve],oneOfRequired:[["id"],["all"]]},"history-author-acknowledge":{optional:["historyEvent","allActionable","dryRun","planFingerprint","limit","attributedAuthor","reviewer","reason"],oneOfRequired:[["historyEvent"],["allActionable"]]},"history-compact":{optional:["id","before","ids","allOver","closed","allStreams","minEntries","dryRun",...ve]},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",...Yw,"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",...ve]},activity:{optional:Y$},restore:{required:["id","target"],optional:ve},update:{required:["id"],optional:Xw,mutuallyExclusive:[["acceptanceCriteria","addAc"],["acceptanceCriteria","removeAc"]]},"update-many":{optional:W$,mutuallyExclusive:[["acceptanceCriteria","addAc"],["acceptanceCriteria","removeAc"]]},close:{required:["id"],optional:[...Jw,...ve]},"close-many":{optional:K$},delete:{required:["id"],optional:["dryRun",...ve]},append:{required:["id","body"],optional:ve},comments:{required:["id"],optional:["text","add","stdin","edit","delete","limit","full",...ve]},notes:{required:["id"],optional:["text","add","addJson","stdin","edit","delete","limit","since","eventType","includeMeta","full",...ve],mutuallyExclusive:[["addJson","add"],["addJson","stdin"],["addJson","file"],["addJson","edit"],["addJson","delete"]]},learnings:{required:["id"],optional:["text","add","stdin","edit","delete","limit","full",...ve]},files:{required:[],optional:["id","add","addGlob","remove","migrate","list","addNote","discover","apply","discoveryNote","appendStable","validatePaths","lookupPath","scope","limit","offset","noTruncate","strictRead","explain","lines","decisionDepth",...ve],anyOfRequired:[["id"],["lookupPath"]],dependentAnyOfRequired:[{property:"addNote",anyOfRequired:[["add"],["addGlob"]]}]},docs:{required:["id"],optional:["add","addGlob","remove","migrate","addNote","list","validatePaths",...ve],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","removeIndex","run","match","onlyIndex","onlyLast","background","timeout","progress","envSet","envClear","sharedHostSafe","pmContext","overrideLinkedPmContext","failOnContextMismatch","failOnSkipped","failOnEmptyTestRun","requireAssertionsForPm","checkContext","autoPmContext","measure","metricBelow","metricDiff",...ve]},"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:["includeEmpty","storage","metadataCoverage","fieldUtilization","byAssignee","byTag","byPriority","tagPrefix","measurements","metric","measurementLimit","observe","improvementDirection","measurementSource","measurementItem","measurementRevision","author","message","provenanceCoverage","fleetAttribution","since","eventLimit","minimumSample"]},duplicates:{optional:["status","since","threshold","limit"]},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","preset","owner","apply","enforcement"],conditionalRequired:[{property:"subcommand",value:"list",required:["kind"]},{property:"subcommand",value:"show",required:["kind","id"]},{property:"subcommand",value:"put",required:["kind","id","definition"]},{property:"subcommand",value:"remove",required:["kind","id"]},{property:"subcommand",value:"run",required:["id","trigger"]},{property:"subcommand",value:"apply",required:["preset","owner"]},{property:"subcommand",value:"derive",required:["owner"]},{property:"subcommand",value:"promote",required:["id","enforcement"]}]},gc:{optional:["dryRun","gcScope"]},contracts:{optional:["contractAction","command","summary","schemaOnly","flagsOnly","availabilityOnly","runtimeOnly","activeOnly","full"],mutuallyExclusiveWhen:X$},completion:{required:["shell"],optional:["eagerTags"]},claim:{optional:["id","next","ifAvailable","maxAttempts","includeDecisions",...Bw,...Oo],oneOfRequired:[["id"],["next"]]},release:{required:["id"],optional:Oo},"start-task":{required:["id"],optional:Oo},"pause-task":{required:["id"],optional:Oo},"close-task":{required:["id"],optional:["text","validateClose",...Oo]}},ej=Object.freeze(Object.fromEntries(lt.map(e=>[e,ea[e]])));function Qw(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]/g," ").trim().replace(/^./,t=>t.toUpperCase()).concat(".")}function tj(e,t){let n=typeof t=="object"&&t!==null?{...t}:{},r=Co[e];return{...n,description:r?.description??Qw(e),...r?.examples?{examples:r.examples}:{}}}function nj(e,t){if(e==="plan"&&Object.prototype.hasOwnProperty.call(Cu,t))return Cu[t];let n=Vw[e];return n&&Object.prototype.hasOwnProperty.call(n,t)?n[t]:Co[t]}function rj(e,t,n){let r=typeof n=="object"&&n!==null?{...n}:{},o=nj(e,t);return{...r,description:o?.description??Qw(t),...o?.examples?{examples:o.examples}:{}}}function oj(e,t){let n=qw[e];return n&&Object.prototype.hasOwnProperty.call(n,t)?n[t]:e==="plan"&&Object.prototype.hasOwnProperty.call(xu,t)?xu[t]:(e==="get"||e==="history"||e==="search")&&t==="format"?{type:"string",enum:["json","toon"]}:xo[t]}function ij(e,t){let n={action:{const:e,description:Co.action?.description??"Tool action to execute."}};for(let r of t){if(r==="action")continue;let o=oj(e,r);o&&(n[r]=rj(e,r,o))}return n}function sj(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 aj(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:Re(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(ea,e))return;let t=ea[e],n=B$[e]??[];return Re(["action",...q$,...dt(e)!==void 0?V$:[],...n,...t.required??[],...t.optional??[]])}function Zw(e){let t=ea[e],n=Re(t.required??[]),r=Ou(e),o={type:"object",additionalProperties:!1,required:["action",...n],title:`pm action "${e}" parameters`,properties:ij(e,r)};t.anyOfRequired&&t.anyOfRequired.length>0&&(o.anyOf=t.anyOfRequired.map(s=>({required:[...s]}))),t.oneOfRequired&&t.oneOfRequired.length>0&&(o.oneOf=sj(e,t.oneOfRequired));let i=aj(t);return i.length>0&&(o.allOf=i),o}function cj(e,t={}){let n=Zw(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(c=>c.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 eE(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.7.0",tE=Iu.split(".")[0],nE="1.3.0",lj=eE(()=>({$schema:"https://json-schema.org/draft/2020-12/schema",$id:`https://schema.unbrained.dev/pm-cli/tool-parameters-v${tE}.schema.json`,title:"pm-cli tool parameters (action-scoped strict schema)","x-schema-version":Iu,type:"object",oneOf:lt.map(e=>Zw(e))}));function dj(e,t){let n=tj(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,...c}=n;return{...o,...c}}let{anyOf:i,...s}=n;return{...s,type:"string"}}function uj(){let e={action:{type:"string",description:Co.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(xo).sort())e[t]=dj(t,xo[t]);return{title:"pm-cli tool parameters (provider-compatible flat schema)","x-schema-version":nE,type:"object",additionalProperties:!1,required:["action"],properties:e}}var fj=eE(uj);(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8b227cb2-a30d-5384-b9c2-558603181c67")}catch{}})();var pj=new Set(["--author","--follow","--help","--lean","--token-accounting","--output-include","--output-limit","--output-budget","--output-format","--output-session","--output-cursor","--output-row-contract","--no-changed-fields","--no-extensions","--no-pager","--pm-path","--profile","--quiet","--interval-ms"]),mj=new Set([...Jm,...Qm]),gj=new Set(["--brief","--format","--full","--full-changed-fields","--id-only","--no-truncate","--stream"]),_j=new Set(["--body-file","--file","--stdin-json"]),yj=new Set(["--global","--local","--project"]),hj=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"]),bj=new Set(["action","path","pmExecutable","timeoutMs"]),wj=new Set(["configAction","id","name","query","reason","subcommand","target","text"]),Ej={assurance:{id:"<id>",kind:"<kind>",preset:"[kind]|[id]",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>"}},vj={assurance:{"--tree":"treeId","--owner":"owner","--apply":"apply","--enforcement":"enforcement"},init:{"--id-prefix":"idPrefix","--no-merge-fence":"mergeFence","--workspace":"workspace"},create:{"--ac":"acceptanceCriteria","--estimated-minutes":"estimate","--file":"linkedFile","--test":"linkedTest","--expected":"expectedResult","--actual":"actualResult"},update:{"--ac":"acceptanceCriteria","--estimated-minutes":"estimate","--file":"linkedFile","--test":"linkedTest","--expected":"expectedResult","--actual":"actualResult"},"update-many":{"--ac":"acceptanceCriteria","--estimated-minutes":"estimate","--file":"linkedFile","--test":"linkedTest","--expected":"expectedResult","--actual":"actualResult"},files:{"--note":"addNote"},docs:{"--note":"addNote"},comments:{"--full-history":"full"},notes:{"--file":"text","--full-history":"full"},learnings:{"--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"}},Tj={"--pm-path":"path"},oE={stats:{"--analytics":["measurements","metric","measurementLimit","observe","improvementDirection","measurementSource","measurementItem","measurementRevision","author","message","provenanceCoverage","fleetAttribution","since","eventLimit","minimumSample"]}};function Aj(e){return e.startsWith("extension-")?`extension ${e.slice(10)}`:e.startsWith("package-")?`package ${e.slice(8)}`:e}function rE(e,t){let n=vj[e]?.[t]??Tj[t];return n!==void 0?n:t.replace(/^--/,"").replaceAll("_","-").replace(/-([a-z])/g,(r,o)=>o.toUpperCase())}function Sj(e){let t=new Set;return e.filter(({flag:n})=>!n.startsWith("--")||t.has(n)?!1:(t.add(n),!0))}function kj(e,t){return t.find(({aliases:n})=>n?.includes(e))?.flag}function xj(e,t,n,r){let o=oE[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=rE(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=kj(t.flag,n);if(s!==void 0){let a=rE(e,s);if(r.has(a))return{surface:"cli",input:t.flag,counterpart:a,disposition:"compatibility_alias",reason:`Compatibility spelling for ${s}.`}}return pj.has(t.flag)?{surface:"cli",input:t.flag,disposition:"cli_transport",reason:"CLI process transport is supplied by the in-process SDK host."}:gj.has(t.flag)?{surface:"cli",input:t.flag,disposition:"cli_presentation",reason:"CLI rendering or mutation projection does not alter the SDK result envelope."}:_j.has(t.flag)?{surface:"cli",input:t.flag,disposition:"cli_adapter",reason:"Local file or stdin adaptation is a CLI boundary concern."}:hj.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."}:yj.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 Cj(e,t,n){let r=Object.entries(oE[e]??{}).find(([s,a])=>a.includes(t)&&n.some(({input:c,disposition:l})=>c===s&&l==="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=Ej[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."}:bj.has(t)?{surface:"sdk",input:t,disposition:"sdk_transport",reason:"The SDK host supplies in-process transport and workspace selection."}:wj.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 Oj(e={}){let t=e.actions??lt,n=e.resolveFlags??ku,r=e.resolveParameters??Ou;return t.map(o=>{let i=Aj(o),s=Sj(n(i)).filter(({flag:d})=>dt(o)!==void 0||!mj.has(d)),a=new Set(r(o)??[]),c=s.map(d=>xj(o,d,s,a)),l=[...a].sort((d,u)=>d.localeCompare(u)).map(d=>Cj(o,d,c));return{action:o,command:i,cli:c,sdk:l,unclassified:[...c,...l].filter(({disposition:d})=>d==="unclassified")}})}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="969b5bd2-e7de-5db8-bef2-6748675a100c")}catch{}})();import{Option as Ij}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]="8d60b13c-c58a-506f-adc9-2414dd69edef")}catch{}})();async function Y6(e,t,n,r,o){let i=Tr(process.cwd(),r.path),s=await De("command_result",{command:e,args:t,options:n,global:r,pm_root:i,result:o});return s.handled?s.result:o}function X6(e,t){for(let[n,r]of Object.entries(t))e.setOptionValueWithSource(n,r,"cli")}function iE(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 Ru=Symbol("pm.resolvedGlobalOptions");function Rj(e){return typeof e=="object"&&e!==null?e:{}}function Te(e,t){return e.find(r=>r.target===t)??{target:t,keys:[t]}}function J6(e,t){e[Ru]={...t}}function Q6(e){delete e[Ru]}function Sn(e,t){return typeof e[t]=="string"?e[t]:void 0}function Z6(e){let t=Nj(e),n=e[Ru];if(n)return{...n,...t.length>0?{command:t}:{}};let r=Rj(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:Sn(o,"outputInclude"),outputLimit:Sn(o,"outputLimit"),outputBudget:Sn(o,"outputBudget"),outputSession:Sn(o,"outputSession"),outputCursor:Sn(o,"outputCursor"),...o.outputRowContract===!0?{outputRowContract:!0}:{},...o.outputFormat==="toon"||o.outputFormat==="json"?{outputFormat:o.outputFormat}:{},path:Sn(o,"pmPath")??Sn(o,"path"),noExtensions:o.extensions===!1,noPager:!!o.noPager,profile:!!o.profile,...t.length>0?{command:t}:{},...typeof o.author=="string"?{author:o.author}:{}}}function Nj(e){let t=[],n=e;for(;n?.parent;)t.unshift(n.name()),n=n.parent;return t.join(" ")}async function e3(e){if(e.json===!0)return e;let t=Tr(process.cwd(),e.path);if(!await Y(Ae(t)))return e;let n=await Xe(t);return{...e,defaultOutputFormat:n.output.default_format}}function Dj(e,t){let n=t??[];return n.push(e),n}function Be(e,t,n){if(typeof n!="string")return;let r=n.trim();r.length!==0&&e.push(t,r)}function ot(e,t,n){n===!0&&e.push(t)}function kn(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 v(e,t){return e[t]===!0?!0:void 0}function wt(e,t){return e[t]===!1?!0:void 0}function t3(e,t){return typeof e[t]=="string"?e[t]:void 0}function Lj(e,t,n,r=!1,o=void 0){let i=new Ij(t,n).hideHelp();r&&i.argParser(o??Dj),e.addOption(i)}function n3(e,t,n){for(let[r,o]of t)Lj(e,r,o,n)}function ta(e,t){return t.some(n=>e[n]===!0)?!0:void 0}function sE(e,t){let n=Ks(e,t);return typeof n=="string"||typeof n=="number"&&Number.isFinite(n)?n:void 0}function na(e,t){for(let[n,r]of Object.entries(t))n==="__proto__"||n==="constructor"||n==="prototype"||Object.hasOwn(e,n)||(e[n]=r)}function r3(e,t){let n=["test",e,"--run","--json","--progress"];return kn(n,"--add",t.add),kn(n,"--add-json",t.addJson),kn(n,"--remove",t.remove),kn(n,"--remove-index",t.removeIndex),Be(n,"--match",t.match),Be(n,"--only-index",t.onlyIndex),ot(n,"--only-last",t.onlyLast),kn(n,"--measure",t.measure),Be(n,"--metric-below",t.metricBelow),Be(n,"--metric-diff",t.metricDiff),aE(n,t),Be(n,"--author",t.author),Be(n,"--message",t.message),ot(n,"--force",t.force),n}function aE(e,t){Be(e,"--timeout",t.timeout),kn(e,"--env-set",t.envSet),kn(e,"--env-clear",t.envClear),ot(e,"--shared-host-safe",t.sharedHostSafe),Be(e,"--pm-context",t.pmContext),ot(e,"--override-linked-pm-context",t.overrideLinkedPmContext),ot(e,"--fail-on-context-mismatch",t.failOnContextMismatch),ot(e,"--fail-on-skipped",t.failOnSkipped),ot(e,"--fail-on-empty-test-run",t.failOnEmptyTestRun),ot(e,"--require-assertions-for-pm",t.requireAssertionsForPm),ot(e,"--check-context",t.checkContext),ot(e,"--auto-pm-context",t.autoPmContext)}function o3(e){let t=["test-all","--json","--progress"];return Be(t,"--status",e.status),Be(t,"--limit",e.limit),Be(t,"--offset",e.offset),aE(t,e),t}function Pj(e){return e.join(",")}function i3(e,t={}){let n=s=>bt(e,Te(nu,s)),r=s=>Ys(e,Te(Xs,s)),o=n("type");if(t.requireType!==!1&&o===void 0)throw new h("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:iE(e,Te(Xs,"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:ta(e,["allowMissingParent","allow_missing_parent"])===!0,allowUnresolvedDeps:ta(e,["allowUnresolvedDeps","allow_unresolved_deps"])===!0,allowDuplicate:v(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:v(e,"clearDeps"),clearComments:v(e,"clearComments"),clearNotes:v(e,"clearNotes"),clearLearnings:v(e,"clearLearnings"),clearFiles:v(e,"clearFiles"),clearTests:v(e,"clearTests"),clearDocs:v(e,"clearDocs"),clearReminders:v(e,"clearReminders"),clearEvents:v(e,"clearEvents"),clearTypeOptions:v(e,"clearTypeOptions")};return na(i,e),i}function s3(e){let t=o=>bt(e,Te(ou,o)),n=o=>Ys(e,Te(Js,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:iE(e,Te(Js,"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:ta(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:v(e,"replaceDeps"),replaceTests:v(e,"replaceTests"),replaceFiles:v(e,"replaceFiles"),replaceDocs:v(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:v(e,"clearDeps"),clearComments:v(e,"clearComments"),clearNotes:v(e,"clearNotes"),clearLearnings:v(e,"clearLearnings"),clearFiles:v(e,"clearFiles"),clearTests:v(e,"clearTests"),clearDocs:v(e,"clearDocs"),clearReminders:v(e,"clearReminders"),clearEvents:v(e,"clearEvents"),clearTypeOptions:v(e,"clearTypeOptions")};return na(r,e),r}var Mj=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 a3(e){let t={};for(let[n,r]of Object.entries(e))Mj.has(n)||(t[n]=r);return t}function L(e,t){let n=Te(Zd,t),r=bt(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 cE(e){let t=v(e,"filterFilesMissing"),n=v(e,"filterDocsMissing");return{filterReviewerMissing:v(e,"filterReviewerMissing"),filterRiskMissing:v(e,"filterRiskMissing"),filterConfidenceMissing:v(e,"filterConfidenceMissing"),filterSprintMissing:v(e,"filterSprintMissing"),filterReleaseMissing:v(e,"filterReleaseMissing"),hasNotes:v(e,"hasNotes"),hasLearnings:v(e,"hasLearnings"),hasFiles:v(e,"hasFiles"),hasDocs:v(e,"hasDocs"),hasTests:v(e,"hasTests"),hasComments:v(e,"hasComments"),hasDeps:v(e,"hasDeps"),hasBody:v(e,"hasBody"),hasLinkedCommand:v(e,"hasLinkedCommand"),noNotes:wt(e,"notes"),noLearnings:wt(e,"learnings"),noFiles:wt(e,"files")??t,filterFilesMissing:t,noDocs:wt(e,"docs")??n,filterDocsMissing:n,noTests:wt(e,"tests"),noComments:wt(e,"comments"),noDeps:wt(e,"deps"),emptyBody:v(e,"emptyBody"),noLinkedCommand:wt(e,"linkedCommand")}}function c3(e){let t={status:L(e,"status"),type:L(e,"type"),tag:L(e,"tag"),priority:L(e,"priority"),deadlineBefore:L(e,"deadlineBefore"),deadlineAfter:L(e,"deadlineAfter"),updatedAfter:L(e,"updatedAfter"),updatedBefore:L(e,"updatedBefore"),createdAfter:L(e,"createdAfter"),createdBefore:L(e,"createdBefore"),today:v(e,"today"),recent:v(e,"recent"),ids:L(e,"ids"),assignee:L(e,"assignee"),assigneeFilter:L(e,"assigneeFilter"),parent:L(e,"parent"),sprint:L(e,"sprint"),release:L(e,"release"),limit:L(e,"limit"),offset:L(e,"offset"),noTruncate:wt(e,"truncate"),includeBody:v(e,"includeBody"),strictRead:v(e,"strictRead"),compact:v(e,"compact"),brief:v(e,"brief"),full:v(e,"full"),fields:L(e,"fields"),sort:L(e,"sort"),order:L(e,"order"),tree:v(e,"tree"),treeDepth:L(e,"treeDepth"),filterAcMissing:v(e,"filterAcMissing"),filterEstimatesMissing:ta(e,["filterEstimatesMissing","filterEstimateMissing"]),filterResolutionMissing:v(e,"filterResolutionMissing"),filterMetadataMissing:v(e,"filterMetadataMissing"),...cE(e)};return na(t,e),t}function l3(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:L(e,"type"),tag:L(e,"tag"),priority:L(e,"priority"),deadlineBefore:L(e,"deadlineBefore"),deadlineAfter:L(e,"deadlineAfter"),assignee:L(e,"assignee"),assigneeFilter:L(e,"assigneeFilter"),parent:L(e,"parent"),sprint:L(e,"sprint"),release:L(e,"release")}}function d3(e,t,n){if(zn(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),!!ft(`${JSON.stringify(o)}
|
|
191
|
+
`)){for(let i of t.items)if(!ft(`${JSON.stringify({type:"item",command:e,item:i})}
|
|
192
|
+
`))return;ft(`${JSON.stringify({type:"end",command:e,count:t.count})}
|
|
193
|
+
`)}}function u3(e,t,n){if(zn(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(!ft(`${JSON.stringify(r)}
|
|
194
|
+
`))return;let o=e.compact&&e.compact_activity?e.compact_activity:e.activity??[];for(let i of o)if(!ft(`${JSON.stringify({type:"entry",command:"activity",entry:i})}
|
|
195
|
+
`))return;ft(`${JSON.stringify({type:"end",command:"activity",count:e.count})}
|
|
196
|
+
`)}function f3(e){let t=l=>bt(e,Te(Bs,l)),n=l=>{let d=Ks(e,Te(Bs,l));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,c={mode:e.semantic===!0?"semantic":e.hybrid===!0?"hybrid":t("mode"),matchMode:t("matchMode"),minScore:n("minScore"),count:v(e,"count"),semanticWeight:n("semanticWeight"),includeLinked:v(e,"includeLinked"),titleExact:v(e,"titleExact"),phraseExact:v(e,"phraseExact"),highlight:v(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:v(e,"full"),...cE(e)};return na(c,e),c}function p3(e){let t=e.map(n=>n.trim()).filter(n=>n.length>0).join(" ");if(t.length===0)throw new h("Search query must not be empty",_.USAGE);return t}function m3(e){let t=r=>bt(e,Te(eu,r)),n={id:t("id"),op:t("op"),author:t("author"),from:t("from"),to:t("to"),limit:t("limit"),compact:e.full===!0||e.provenance===!0?!1:e.compact===!0||e.raw===!0?!0:void 0,...e.raw===!0||e.compact===!0||e.full===!0?{raw:!0}:{},unbounded:v(e,"unbounded"),provenance:v(e,"provenance"),provenanceSummary:v(e,"provenanceSummary"),harness:Array.isArray(e.harness)?e.harness:void 0,agentInstance:Array.isArray(e.agentInstance)?e.agentInstance:void 0,provenanceFilter:Array.isArray(e.provenanceFilter)?e.provenanceFilter:void 0};return Object.fromEntries(Object.entries(n).filter(([,r])=>r!==void 0))}var Fj=new Set(["","rows","ndjson","jsonl","true","1","yes","on"]),$j=new Set(["false","off","none","0"]);function g3(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(Fj.has(t))return!0;if($j.has(t))return!1}throw new h("Activity --stream accepts rows|ndjson|jsonl (or no value)",_.USAGE)}function _3(e){let t=s=>bt(e,Te(Hs,s)),n=s=>sE(e,Te(Hs,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 y3(e){let t=o=>bt(e,Te(Ws,o)),n=o=>sE(e,Te(Ws,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 jj(e){if(!e||typeof e!="object")return[];let t=e,n=new Set,r=a=>{if(typeof a!="string")return;let c=a.trim();c.length!==0&&n.add(c)};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,c)=>a.localeCompare(c))}async function h3(e,t){let n=Tr(process.cwd(),e.path),r=await Sd(n,jj(t),{background:!Kl()});e.profile&&r.warnings.length>0&&yl(`profile:search_refresh_warnings=${Pj(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{Uj as a,Ro as b,Y as c,Du as d,ue as e,G as f,D as g,_r as h,He as i,No as j,ia as k,Bj as l,Do as m,Lo as n,Po as o,Mo as p,Fo as q,$o as r,pE as s,mE as t,Kj as u,fe as v,_E as w,je as x,la as y,yE as z,sa as A,S as B,_ as C,Uo as D,h as E,P as F,bE as G,j as H,Fu as I,Jj as J,wE as K,Mu as L,$u as M,EE as N,AE as O,n1 as P,X as Q,vt as R,ie as S,c1 as T,qE as U,HE as V,WE as W,YE as X,XE as Y,pa as Z,ma as _,Ue as $,T1 as aa,ZE as ba,Ba as ca,st as da,ga as ea,ov as fa,Dn as ga,Yu as ha,Ln as ia,Vo as ja,Pn as ka,Go as la,O1 as ma,I1 as na,R1 as oa,Ho as pa,Wo as qa,N1 as ra,D1 as sa,L1 as ta,P1 as ua,Ko as va,hr as wa,_a as xa,Ju as ya,Yo as za,Qu as Aa,Zu as Ba,M1 as Ca,F1 as Da,ba as Ea,wa as Fa,Ev as Ga,wr as Ha,Jo as Ia,Er as Ja,cf as Ka,lf as La,jv as Ma,qv as Na,Qo as Oa,uf as Pa,Q1 as Qa,Tr as Ra,Z1 as Sa,At as Ta,Ae as Ua,Mn as Va,Ar as Wa,Fn as Xa,ff as Ya,Zo as Za,Qv as _a,eU as $a,Zv as ab,eT as bb,tU as cb,nU as db,tT as eb,rU as fb,B as gb,Pf as hb,Mf as ib,$f as jb,jf as kb,va as lb,Sa as mb,ka as nb,aU as ob,cU as pb,lU as qb,cT as rb,pf as sb,dU as tb,mf as ub,xa as vb,fT as wb,pT as xb,xr as yb,Ca as zb,Oa as Ab,Ia as Bb,Ra as Cb,Na as Db,ri as Eb,Da as Fb,bU as Gb,ne as Hb,se as Ib,Jt as Jb,wf as Kb,La as Lb,Ef as Mb,Pa as Nb,Ma as Ob,Fa as Pb,$a as Qb,ja as Rb,Ua as Sb,qa as Tb,Va as Ub,Ga as Vb,iA as Wb,mA as Xb,_A as Yb,_p as Zb,yp as _b,CA as $b,xz as ac,eS as bc,tS as cc,Pz as dc,vp as ec,nS as fc,rc as gc,iS as hc,sS as ic,Vz as jc,yi as kc,dS as lc,uS as mc,fS as nc,pS as oc,mS as pc,gS as qc,_S as rc,Ct as sc,yS as tc,hS as uc,zn as vc,bS as wc,hi as xc,Ur as yc,wS as zc,ES as Ac,me as Bc,bi as Cc,ze as Dc,oc as Ec,vS as Fc,TS as Gc,AS as Hc,SS as Ic,De as Jc,wi as Kc,zr as Lc,RS as Mc,LS as Nc,Zz as Oc,PS as Pc,MS as Qc,eq as Rc,xe as Sc,ge as Tc,lc as Uc,We as Vc,be as Wc,dk as Xc,qp as Yc,dc as Zc,vi as _c,uc as $c,Gp as ad,uk as bd,gk as cd,_k as dd,qn as ed,Kp as fd,mq as gd,Yp as hd,yk as id,gq as jd,an as kd,Xp as ld,bk as md,Ai as nd,Wr as od,xx as pd,cn as qd,Kr as rd,Le as sd,Ec as td,Rt as ud,xi as vd,Px as wd,Mx as xd,Ci as yd,xc as zd,Hq as Ad,Wq as Bd,Kq as Cd,zx as Dd,qx as Ed,Vx as Fd,Lc as Gd,Hx as Hd,rV as Id,aC as Jd,cC as Kd,Yr as Ld,$c as Md,jc as Nd,dC as Od,oV as Pd,uC as Qd,Uc as Rd,Xr as Sd,Ve as Td,N2 as Ud,D2 as Vd,zc as Wd,fV as Xd,ym as Yd,Pi as Zd,yV as _d,wm as $d,EC as ae,vC as be,hV as ce,Ye as de,bV as ee,xC as fe,IC as ge,MC as he,Tm as ie,SV as je,kV as ke,Jr as le,Gc as me,Bc as ne,xV as oe,UC as pe,CV as qe,OV as re,km as se,Wc as te,Me as ue,xm as ve,Fi as we,Qr as xe,Cm as ye,Om as ze,Im as Ae,Rm as Be,VC as Ce,GC as De,Nm as Ee,Zr as Fe,DV as Ge,Dm as He,Kc as Ie,lt as Je,BC as Ke,HC as Le,WC as Me,KC as Ne,YC as Oe,XC as Pe,Lm as Qe,JC as Re,Pm as Se,Yc as Te,Mm as Ue,Fm as Ve,Xc as We,eo as Xe,nl as Ye,rl as Ze,Zc as _e,to as $e,Ui as af,Um as bf,el as cf,zm as df,Kn as ef,Ym as ff,Jm as gf,Qm as hf,_O as if,dt as jf,JV as kf,tg as lf,vO as mf,QV as nf,rg as of,ig as pf,sg as qf,ag as rf,cg as sf,dg as tf,GO as uf,p2 as vf,HO as wf,fg as xf,m2 as yf,mg as zf,KO as Af,QO as Bf,_g as Cf,bg as Df,ft as Ef,vg as Ff,xg as Gf,yl as Hf,NI as If,ro as Jf,mt as Kf,Zn as Lf,$I as Mf,Qi as Nf,jI as Of,gt as Pf,_t as Qf,zI as Rf,er as Sf,Zi as Tf,oo as Uf,qI as Vf,VI as Wf,Tl as Xf,tr as Yf,Al as Zf,mn as _f,WI as $f,oG as ag,iG as bg,Sl as cg,KI as dg,ts as eg,Ug as fg,we as gg,Pt as hg,gn as ig,ER as jg,vR as kg,TR as lg,AR as mg,Rl as ng,SR as og,kR as pg,OR as qg,n_ as rg,ns as sg,_n as tg,LR as ug,QG as vg,MR as wg,o_ as xg,FR as yg,$R as zg,s_ as Ag,jR as Bg,UR as Cg,zR as Dg,qR as Eg,YR as Fg,QR as Gg,ZR as Hg,tN as Ig,nN as Jg,rN as Kg,sN as Lg,cB as Mg,lN as Ng,mB as Og,pN as Pg,gN as Qg,_N as Rg,yN as Sg,hN as Tg,Pl as Ug,EN as Vg,TB as Wg,AB as Xg,SB as Yg,kB as Zg,xB as _g,CB as $g,OB as ah,AN as bh,SN as ch,kN as dh,xN as eh,CN as fh,ON as gh,IN as hh,jB as ih,ls as jh,r0 as kh,jt as lh,Xe as mh,lo as nh,sr as oh,Z_ as ph,Kl as qh,g5 as rh,yD as sh,hD as th,bD as uh,Ql as vh,xD as wh,Ts as xh,ZD as yh,As as zh,yo as Ah,ho as Bh,bo as Ch,Ty as Dh,dL as Eh,Z5 as Fh,sd as Gh,Ay as Hh,_L as Ih,yL as Jh,iH as Kh,xs as Lh,Oy as Mh,ad as Nh,OL as Oh,IL as Ph,cH as Qh,Iy as Rh,dr as Sh,ld as Th,ud as Uh,Ns as Vh,bH as Wh,bd as Xh,Ls as Yh,Fy as Zh,Ps as _h,wd as $h,Ed as ai,vd as bi,Td as ci,Vy as di,Gy as ei,jy as fi,Sd as gi,XP as hi,mr as ii,aM as ji,cM as ki,lM as li,pM as mi,mM as ni,_M as oi,vM as pi,rh as qi,AM as ri,SM as si,kM as ti,QH as ui,eW as vi,Fs as wi,Nd as xi,ih as yi,oh as zi,OM as Ai,IM as Bi,sh as Ci,DM as Di,FM as Ei,jM as Fi,zM as Gi,qM as Hi,BM as Ii,WM as Ji,KM as Ki,oF as Li,zs as Mi,kh as Ni,LF as Oi,qW as Pi,v$ as Qi,T$ as Ri,A$ as Si,S$ as Ti,Zd as Ui,Bs as Vi,k$ as Wi,Hs as Xi,Ws as Yi,eu as Zi,bt as _i,Ks as $i,Ys as aj,tu as bj,nu as cj,Xs as dj,ru as ej,ou as fj,Js as gj,su as hj,au as ij,cu as jj,ab as kj,Qs as lj,cb as mj,lu as nj,lb as oj,du as pj,uu as qj,fu as rj,pu as sj,R$ as tj,mu as uj,gu as vj,N$ as wj,D$ as xj,ko as yj,L$ as zj,Zs as Aj,P$ as Bj,fb as Cj,pb as Dj,mb as Ej,gb as Fj,_b as Gj,yb as Hj,hb as Ij,bb as Jj,wb as Kj,Eb as Lj,vb as Mj,Tb as Nj,Ab as Oj,Sb as Pj,kb as Qj,xb as Rj,Cb as Sj,Ob as Tj,Tu as Uj,Ee as Vj,Au as Wj,hu as Xj,Ib as Yj,Rb as Zj,Nb as _j,Db as $j,Lb as ak,Pb as bk,Mb as ck,Fb as dk,$b as ek,jb as fk,Ub as gk,zb as hk,qb as ik,Vb as jk,Gb as kk,Bb as lk,M$ as mk,Hb as nk,Wb as ok,Kb as pk,Yb as qk,Xb as rk,Jb as sk,Qb as tk,Zb as uk,ew as vk,tw as wk,Su as xk,rw as yk,ow as zk,iw as Ak,sw as Bk,aw as Ck,cw as Dk,lw as Ek,dw as Fk,uw as Gk,fw as Hk,pw as Ik,mw as Jk,bu as Kk,hw as Lk,bw as Mk,ww as Nk,Ew as Ok,vw as Pk,Tw as Qk,wu as Rk,Aw as Sk,Sw as Tk,Eu as Uk,kw as Vk,xw as Wk,Cw as Xk,Ow as Yk,Iw as Zk,Gt as _k,Rw as $k,Nw as al,Dw as bl,Lw as cl,$$ as dl,ku as el,U$ as fl,Kw as gl,G$ as hl,Yw as il,Jw as jl,ej as kl,cj as ll,Iu as ml,tE as nl,nE as ol,lj as pl,fj as ql,Oj as rl,Y6 as sl,X6 as tl,J6 as ul,Q6 as vl,Z6 as wl,Nj as xl,e3 as yl,Dj as zl,t3 as Al,Lj as Bl,n3 as Cl,r3 as Dl,o3 as El,Pj as Fl,i3 as Gl,s3 as Hl,a3 as Il,c3 as Jl,l3 as Kl,d3 as Ll,u3 as Ml,f3 as Nl,p3 as Ol,m3 as Pl,g3 as Ql,_3 as Rl,y3 as Sl,h3 as Tl};
|
|
197
|
+
//# sourceMappingURL=chunk-TOFG2URD.js.map
|