@unbrained/pm-cli 2026.8.7 → 2026.8.8
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 +35 -0
- package/dist/cli/main.js +4 -3
- package/dist/cli/register-annotations.d.ts +11 -0
- package/dist/cli/register-annotations.js +195 -0
- package/dist/cli/register-history-author.js +7 -30
- package/dist/cli/register-mutation.js +25 -206
- package/dist/cli/runtime-compatibility-boundary.d.ts +17 -0
- package/dist/cli/runtime-compatibility-boundary.js +43 -0
- package/dist/cli-bundle/bundle-manifest.json +155 -691
- package/dist/cli-bundle/chunks/chunk-2ZMXX3Q6.js +2068 -0
- package/dist/cli-bundle/chunks/chunk-ALDHXLPS.js +3 -0
- package/dist/cli-bundle/chunks/chunk-CBLA33YK.js +8 -0
- package/dist/cli-bundle/chunks/chunk-GKA54IJM.js +5 -0
- package/dist/cli-bundle/chunks/chunk-KRY7SRUO.js +2 -0
- package/dist/cli-bundle/chunks/chunk-MNJ4NNSY.js +26 -0
- package/dist/cli-bundle/chunks/chunk-NUXRRNAB.js +77 -0
- package/dist/cli-bundle/chunks/chunk-OJPCFDDY.js +13 -0
- package/dist/cli-bundle/chunks/chunk-PFSD3DAN.js +194 -0
- package/dist/cli-bundle/chunks/chunk-QWRRFYK3.js +2 -0
- package/dist/cli-bundle/chunks/chunk-SQ7QZFQ6.js +2 -0
- package/dist/cli-bundle/chunks/{register-list-query-FJZCJ67O.js → register-list-query-WFZAMJHZ.js} +8 -8
- package/dist/cli-bundle/chunks/register-mutation-SOKKOTHQ.js +20 -0
- package/dist/cli-bundle/chunks/register-operations-5XQETS6E.js +2 -0
- package/dist/cli-bundle/chunks/register-setup-2HL5ZHMK.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-54EU2UVO.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-VZFU2R4M.js → chunk-5FLBTZJQ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-5GJ57YKN.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-HNL6IFGS.js → chunk-ANTMGYLI.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-CMDS3KYT.js +14 -0
- package/dist/cli-bundle/focused-chunks/{chunk-NBJKQP4S.js → chunk-DMKOMTTY.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-CIXVQPB7.js → chunk-F5B3HBEZ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-R2LEMEV5.js → chunk-FI6DWU2M.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-3K4XV2BF.js → chunk-FNOKJG6N.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-RW5IYD4J.js → chunk-FPDYXZBK.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-QHRTT7WT.js → chunk-GWI6YIKJ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-MHMTKV5V.js → chunk-HCUC62AB.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-MOTJFQ3F.js → chunk-HGNKPSCB.js} +12 -12
- package/dist/cli-bundle/focused-chunks/{chunk-4VJQTS3P.js → chunk-IAS7PMLG.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-TIKDBG4D.js → chunk-PL2EYDJK.js} +27 -27
- package/dist/cli-bundle/focused-chunks/chunk-SM2PJGP3.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-RPNYG5MO.js → chunk-TCSAPH33.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-U646T7Z6.js +18 -0
- package/dist/cli-bundle/focused-chunks/chunk-YKPE4PPY.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-YZEZAPJK.js → chunk-YSAHYUXX.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-73JUDYXT.js → chunk-ZOLDTUU7.js} +2 -2
- 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 +38 -38
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +1 -1
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +2 -1
- package/dist/cli.js +14 -4
- package/dist/core/output/output.js +9 -2
- package/dist/core/sentry/helpers.d.ts +10 -0
- package/dist/core/sentry/helpers.js +59 -4
- package/dist/core/shared/constants.d.ts +2 -0
- package/dist/core/shared/constants.js +4 -2
- package/dist/sdk/annotations.d.ts +40 -0
- package/dist/sdk/annotations.js +61 -9
- package/dist/sdk/author-attribution.d.ts +12 -0
- package/dist/sdk/author-attribution.js +73 -11
- package/dist/sdk/cli-contracts/command-exit-contracts.d.ts +118 -0
- package/dist/sdk/cli-contracts/command-exit-contracts.js +152 -0
- package/dist/sdk/cli-contracts/completeness.js +5 -3
- package/dist/sdk/cli-contracts/flag-contracts.js +5 -2
- package/dist/sdk/cli-contracts/runtime-contracts.d.ts +11 -0
- package/dist/sdk/cli-contracts/runtime-contracts.js +29 -2
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +15 -2
- package/dist/sdk/cli-contracts/tool-schema.d.ts +1 -1
- package/dist/sdk/cli-contracts/tool-schema.js +6 -3
- package/dist/sdk/comments.d.ts +7 -0
- package/dist/sdk/comments.js +2 -2
- package/dist/sdk/completion.js +9 -5
- package/dist/sdk/contracts.d.ts +1 -0
- package/dist/sdk/contracts.js +3 -2
- package/dist/sdk/environment/host-environment-errors.d.ts +27 -0
- package/dist/sdk/environment/host-environment-errors.js +124 -0
- package/dist/sdk/environment/project-runtime-compatibility.d.ts +65 -0
- package/dist/sdk/environment/project-runtime-compatibility.js +385 -0
- package/dist/sdk/environment/source-context.d.ts +23 -0
- package/dist/sdk/environment/source-context.js +29 -0
- package/dist/sdk/error-code-catalog.d.ts +6 -0
- package/dist/sdk/error-code-catalog.js +62 -8
- package/dist/sdk/generated-error-code-catalog.js +629 -3
- package/dist/sdk/governance/health.d.ts +11 -3
- package/dist/sdk/governance/health.js +5 -5
- package/dist/sdk/index.d.ts +7 -3
- package/dist/sdk/index.js +9 -5
- package/dist/sdk/learnings.d.ts +15 -0
- package/dist/sdk/learnings.js +2 -2
- package/dist/sdk/lifecycle/close-many.d.ts +6 -1
- package/dist/sdk/lifecycle/close-many.js +43 -5
- package/dist/sdk/lifecycle/update-many.d.ts +2 -1
- package/dist/sdk/lifecycle/update-many.js +29 -5
- package/dist/sdk/merge/index.d.ts +1 -1
- package/dist/sdk/merge/index.js +3 -3
- package/dist/sdk/merge/install.d.ts +21 -0
- package/dist/sdk/merge/install.js +50 -20
- package/dist/sdk/notes.d.ts +7 -0
- package/dist/sdk/notes.js +2 -2
- package/dist/sdk/read-output-contracts.js +83 -4
- package/dist/sdk/runtime.d.ts +1 -1
- package/dist/sdk/runtime.js +9 -25
- package/dist/sdk/test/execution.js +4 -2
- package/dist/sdk/test/parsers.js +5 -2
- package/dist/sdk/workspace-snapshot.d.ts +9 -0
- package/dist/sdk/workspace-snapshot.js +48 -16
- package/docs/AGENT_RUNTIME_PRIMITIVES.md +11 -4
- package/docs/README.md +1 -0
- package/docs/RELEASING.md +27 -2
- package/docs/SCRIPTING.md +27 -1
- package/docs/SDK_CONTEXT_INTEGRITY.md +66 -0
- package/docs/SDK_RUNTIME_BOUNDARIES.md +58 -0
- package/docs/SELF_DESCRIBING_CONTEXT_CONTRACTS.md +13 -0
- package/docs/TESTING.md +17 -0
- package/marketplace.json +2 -2
- package/package.json +5 -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 +529 -34
- package/dist/cli-bundle/chunks/append-7BXBFDGD.js +0 -2
- package/dist/cli-bundle/chunks/chunk-2AXF3VSK.js +0 -2
- package/dist/cli-bundle/chunks/chunk-2XS43CCV.js +0 -2
- package/dist/cli-bundle/chunks/chunk-3A6KWB72.js +0 -8
- package/dist/cli-bundle/chunks/chunk-3ISTDB42.js +0 -8
- package/dist/cli-bundle/chunks/chunk-4MTI7XOV.js +0 -5
- package/dist/cli-bundle/chunks/chunk-6BX5UDCN.js +0 -3
- package/dist/cli-bundle/chunks/chunk-6QPO7KLR.js +0 -2
- package/dist/cli-bundle/chunks/chunk-7MXHZHSQ.js +0 -5
- package/dist/cli-bundle/chunks/chunk-7ZPMJW4U.js +0 -2
- package/dist/cli-bundle/chunks/chunk-A6KGKEWT.js +0 -2
- package/dist/cli-bundle/chunks/chunk-AGYNSNCI.js +0 -2
- package/dist/cli-bundle/chunks/chunk-B4H7FEFH.js +0 -5
- package/dist/cli-bundle/chunks/chunk-B4KLBBMN.js +0 -2
- package/dist/cli-bundle/chunks/chunk-BXCSXK4J.js +0 -2
- package/dist/cli-bundle/chunks/chunk-CALJHNBL.js +0 -23
- package/dist/cli-bundle/chunks/chunk-CFIGP5LY.js +0 -2
- package/dist/cli-bundle/chunks/chunk-CHOQ2VAW.js +0 -2
- package/dist/cli-bundle/chunks/chunk-CS6MRHG7.js +0 -2
- package/dist/cli-bundle/chunks/chunk-CUGNQQKH.js +0 -2
- package/dist/cli-bundle/chunks/chunk-D4FPS43D.js +0 -164
- package/dist/cli-bundle/chunks/chunk-E2ZSLTOP.js +0 -2
- package/dist/cli-bundle/chunks/chunk-FB7G2HY2.js +0 -2
- package/dist/cli-bundle/chunks/chunk-H5Y5YE6A.js +0 -2
- package/dist/cli-bundle/chunks/chunk-H5Y6UV6E.js +0 -2
- package/dist/cli-bundle/chunks/chunk-H7KGWPDF.js +0 -2
- package/dist/cli-bundle/chunks/chunk-HFSD77TQ.js +0 -2
- package/dist/cli-bundle/chunks/chunk-HX2GTA6L.js +0 -2
- package/dist/cli-bundle/chunks/chunk-J2IEKAVR.js +0 -2
- package/dist/cli-bundle/chunks/chunk-JC6FKIFM.js +0 -2
- package/dist/cli-bundle/chunks/chunk-K44PYFXH.js +0 -2
- package/dist/cli-bundle/chunks/chunk-K4KGEEBT.js +0 -2
- package/dist/cli-bundle/chunks/chunk-KFLK5TRH.js +0 -21
- package/dist/cli-bundle/chunks/chunk-KL6IEBV2.js +0 -2
- package/dist/cli-bundle/chunks/chunk-KWQZDZSS.js +0 -2
- package/dist/cli-bundle/chunks/chunk-KZ4X3DGU.js +0 -3
- package/dist/cli-bundle/chunks/chunk-LD77HJMQ.js +0 -13
- package/dist/cli-bundle/chunks/chunk-LEPJJ6QC.js +0 -2
- package/dist/cli-bundle/chunks/chunk-ME2JJ4LA.js +0 -3
- package/dist/cli-bundle/chunks/chunk-NE5VRDAI.js +0 -2
- package/dist/cli-bundle/chunks/chunk-NFLJ3FHD.js +0 -2
- package/dist/cli-bundle/chunks/chunk-NG6OXIBR.js +0 -19
- package/dist/cli-bundle/chunks/chunk-NYIGHWQY.js +0 -8
- package/dist/cli-bundle/chunks/chunk-NZ75GNSA.js +0 -2
- package/dist/cli-bundle/chunks/chunk-PCJWJNC2.js +0 -2
- package/dist/cli-bundle/chunks/chunk-PD3225AM.js +0 -2
- package/dist/cli-bundle/chunks/chunk-PDEGKG7P.js +0 -2
- package/dist/cli-bundle/chunks/chunk-PIE5HBNA.js +0 -2
- package/dist/cli-bundle/chunks/chunk-PW2H7YJR.js +0 -56
- package/dist/cli-bundle/chunks/chunk-RSIC5OPE.js +0 -2
- package/dist/cli-bundle/chunks/chunk-TPKN3S7S.js +0 -2
- package/dist/cli-bundle/chunks/chunk-TPXAXTCO.js +0 -2
- package/dist/cli-bundle/chunks/chunk-UFWUJO4V.js +0 -2
- package/dist/cli-bundle/chunks/chunk-UQLZQVFW.js +0 -55
- package/dist/cli-bundle/chunks/chunk-VT3Z5G7D.js +0 -2
- package/dist/cli-bundle/chunks/chunk-WOD3WWUN.js +0 -2
- package/dist/cli-bundle/chunks/chunk-WSJEIGJF.js +0 -3
- package/dist/cli-bundle/chunks/chunk-WYNUU7ZW.js +0 -2008
- package/dist/cli-bundle/chunks/chunk-YGPNCCXZ.js +0 -2
- package/dist/cli-bundle/chunks/close-CMY3BAUG.js +0 -2
- package/dist/cli-bundle/chunks/close-many-SA4XZCTK.js +0 -2
- package/dist/cli-bundle/chunks/comments-EZ556ZD3.js +0 -2
- package/dist/cli-bundle/chunks/copy-ZSGPA52X.js +0 -2
- package/dist/cli-bundle/chunks/create-I5DVV4YG.js +0 -2
- package/dist/cli-bundle/chunks/delete-RL3JACSW.js +0 -2
- package/dist/cli-bundle/chunks/deps-S7UBCECS.js +0 -2
- package/dist/cli-bundle/chunks/docs-ZZNVBBYO.js +0 -2
- package/dist/cli-bundle/chunks/files-27C337VT.js +0 -2
- package/dist/cli-bundle/chunks/focus-5Z2SG7LU.js +0 -2
- package/dist/cli-bundle/chunks/history-compact-HJQK67CZ.js +0 -2
- package/dist/cli-bundle/chunks/history-redact-PWC6PDWA.js +0 -2
- package/dist/cli-bundle/chunks/history-repair-N3CY4WBF.js +0 -2
- package/dist/cli-bundle/chunks/learnings-4FH23XDT.js +0 -2
- package/dist/cli-bundle/chunks/profile-5Y5XXH5N.js +0 -2
- package/dist/cli-bundle/chunks/register-mutation-YGYPW3BL.js +0 -20
- package/dist/cli-bundle/chunks/register-operations-WMDSUMQF.js +0 -2
- package/dist/cli-bundle/chunks/register-setup-DL7FFABC.js +0 -2
- package/dist/cli-bundle/chunks/restore-6KYBV5BY.js +0 -2
- package/dist/cli-bundle/chunks/schema-EQGKBYXJ.js +0 -2
- package/dist/cli-bundle/chunks/update-QVTYOD6I.js +0 -2
- package/dist/cli-bundle/chunks/update-many-DJSBU525.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-2ECLECMK.js +0 -12
- package/dist/cli-bundle/focused-chunks/chunk-4EX25PXM.js +0 -8
- package/dist/cli-bundle/focused-chunks/chunk-DLTS3IHM.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-DQ6FKGL3.js +0 -14
- package/dist/cli-bundle/focused-chunks/chunk-JLG2C4EQ.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-ZJIMJHDB.js +0 -2
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import*as z from"node:fs/promises";import kn from"node:path";import Nu 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]="74d24458-0685-5354-b62f-5323ee72ffd6")}catch{}})();var Du=[10,25,50,100];async function vn(e){await z.mkdir(e,{recursive:!0})}async function ke(e){try{return await z.access(e),!0}catch{return!1}}async function ve(e){try{return await z.readFile(e,"utf8")}catch(t){if(He(t,"ENOENT"))return null;throw t}}async function Q(e,t){let n=kn.dirname(e);await vn(n);let r=kn.join(n,`.${kn.basename(e)}.${process.pid}.${Date.now()}.${Nu.randomBytes(4).toString("hex")}.tmp`);await z.writeFile(r,t,"utf8");try{await z.rename(r,e)}catch(o){if(process.platform==="win32"&&(He(o,"EPERM")||He(o,"EBUSY"))){let i=o;for(let s of Du){await new Promise(a=>setTimeout(a,s));try{await z.rename(r,e);return}catch(a){if(i=a,!He(a,"EPERM")&&!He(a,"EBUSY"))break}}try{await z.unlink(r)}catch{}throw i}if(He(o,"EXDEV")){try{await z.copyFile(r,e)}finally{try{await z.unlink(r)}catch{}}return}try{await z.unlink(r)}catch{}throw o}}async function Lt(e,t){let n=kn.dirname(e);await vn(n);let r=await z.open(e,"a");try{await r.writeFile(`${t}
|
|
2
|
-
`,"utf8")}finally{await r.close()}}async function $k(e){try{await z.unlink(e)}catch(t){if(!He(t,"ENOENT"))throw t}}function He(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="50ad61f1-6719-541c-b4e0-4a88468725cf")}catch{}})();var _e=["commands","renderers","hooks","schema","importers","search","parser","preflight","services"],Sn=2,po=Object.freeze({migration:"schema",validation:"schema"}),jk=Object.freeze({version:Sn,capabilities:[..._e],legacy_aliases:{...po}}),xn=["off","warn","enforce"],In=["off","warn","enforce"],Tn=["none","restricted","strict"],Ms=["block","warn"],An=["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"],$t=["output_format","error_format","help_format","lock_acquire","lock_release","history_append","item_store_write","item_store_delete","context_relevance","command_result"];function Cn(){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]="46d7e58b-d1b6-5f9d-86cb-76ca671ed127")}catch{}})();var yo=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"]}]),go=Object.freeze({draft_status:"draft",open_status:"open",in_progress_status:"in_progress",blocked_status:"blocked",close_status:"closed",canceled_status:"canceled"}),On=".agents/pm",Rn="settings.json",qk="Closed at creation via pm create",Pu=["","epics","features","tasks","chores","issues","schema","history","search","extensions","locks"],Mu=["decisions","events","reminders","milestones","meetings","plans"],Bk=[...Pu,...Mu],se={Epic:"epics",Feature:"features",Task:"tasks",Chore:"chores",Issue:"issues",Decision:"decisions",Event:"events",Reminder:"reminders",Milestone:"milestones",Meeting:"meetings",Plan:"plans"},Lu=["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"],ye=["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",...Lu,"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"],ho={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}},$u=["no active blocker","ready for planned execution sequencing","work completed","work is closed"],_o={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 Ls(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:[...$u],lifecycle_closure_like_blocked_reason_patterns:[..._o.blocked_reason],lifecycle_closure_like_resolution_patterns:[..._o.resolution],lifecycle_closure_like_actual_result_patterns:[..._o.actual_result],estimate_defaults_by_type:{}},governance:{preset:"minimal",...ho.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:yo.map(e=>({...e,aliases:Ls(e.aliases),roles:Ls(e.roles)})),fields:[],workflow:{...go},unknown_field_policy:"allow"},extensions:{enabled:[],disabled:[],policy:Cn()},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:""}}},Ft={metadata:{},body:""},b={SUCCESS:0,GENERIC_FAILURE:1,USAGE:2,NOT_FOUND:3,CONFLICT:4,DEPENDENCY_FAILED:5},Fu=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 Vk(e){let t=(e??"").trim().toLowerCase();if(t.length===0)return"unknown";let n=Fu[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]="c2c9251e-86bf-5a92-acdb-581e59d269d8")}catch{}})();var w=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 ju(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function Kk(e){return ju(e)??void 0}function Gk(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 Xk(e){return Array.isArray(e)&&e.every(t=>typeof t=="number"&&Number.isFinite(t))}function Fs(e){if(e instanceof Error){let t=e.message.trim();return t.length>0?t:e.name}return String(e)}function Nn(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 Yk(e){let t=Nn(e);return t===null||t<=0||!Number.isInteger(t)?null:t}function Jk(e,t,n){let r=Nn(e);return r===null||r<t||r>n?null:r}function Qk(e){return typeof e!="object"||e===null||Array.isArray(e)?null:e}function ut(e){return typeof e!="object"||e===null?null:e}function $s(e){return typeof e!="object"&&typeof e!="function"||e===null?null:e}function js(e){let t=$s(e);if(!t)return null;if(typeof t.activate=="function")return t;let n=$s(t.default);return typeof n?.activate=="function"?n:null}function Zk(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 Dn(e){let t=Math.ceil(e.size/2);for(let n of e.keys()){if(t===0)return;e.delete(n),t-=1}}import zu from"node:crypto";import{AsyncLocalStorage as Uu}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 bo=new Uu,zs=1024;function qu(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 ov(e,t){let n=qu(e);return bo.run({...n,clockReads:0,tokenReads:0},t)}function Us(){let e=bo.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 qs(e){let t=bo.getStore();if(t===void 0)return;if(!Number.isSafeInteger(e)||e<0||e>zs)throw new Error(`Reproducible token length must be an integer between 0 and ${zs}`);let n="";for(;n.length<e;){let r=zu.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 Bu=/^([+-]?)(\d+)([hdwm])$/i,Vu=/^[+-]?\d+[hdwm](?:[+-]\d+[hdwm])+$/i,Wu=/^(\d{4})(\d{2})(\d{2})$/,Hu=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,Ku=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})-(\d{2})(?:-(\d{2}))?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,Gu=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i;function Ke(){return Us()??new Date().toISOString()}function Re(e){return Number.isFinite(Date.parse(e))}var Xu=1e4,Pn=new Map;function Bs(e){let t=Pn.get(e);if(t!==void 0)return t;let n=Date.parse(e);return Pn.size>=Xu&&Dn(Pn),Pn.set(e,n),n}function W(e,t){let n=Bs(e),r=Bs(t);return Number.isFinite(n)&&Number.isFinite(r)&&n!==r?n-r:e.localeCompare(t)}function lv(e,t){return!(t.deadlineBefore&&(!e.deadline||W(e.deadline,t.deadlineBefore)>0)||t.deadlineAfter&&(!e.deadline||W(e.deadline,t.deadlineAfter)<0)||t.updatedAfter&&W(e.updated_at,t.updatedAfter)<0||t.updatedBefore&&W(e.updated_at,t.updatedBefore)>0||t.createdAfter&&W(e.created_at,t.createdAfter)<0||t.createdBefore&&W(e.created_at,t.createdBefore)>0)}function wo(e){return e?`.${e.slice(1).padEnd(3,"0").slice(0,3)}`:""}function Eo(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 Yu(e,t,n){n&&n!==t&&(e.includes(n)||e.push(n))}function Ju(e){let t=[],n=d=>Yu(t,e,d),r=Wu.exec(e);if(r){let[,d,l,f]=r;n(`${d}-${l}-${f}`)}let o=Hu.exec(e);if(o){let[,d,l,f,p,m,h,_,y]=o,T=h?`:${h}`:"";n(`${d}-${l}-${f}T${p}:${m}${T}${wo(_)}${Eo(y)}`)}let i=Ku.exec(e);if(i){let[,d,l,f,p,m,h]=i,_=p?`:${p}`:"";n(`${d}T${l}:${f}${_}${wo(m)}${Eo(h)}`)}let s=Gu.exec(e);if(s){let[,d,l,f,p,m,h]=s,_=p?`:${p}`:"";n(`${d}T${l}:${f}${_}${wo(m)}${Eo(h)}`)}let a=10,c=e.slice(0,a);if(Zu(c)){let d=a;for(;d<e.length&&ef(e[d]);)d+=1;d<e.length&&n(`${c}T${e.slice(d)}`)}return t}function Qu(e){let t=Date.parse(e);if(Number.isFinite(t))return t;for(let n of Ju(e)){let r=Date.parse(n);if(Number.isFinite(r))return r}return Number.NaN}function Zu(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 ef(e){return e?e===" "||e===" "||e===`
|
|
3
|
-
`||e==="\r"||e==="\f"||e==="\v":!1}function Vs(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}var tf=["January","February","March","April","May","June","July","August","September","October","November","December"],nf=/^(\d{4})-(\d{2})-(\d{2})/,rf=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/;function of(e,t,n){let r=nf.exec(t)??rf.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 w(`Invalid ${a} value "${e}". Month "${r[2]}" is out of range \u2014 use a month between 01 and 12.`,b.USAGE);let c=Vs(o,i-1);if(s<1||s>c)throw new w(`Invalid ${a} value "${e}". ${tf[i-1]} ${o} has ${c} days, so day "${r[3]}" does not exist. Use a real YYYY-MM-DD calendar date.`,b.USAGE)}function sf(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,Vs(i,s));return n.setUTCFullYear(i,s,a),n}function uv(e,t=new Date,n="deadline"){let r=e.trim();if(r.toLowerCase()==="now")return t.toISOString();let o=Bu.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 sf(t,a).toISOString();let d=c==="h"?3600*1e3:c==="d"?1440*60*1e3:10080*60*1e3;return new Date(t.getTime()+a*d).toISOString()}of(e,r,n);let i=Qu(r);if(!Number.isFinite(i)){let s=n.trim().length>0?n.trim():"deadline",a=Vu.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 w(`Invalid ${s} value "${e}". ${a}`,b.USAGE)}return new Date(i).toISOString()}(function(){try{var e=typeof window<"u"?window:typeof 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 af=Object.freeze({string:"string",number:"number",int:"number",integer:"number",float:"number",boolean:"boolean",bool:"boolean"});function Ws(e){return typeof e!="string"?null:af[e.trim().toLowerCase()]??null}function Hs(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 Ks(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())}import ft from"node:fs";import Se from"node:path";import{fileURLToPath as cf}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 df="@unbrained/pm-cli";function lf(e){try{return JSON.parse(ft.readFileSync(e,"utf8")).name===df}catch{return!1}}function uf(e){let t=ft.existsSync(e)&&ft.statSync(e).isDirectory()?Se.resolve(e):Se.dirname(Se.resolve(e));for(;;){let n=Se.join(t,"package.json");if(ft.existsSync(n)&&lf(n))return t;let r=Se.dirname(t);if(r===t)return;t=r}}function Mn(e,t=[]){let n=cf(e),r=uf(n);return r||Se.resolve(Se.dirname(n),...t)}function gv(e,t=[]){try{let n=Se.join(Mn(e,t),"package.json");if(!ft.existsSync(n))return;let r=JSON.parse(ft.readFileSync(n,"utf8"));return typeof r.version=="string"&&r.version.trim().length>0?r.version:void 0}catch{return}}function hv(e=process.env,t="PM_CLI_PACKAGE_ROOT",n,r=[]){let o=e[t];return typeof o=="string"&&o.trim().length>0?Se.resolve(o.trim()):n?Mn(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]="2a2072c1-f4a7-579e-ac11-4c75758d76d3")}catch{}})();var ff=["Epic","Feature","Task","Chore","Issue","Decision","Event","Reminder","Milestone","Meeting","Plan"],Gs=ff,mt=["draft","open","in_progress","blocked","closed","canceled"],Ln=["draft","active","blocked","terminal","terminal_done","terminal_canceled","default_open","default_close","default_cancel"],pt=["string","number","boolean","string_array","array","object"],$n=["create","update","update_many","list","search","calendar","context"],Fn=["allow","warn","reject"],wv=["blocks","parent","child","parent_child","child_of","related","related_to","discovered_from","blocked_by","incident_from","epic","implements","supersedes","task","verifies"],Ev=["project","global"],kv=["low","medium","high","critical"],jn=["low","medium","high","critical"],zn=["low","medium","high"];var Xs=["minimal","default","strict","custom"],vv=["none","warn","strict"],Sv=["progressive","strict"],xv=["off","warn","strict"],Iv=["off","warn","strict"];var Un=["daily","weekly","monthly","yearly"],jt=["mon","tue","wed","thu","fri","sat","sun"];function ko(e){return jt.indexOf(e)}var Tv=["draft","research","review","approved","executing","paused","completed","superseded"],Ys=["pending","in_progress","completed","blocked","skipped","superseded"],Av=["codex","claude-code","cursor","generic"],Cv=["related","blocks","blocked_by","depends_on","discovered_from","implements","verifies","supersedes"],Ov=["brief","standard","deep","full"],Rv=["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 gf 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 Ne(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function mf(e){let t=e.key.trim();if(t.length===0)return null;let n=Ne(e.aliases),r=e.description?.trim();return{key:t,values:Ne(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 pf=e=>e,Qs=e=>{let t=e.trim().toLowerCase();return t==="create"||t==="update"?t:null};function _f(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 yf(e,t){let n=new Map;for(let r of e??[]){let o=_f(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 Js(e,t){return t?Ne(e):void 0}function vo(e){let t=e?.trim();return t&&t.length>0?t:void 0}function qn(e,t={}){let n=t.resolvePolicyCommand??pf,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=Ne(e.aliases),d=(e.options??[]).map(f=>mf(f)).filter(f=>f!==null).sort((f,p)=>f.key.localeCompare(p.key)),l=yf(e.command_option_policies,n);return{name:r,description:vo(e.description),default_status:vo(e.default_status),folder:vo(e.folder),aliases:c.length>0?c:void 0,required_create_fields:Js(e.required_create_fields,o),required_create_repeatables:Js(e.required_create_repeatables,i),options:s?d:void 0,command_option_policies:a?l: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 hf=["title","description","status","priority","tags","body","deadline","estimatedMinutes","acceptanceCriteria","author","message","assignee"],bf=["dep","comment","note","learning","file","test","doc"],ea=["deadline","estimatedMinutes","acceptanceCriteria","definitionOfReady","order","goal","objective","value","impact","outcome","whyNow","assignee","parent","reviewer","risk","confidence","sprint","release","blockedBy","blockedReason","unblockNote","reporter","severity","environment","reproSteps","resolution","expectedResult","actualResult","affectedVersion","fixedVersion","component","regression","customerImpact"],wf=["title","description","type","status","priority","tags","body",...ea,"author","message","dep","comment","note","learning","file","test","doc","reminder","event","typeOption","field"],Ef=["title","description","body","status","closeReason","priority","type","tags",...ea,"author","message","comment","note","learning","file","test","doc","reminder","event","typeOption","field","ownershipMetadataBypass","ownershipDependencyBypass","force"],ta={"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"},kf={...ta},vf={...ta},na=[["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"]],ra=[["comment","--comment"],["note","--note"],["learning","--learning"],["file","--file"],["test","--test"],["doc","--doc"],["reminder","--reminder"],["event","--event"],["typeOption","--type-option"]];function oa(e){return Object.fromEntries(e)}var Sf=oa([["title","--title"],["description","--description"],["type","--type"],["status","--status"],["priority","--priority"],["tags","--tags"],["body","--body"],...na,["author","--author"],["message","--message"],["dep","--dep"],...ra]),xf=oa([["title","--title"],["description","--description"],["body","--body"],["status","--status"],["closeReason","--close-reason"],["priority","--priority"],["type","--type"],["tags","--tags"],...na,...ra,["author","--author"],["message","--message"],["force","--force"]]);function If(e){return e.trim().replace(/^--+/,"").toLowerCase()}function Tf(e){return e==="create"?wf:Ef}function Af(e){return e==="create"?kf:vf}function ia(e,t){let n=If(t);if(n.length===0)return;let r=Af(e)[n];return r||Tf(e).find(o=>o.toLowerCase()===n)}function zv(e,t){return(e==="create"?Sf:xf)[t]??`--${t.replace(/([A-Z])/g,"-$1").toLowerCase()}`}function xo(e){let t=Of(e);return t.length===0?"items":t.endsWith("s")?t:`${t}s`}function Cf(e){let t=e.trim(),r=t.replaceAll("\\","/").replace(/^\/+/,""),o=gf.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 Of(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 Rf(e){return qn(e,{resolvePolicyCommand:Qs})}function zt(e,t){let n=e[t];return Array.isArray(n)?n.filter(r=>typeof r=="string"):void 0}function Nf(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:zt(t,"values")??[],required:t.required===void 0?void 0:!!t.required,aliases:zt(t,"aliases"),description:typeof t.description=="string"?t.description:void 0}}function Df(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 Pf(e){if(Array.isArray(e.options))return e.options.map(t=>Nf(t)).filter(t=>t!==null)}function Mf(e){if(Array.isArray(e.command_option_policies))return e.command_option_policies.map(t=>Df(t)).filter(t=>t!==null)}function Lf(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:zt(t,"aliases"),required_create_fields:zt(t,"required_create_fields"),required_create_repeatables:zt(t,"required_create_repeatables"),options:Pf(t),command_option_policies:Mf(t)}}function $f(e,t){return e.required_create_fields?Ne(e.required_create_fields):t?.required_create_fields??[]}function Ff(e,t){return e.required_create_repeatables?Ne(e.required_create_repeatables):t?.required_create_repeatables??[]}function jf(e,t){return e.options?e.options:t?.options?[...t.options]:[]}function zf(e,t){return e.command_option_policies?e.command_option_policies:t?.command_option_policies?[...t.command_option_policies]:[]}function Uf(e,t){let n=t?.name??e.name,r=e.description??t?.description,o=e.default_status??t?.default_status,i=Cf(e.folder??t?.folder??xo(n)),s={name:n,folder:i,aliases:Ne([...t?.aliases??[],...e.aliases??[]]),required_create_fields:$f(e,t),required_create_repeatables:Ff(e,t),options:jf(e,t),command_option_policies:zf(e,t)};return r&&(s.description=r),o&&(s.default_status=o),s}function Zs(e,t){for(let n of e){let r=Rf(n);if(!r)continue;let o=r.name.toLowerCase(),i=t.get(o);t.set(o,Uf(r,i))}}function qf(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=Lf(o);i&&t.push(i)}}return t}function sa(e,t=null){let n=new Map;for(let c of Gs)n.set(c.toLowerCase(),{name:c,folder:se[c],aliases:[],required_create_fields:[...hf],required_create_repeatables:[...bf],options:[],command_option_policies:[]});Zs(e.item_types?.definitions??[],n),Zs(qf(t),n);let r=[...n.values()].sort((c,d)=>c.name.localeCompare(d.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 d of c.aliases)i[d.toLowerCase()]=c.name}let a=[...new Set(r.map(c=>c.folder))].sort((c,d)=>c.localeCompare(d));return{types:r.map(c=>c.name),folders:a,type_to_folder:s,by_type:o,alias_to_type:i}}function Bf(e,t){if(e!==void 0)return t.alias_to_type[e.trim().toLowerCase()]}function Vf(e,t){let n=Bf(e,t);if(n)return t.by_type[n]}function Wf(e,t,n,r){for(let o of r){let i=ia(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 So(e,t,n){if(n){e.add(t);return}e.delete(t)}function Hf(e,t,n,r){let o=ia(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&&So(e.required,o,r.required),r.visible!==void 0&&So(e.hidden,o,!r.visible),r.enabled!==void 0&&So(e.disabled,o,!r.enabled)}function Kf(e,t,n){for(let r of t.command_option_policies)r.command===n&&Hf(e,t,n,r)}function Gf(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 Uv(e,t,n){let r=[],o=new Set,i=new Set,s=new Set,a={required:o,hidden:i,disabled:s,errors:r};return Wf(a,e,t,n),Kf(a,e,t),Gf(a,e,t),{required:[...o],hidden:[...i].sort((c,d)=>c.localeCompare(d)),disabled:[...s].sort((c,d)=>c.localeCompare(d)),errors:r}}function Xf(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 Yf(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=Vf(e,n);if(!r)return{normalized:void 0,errors:[`Unknown type "${e}"`]};let o=[],i=Xf(r),s={};for(let[c,d]of Object.entries(t??{})){let l=c.trim(),f=d.trim();if(l.length===0){o.push("type option keys must not be empty");continue}if(f.length===0){o.push(`type option "${l}" must not be empty`);continue}let p=i.get(l.toLowerCase());if(!p){let h=r.options.map(_=>_.key).join(", ");o.push(r.options.length>0?`Unknown type option "${l}" for type "${r.name}". Allowed: ${h}`:`Type "${r.name}" does not define any configurable type options`);continue}let m=Yf(p,f,o);m!==void 0&&(s[p.key]=m)}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,d)=>c.localeCompare(d));return a.length===0?{normalized:void 0,errors:o}:{normalized:Object.fromEntries(a.map(c=>[c,s[c]])),errors:o}}import{readFileSync as Jf,readdirSync as Qf,statSync as Zf}from"node:fs";import em from"node:os";import A 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 tm={json_markdown:".md",toon:".toon"},nm={".md":"json_markdown",".toon":"toon"},rm=new Set([".git","coverage","dist","node_modules"]),Bn=[".md",".toon"];function Ut(e){try{return Zf(e),!0}catch{return!1}}function aa(e){try{let t=JSON.parse(Jf(e,"utf8"));return typeof t!="object"||t===null||Array.isArray(t)?!1:"id_prefix"in t||"item_format"in t}catch{return!1}}function om(e){let t=A.resolve(e);for(;;){let n=A.join(t,On),r=A.join(n,Rn);if(Ut(r))return n;let o=A.join(t,Rn);if(Ut(o)&&aa(o))return t;let i=A.dirname(t);if(i===t)return;t=i}}function im(e){return om(e)??A.resolve(e,On)}function Xv(e,t){let n=t?A.resolve(t):void 0;try{return Qf(A.resolve(e),{withFileTypes:!0}).filter(r=>r.isDirectory()&&!rm.has(r.name)).map(r=>A.join(A.resolve(e),r.name)).filter(r=>r!==n).filter(r=>Ut(Ge(r))).filter(r=>aa(Ge(r))).sort((r,o)=>r.localeCompare(o))[0]}catch{return}}function Yv(e,t){let n=process.env.PM_PATH,r=t?.trim()||n?.trim();if(r){let o=A.resolve(e,r);if(!Ut(Ge(o))){let i=A.join(o,On);if(Ut(Ge(i)))return i}return o}return im(e)}function Jv(e){let t=A.resolve(e),n=A.dirname(t);return A.basename(t)==="pm"&&A.basename(n)===".agents"?A.dirname(n):t}function ca(e){let t=process.env.PM_GLOBAL_PATH?.trim(),n=t&&t.length>0?t:A.join(em.homedir(),".pm-cli");return A.resolve(e,n)}function Ge(e){return A.join(e,Rn)}function sm(e,t,n=se){let r=n[t]??xo(t);return A.join(e,r)}function Io(e,t,n,r="toon",o=se){return A.join(sm(e,t,o),`${n}${tm[r]}`)}function To(e){let t=e.replaceAll("\\","/"),n=A.posix.extname(t).toLowerCase();return nm[n]??null}function qt(e,t){return A.join(e,"history",`${t}.jsonl`)}function da(e,t){return A.join(e,"locks",`${t}.lock`)}function am(e){return A.join(e,"runtime")}function Vn(e){return A.join(am(e),"test-runs")}function cm(e){return A.join(Vn(e),"runs")}function Qv(e,t){return A.join(cm(e),`${t}.json`)}function dm(e){return A.join(Vn(e),"stdout")}function lm(e){return A.join(Vn(e),"stderr")}function Zv(e,t){return A.join(dm(e),`${t}.log`)}function eS(e,t){return A.join(lm(e),`${t}.log`)}function um(e){return A.join(Vn(e),"results")}function tS(e,t){return A.join(um(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]="294d43fb-b6e8-5a5f-91fe-73ba21075bf5")}catch{}})();function _t(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 d=s[0];for(let l=1;l<=t.length;l+=1){let f=e[c-1]===t[l-1]?0:1,p=i[l-1]+f,m=s[l-1]+1,h=i[l]+1,_=Math.min(p,m,h);c>1&&l>1&&e[c-1]===t[l-2]&&e[c-2]===t[l-1]&&(_=Math.min(_,o[l-2]+1)),s[l]=_,_<d&&(d=_)}if(d>n)return null;for(let l=0;l<r;l+=1)o[l]=i[l],i[l]=s[l]}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]="a89f0df7-e280-5ce4-8515-1f107a4aeaab")}catch{}})();var fm=[{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 Kn(e){return e.trim().toLowerCase().replaceAll("-","_")}function mm(e){if(e===void 0)return;let t=Kn(e);if(!/^[a-z][a-z0-9_]*$/.test(t))throw new TypeError(`Invalid inverse relationship kind: ${e}`);return t}function Co(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)Co(n,t);return Object.freeze(e)}for(let n of Object.values(e))Co(n,t);return Object.freeze(e)}function pm(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 _m(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 ym(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=Kn(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 gm(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 hm(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 Oo=class{#e=new Map;#n=new Map;constructor(t=fm){for(let n of t)this.register(n)}register(t){let n=ym(t);if(gm(t,n),hm(t,n),pm(t,n),_m(t,n),this.#e.has(n)||this.#n.has(n))throw new TypeError(`Relationship kind already registered: ${n}`);let r=mm(t.inverse),o=[...new Set((t.aliases??[]).map(Kn))].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?Co(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=Kn(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 Ro(){return new Oo}var Bt=Ro();function oS(e,t=Bt){return t.resolve(e)?.ordering===!0}function bm(e,t,n,r=Bt){let o=Vt(e),i=Vt(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 Wn(e,t){return e.source.localeCompare(t.source)||e.target.localeCompare(t.target)||e.kind.localeCompare(t.kind)}function wm(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=bm(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 Hn(e,t,n){let r=e.get(t);r?r.push(n):e.set(t,[n])}function Vt(e){return typeof e=="string"?e.trim():""}function Ao(e,t){let n=Vt(e);return n&&t.has(n)?n:void 0}function Em(e,t,n){let r=[t],o=t;for(;o!==e;)o=n.get(o),r.push(o);return r.reverse()}var la=class e{#e;#n;#o;#r;#s=new Map;#a=new Map;constructor(t,n,r=Bt){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}=wm(i,this.#n,r);o.set(a,s)}this.#r=Object.freeze([...o.values()].sort(Wn));for(let i of this.#r)Hn(this.#s,i.source,i),Hn(this.#a,i.target,i),r.require(i.kind).direction==="undirected"&&(Hn(this.#s,i.target,i),Hn(this.#a,i.source,i))}static fromItems(t,n=Bt){let r=new Set(t.map(i=>Vt(i.id)).filter(Boolean)),o=[];for(let i of t){let s=Vt(i.id);if(!s)continue;let a=Ao(i.parent,r);a&&o.push({source:s,target:a,kind:"parent"});let c=Ao(i.blocked_by,r);c&&o.push({source:s,target:c,kind:"blocked_by"});for(let d of i.dependencies??[]){let l=Ao(d.id,r);l&&n.resolve(d.kind)&&o.push({source:s,target:l,kind:d.kind,createdAt:d.created_at,author:d.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],d=a===void 0?c:c===void 0||Wn(a,c)<=0?a:c;o.at(-1)!==d&&o.push(d),a===d&&(i+=1),c===d&&(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)||Wn(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(m=>this.#e.require(m).kind)):void 0,o=n.direction??"outgoing",i=n.limit??Number.POSITIVE_INFINITY,s=n.maxDepth??Number.POSITIVE_INFINITY,a=new Set([t]),c=[],d=[{id:t,depth:0}],l=0,f=0,p=!1;e:for(let m=0;m<d.length;m+=1){n.signal?.throwIfAborted();let h=d[m];l+=1;let _=this.#t(h.id,o,r);if(f+=_.length,h.depth>=s){_.some(y=>!a.has(y.id))&&(p=!0);continue}for(let y of _)if(!a.has(y.id)){if(c.length>=i){p=!0;break e}a.add(y.id),c.push(y.id),d.push({id:y.id,depth:h.depth+1})}}return{value:c,meta:{visitedNodes:l,inspectedEdges:f,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(m=>this.#e.require(m).kind)):void 0,i=r.direction??"outgoing",s=r.maxDepth??Number.POSITIVE_INFINITY,a=[{id:t,depth:0}],c=new Map,d=new Set([t]),l=0,f=0,p=!1;for(let m=0;m<a.length;m+=1){r.signal?.throwIfAborted();let h=a[m];l+=1;let _=this.#t(h.id,i,o);if(f+=_.length,h.depth>=s){_.some(y=>!d.has(y.id))&&(p=!0);continue}for(let y of _)if(!d.has(y.id)){if(c.set(y.id,h.id),y.id===n)return{value:Em(t,n,c),meta:{visitedNodes:l,inspectedEdges:f,truncated:!1}};d.add(y.id),a.push({id:y.id,depth:h.depth+1})}}return{value:[],meta:{visitedNodes:l,inspectedEdges:f,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 d of this.#s.get(c)??[])i.has(d.source)&&i.has(d.target)&&this.#c(d,s)&&a.add(d);return{value:{nodes:o,edges:[...a].sort(Wn)},meta:r.meta}}};function iS(e,t,n=Bt){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 Wt(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function De(e){return _e.includes(e)}function ua(e){let t=e.trim().toLowerCase();return De(t)?t:null}function fa(e){return e.filter(t=>!De(t))}function No(e){let t=e.trim().toLowerCase();return t.length===0?null:po[t]??null}function ma(e){let t=Wt([...e].map(i=>i.toLowerCase())),n=[],r=[];for(let i of t){let s=No(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:Wt(n),legacy_aliases:o}}function km(e){let t=e.trim().toLowerCase();if(t.length===0)return null;let n=No(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 _e){let a=_t(t,s,r);a!==null&&a<i&&(i=a,o=s)}return o}function pa(e,t,n){let r=_e.join(","),o=km(n)??"none";return`extension_capability_unknown:${e}:${t}:${n}:allowed=${r}:suggested=${o}`}function _a(e,t,n){let r=n.map(o=>`${o.alias}>${o.target}`).join(",");return`extension_capability_legacy_alias:${e}:${t}:aliases=${r}`}function vm(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(m=>m.trim()).filter(m=>m.length>0),d=No(o),f=(s==="none"?void 0:s)??d??void 0;return{layer:a,name:r,capability:o,allowed_capabilities:c,capability_contract_version:Sn,suggested_capability:f,suggestion_source:f?d===f?"legacy_alias":"nearest_match":void 0,legacy_alias_target:d??void 0}}function Sm(e){let t=/^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(e.trim());if(!t)return[];let[,n,r,o]=t,i=n,s=[..._e],a=[];for(let c of o.split(",")){let[d,l]=c.split(">"),f=d?.trim(),p=l?.trim().toLowerCase();!f||!p||!De(p)||a.push({layer:i,name:r,capability:f,allowed_capabilities:s,capability_contract_version:Sn,suggested_capability:p,suggestion_source:"legacy_alias",legacy_alias_target:p})}return a}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="baa8b608-7f1e-5382-abe3-b1af79e46da4")}catch{}})();function Ht(){return{beforeCommand:[],beforeMutation:[],afterCommand:[],onWrite:[],onRead:[],onIndex:[]}}function Do(){return{overrides:[],handlers:[]}}function Po(){return{overrides:[]}}function Mo(){return{overrides:[]}}function Lo(){return{overrides:[]}}function $o(){return{overrides:[]}}function Fo(){return{commands:[],flags:[],item_fields:[],item_types:[],relationship_kinds:[],migrations:[],profiles:[],importers:[],exporters:[],search_providers:[],vector_store_adapters:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2f268c53-f096-5eed-9ddb-01fed4839ae5")}catch{}})();function $(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function xm(){return{json:!1,quiet:!1,noExtensions:!1,profile:!1}}function Z(e){return e?C(e):{}}function ee(e){return e?C(e):xm()}function C(e){return structuredClone(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2c4e3831-6644-5db3-a28b-1c6a131da2e1")}catch{}})();var Im=new Set(["commands","command_overrides","command_handlers","flag_commands","parser_overrides"]),Tm=["commands","command_overrides","command_handlers","hooks","flag_commands","item_types","item_fields","relationship_kinds","migrations","profiles","importers","exporters","search_providers","vector_store_adapters","parser_overrides","service_overrides","renderer_overrides"];function Am(e,t){for(let n of Tm){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=>Im.has(n)?$(i):i.trim()).filter(i=>i.length>0);t[n]=[...new Set(o)].sort((i,s)=>i.localeCompare(s))}return!0}function Cm(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=>$(o)))].sort((o,i)=>o.localeCompare(i)),result_discriminator:r.result_discriminator})}return t.sort((n,r)=>n.format.localeCompare(r.format))}function Om(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=>$(o)))].filter(o=>o.length>0).sort((o,i)=>o.localeCompare(i))})}return t}function jo(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(!Am(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=Cm(o);if(s===null)return null;n.renderer_ownership=s}let i=t.preflight_ownership;if(i!==void 0){let s=Om(i);if(s===null)return null;n.preflight_ownership=s}return n}function mS(e){return{schema_version:1,commands:e.commands,command_overrides:e.command_overrides,command_handlers:e.command_handlers,hooks:e.hooks,flag_commands:e.flag_commands,item_types:e.item_types,item_fields:e.item_fields,...e.relationship_kinds?{relationship_kinds:e.relationship_kinds}:{},migrations:e.migrations,profiles:e.profiles,importers:e.importers,exporters:e.exporters,search_providers:e.search_providers,vector_store_adapters:e.vector_store_adapters,parser_overrides:e.parser_overrides,service_overrides:e.service_overrides,renderer_overrides:e.renderer_overrides,...e.renderer_ownership?{renderer_ownership:e.renderer_ownership}:{},preflight_overrides:e.preflight_overrides,...e.preflight_ownership?{preflight_ownership:e.preflight_ownership}:{}}}import Rm 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 Nm(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 Dm(e){let t=Object.keys(e).sort(),n={};for(let r of t){let o=e[r];o!==void 0&&(n[r]=Gn(o))}return n}function Gn(e){let t=Nm(e);if(t!==void 0)return t;if(Array.isArray(e))return e.map(r=>Gn(r));if(e instanceof Date)return e.toISOString();let n=e;if(typeof n.toJSON=="function"){let r=n.toJSON();if(r!==e)return Gn(r)}return Dm(e)}function ae(e){return JSON.stringify(Gn(e))}function ya(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 Pm(e,t){if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.toString()===t.toString()}function Mm(e,t){if(e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime()}function Lm(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(!ya(o,n,r,te))return!1;return!0}function $m(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(!ya([o,i],n,r,([a,c],[d,l])=>te(a,d)&&te(c,l)))return!1;return!0}function Fm(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)=>te(n,t[r]))}function jm(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]||!te(e[i],t[i]))return!1}return!0}var zm=[Pm,Mm,Lm,$m,Fm];function te(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 zm){let r=n(e,t);if(r!==void 0)return r}return jm(e,t)}function Xe(e){return Rm.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 Um=5e3;async function Kt(e,t,n){let r=[];for(let o of e)try{await o.run(C(n))}catch{r.push(`extension_hook_failed:${o.layer}:${o.name}:${t}`)}return r}async function qm(e,t){return Kt(e.beforeCommand,"beforeCommand",t)}function Bm(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 w(`Extension mutation guard ${t.name} returned an invalid decision.`,b.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 w(`Extension mutation guard ${t.name} returned an invalid denial.`,b.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 w(s||`Extension mutation guard ${t.name} denied ${n}.`,b.CONFLICT,{code:o,reason:`${t.layer}:${t.name}`,nextSteps:[i]})}async function zo(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:C(t.before),after:t.after===null?null:C(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 w(`Extension mutation guard ${n.name} timed out before ${t.operation}.`,b.CONFLICT,{code:"extension_mutation_guard_timed_out",reason:`${n.layer}:${n.name}`,nextSteps:["Fix or disable the stalled extension guard, then retry the mutation."]}))},Um),o.unref?.()})])}catch(i){throw i instanceof w?i:new w(`Extension mutation guard ${n.name} failed before ${t.operation}.`,b.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)}Bm(r,n,t.operation)}}async function Vm(e,t){return Kt(e.afterCommand,"afterCommand",t)}async function Uo(e,t){return Kt(e.onWrite,"onWrite",t)}async function qo(e,t){return Kt(e.onRead,"onRead",t)}async function Bo(e,t){return Kt(e.onIndex,"onIndex",t)}function Wm(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 Xn(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 Hm(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 Vo(e,t){let n=$(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:C(t.args),options:C(t.options),global:C(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",Hm(o)],["errorCode",Xn(o,"code")],["remediation",Xn(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:Wm(o),...Object.fromEntries([["errorCode",Xn(o,"code")],["remediation",Xn(o,"remediation")]].filter(s=>s[1]!==void 0))}}}async function Wo(e,t){let n=$(t.command);if(n.length===0)return{overridden:!1,context:{command:n,args:C(t.args),options:Z(t.options),global:ee(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:C(t.args),options:Z(t.options),global:ee(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:C(t.args),options:Z(t.options),global:ee(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)?C(o.args):C(t.args),s=o.options?Z(o.options):Z(t.options),a=o.global?ee(o.global):ee(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:C(t.args),options:Z(t.options),global:ee(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 Ho(e,t){let n={command:$(t.command),args:C(t.args),options:Z(t.options),global:ee(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=C(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:C(n.args),options:Z(n.options),global:ee(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:C(r)}))??{},s={command:n.command,args:Array.isArray(i.args)?C(i.args):n.args,options:i.options?Z(i.options):n.options,global:i.global?ee(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 ga(e){return{handled:!1,result:e.payload,warnings:[]}}function ha(e,t){return[...e.overrides].reverse().filter(n=>n.service===t)}function ba(e){return{service:e.service,command:e.command?$(e.command):void 0,args:e.args?C(e.args):void 0,options:e.options?Z(e.options):void 0,global:e.global?ee(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:C(e.payload)}}function Km(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 wa(e,t){return Km(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 Ea(e,t,n){return t.service==="output_format"&&typeof e=="object"&&e!==null&&te(e,n.payload)}function Ko(e,t){let n=ha(e,t.service);if(n.length===0)return ga(t);let r=[];for(let o of n)try{let i=ba(t),s=o.run(i);if(s instanceof Promise){r.push(`extension_service_override_async_unsupported:${o.layer}:${o.name}:${o.service}`);continue}if(Ea(s,t,i)){r.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=wa(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 Go(e,t){let n=ha(e,t.service);if(n.length===0)return ga(t);let r=[];for(let o of n)try{let i=ba(t),s=await Promise.resolve(o.run(i));if(Ea(s,t,i)){r.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=wa(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 Xo(e,t){let n=$(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=Z(t.options),i=ee(t.global),s=r.run({command:n,args:C(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:C(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 Gm(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(C(n))}catch{return!1}}function Yo(e,t){let n=typeof t.command=="string"?$(t.command):"",r=[...e.overrides].reverse().find(o=>o.format===t.format&&Gm(o,n,t.result));if(!r)return{overridden:!1,rendered:null,warnings:[]};try{let o=Array.isArray(t.args)?C(t.args):[],i=Z(t.options),s=ee(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:C(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 Ze from"node:fs/promises";import Qe from"node:path";import{pathToFileURL as fp}from"node:url";import ka 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 Jo(e,t){let n=ka.relative(e,t);return n.length===0?!0:!n.startsWith("..")&&!ka.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 Yn=pt;function Jn(e){let t=e.trim().toLowerCase();return Yn.includes(t)?t:null}function va(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 Yn)if(_t(t,r,n)!==null)return r;return null}import Xm from"node:fs/promises";import Gt 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 Sa(e,t){let n=Gt.dirname(t.manifest_path),r=Gt.relative(n,t.entry_path);if(r.startsWith("..")||Gt.isAbsolute(r))throw new Error(`Cannot snapshot extension entry outside its package directory: ${t.entry_path}`);let o=Gt.join(e,`${t.layer}-${t.directory.replace(/[^a-zA-Z0-9._-]/gu,"_")}`);return await Xm.cp(n,o,{recursive:!0,force:!0}),Gt.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 xa(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 Ia(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 $(r)}))];return{run:t,...n.length>0?{commands:n}:{}}}function Ta(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 xe(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return t}function G(e,t){if(t!==void 0&&typeof t!="boolean")throw new TypeError(`${e} must be a boolean when provided`)}function H(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 Aa(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 Ye(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 Xt(e,t){if(Ye(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 Ca(e){H("registerCommand definition.action",e.action),H("registerCommand definition.description",e.description),H("registerCommand definition.intent",e.intent),H("registerCommand definition.tier",e.tier);let t=e.tier;if(t!==void 0&&t!=="core"&&t!=="standard"&&t!=="full"&&t!=="internal")throw new Error("registerCommand definition.tier must be core, standard, full, or internal")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="47bfb287-bdd9-5984-9db4-cb996845d98c")}catch{}})();var Ym=Object.freeze([{flag:"--json"},{flag:"--lean"},{flag:"--token-accounting"},{flag:"--output-include",value_name:"fields"},{flag:"--output-limit",value_name:"count"},{flag:"--output-budget",value_name:"tokens"},{flag:"--output-format",value_name:"toon|json"},{flag:"--output-session",value_name:"state"},{flag:"--quiet"},{flag:"--no-changed-fields"},{flag:"--full-changed-fields"},{flag:"--id-only"},{flag:"--pm-path",aliases:["--path"]},{flag:"--no-extensions"},{flag:"--no-pager"},{flag:"--profile"},{flag:"--help"},{flag:"--author",value_name:"id"}]),Qo=new Set(Ym.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 Jm=/^--[a-z0-9][a-z0-9_-]*(?:[ =](?:<[^<>]+>|\[[^[\]]+\]))?$/;function Qm(e){if(typeof e!="string")return null;let t=e.trim(),n=t.split(/[ =]/,1)[0];return Qo.has(n)?"host_owned_flag_collision":Jm.test(t)?null:"malformed_long_flag"}function Oa(e,t){let n=[e,t].find(i=>typeof i=="string"&&Qo.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=Qm(r);return o===null?null:{token:r,failure:o}}function Ra(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 Na(e){return typeof e=="string"?e:String(e)}function Yt(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 Zo(e,t){let n=Yt(e),r=Yt(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 Da(e,t){if(e==null)return{kind:"pm_min_version",status:"absent",allowed:!0,required:"",current:t};let n=Na(e);if(typeof e!="string"||n.trim().length===0)return{kind:"pm_min_version",status:"invalid",allowed:!1,required:n,current:t};if(!Yt(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=Zo(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 Pa(e,t,n){if(e==null)return{kind:"pm_max_version",status:"absent",allowed:!0,required:"",current:t};let r=Na(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())||!Yt(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=Zo(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 ce(e){return typeof e!="string"?"":e.trim().toLowerCase()}function R(e){return new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))}function Zm(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 yt(e){return new Set((e??[]).map(t=>Zm(t)).filter(t=>t.length>0))}function Ma(e){let t=ce(e);return xn.includes(t)?t:"off"}function La(e){let t=ce(e);return In.includes(t)?t:"off"}function Jt(e){let t=ce(e);return Tn.includes(t)?t:"none"}function ei(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return Ms.includes(t)?t:void 0}function $a(e){if(typeof e=="string"){let t=ei(e)??"block";return{global:t,project:t}}return typeof e=="object"&&e!==null&&!Array.isArray(e)?{global:ei(e.global)??"block",project:ei(e.project)??"block"}:{global:"block",project:"block"}}function ep(e){return e.global===e.project?e.global:{global:e.global,project:e.project}}function P(e){return[...new Set(e)].sort((t,n)=>t.localeCompare(n))}function tp(e){let t=ce(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?Jt(e.sandbox_profile):void 0,allowedCapabilities:R(e.allowed_capabilities),blockedCapabilities:R(e.blocked_capabilities),allowedSurfaces:yt(e.allowed_surfaces),blockedSurfaces:yt(e.blocked_surfaces),allowedCommands:R(e.allowed_commands),blockedCommands:R(e.blocked_commands),allowedActions:R(e.allowed_actions),blockedActions:R(e.blocked_actions),allowedServices:R(e.allowed_services),blockedServices:R(e.blocked_services)}}}function Fa(e){let t=new Map;for(let n of e??[]){let r=tp(n);r&&t.set(r.name,r.normalized)}return t}function np(e){let t=[],n=[...e.overridesByName.values()].sort((o,i)=>o.name.localeCompare(i.name));for(let o of P([...e.allowedCapabilities,...e.blockedCapabilities]))De(o)||t.push(`extension_policy_unknown_capability:${o}`);for(let o of n)for(let i of P([...o.allowedCapabilities,...o.blockedCapabilities]))De(i)||t.push(`extension_policy_unknown_capability:${o.name}:${i}`);let r=new Set(An);for(let o of P([...e.allowedSurfaces,...e.blockedSurfaces]))r.has(o)||t.push(`extension_policy_unknown_surface:${o}`);for(let o of n)for(let i of P([...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 ja(e){let t=e.extensions?.policy??{},n=R(t.allowed_capabilities),r=R(t.blocked_capabilities),o=yt(t.allowed_surfaces),i=yt(t.blocked_surfaces),s=Fa(t.extension_overrides);return{mode:Ma(t.mode),trustMode:La(t.trust_mode),pmMaxVersionExceededMode:$a(t.pm_max_version_exceeded_mode),requireProvenance:t.require_provenance===!0,trustedExtensions:R(t.trusted_extensions),defaultSandboxProfile:Jt(t.default_sandbox_profile),allowedExtensions:R(t.allowed_extensions),blockedExtensions:R(t.blocked_extensions),allowedCapabilities:n,blockedCapabilities:r,allowedSurfaces:o,blockedSurfaces:i,allowedCommands:R(t.allowed_commands),blockedCommands:R(t.blocked_commands),allowedActions:R(t.allowed_actions),blockedActions:R(t.blocked_actions),allowedServices:R(t.allowed_services),blockedServices:R(t.blocked_services),overridesByName:s,warnings:np({allowedCapabilities:n,blockedCapabilities:r,allowedSurfaces:o,blockedSurfaces:i,overridesByName:s})}}function za(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:P(n.allowedCapabilities)}:{},...n.blockedCapabilities.size>0?{blocked_capabilities:P(n.blockedCapabilities)}:{},...n.allowedSurfaces.size>0?{allowed_surfaces:P(n.allowedSurfaces)}:{},...n.blockedSurfaces.size>0?{blocked_surfaces:P(n.blockedSurfaces)}:{},...n.allowedCommands.size>0?{allowed_commands:P(n.allowedCommands)}:{},...n.blockedCommands.size>0?{blocked_commands:P(n.blockedCommands)}:{},...n.allowedActions.size>0?{allowed_actions:P(n.allowedActions)}:{},...n.blockedActions.size>0?{blocked_actions:P(n.blockedActions)}:{},...n.allowedServices.size>0?{allowed_services:P(n.allowedServices)}:{},...n.blockedServices.size>0?{blocked_services:P(n.blockedServices)}:{}}));return{mode:e.mode,trust_mode:e.trustMode,pm_max_version_exceeded_mode:ep(e.pmMaxVersionExceededMode),require_provenance:e.requireProvenance,trusted_extensions:P(e.trustedExtensions),default_sandbox_profile:e.defaultSandboxProfile,allowed_extensions:P(e.allowedExtensions),blocked_extensions:P(e.blockedExtensions),allowed_capabilities:P(e.allowedCapabilities),blocked_capabilities:P(e.blockedCapabilities),allowed_surfaces:P(e.allowedSurfaces),blocked_surfaces:P(e.blockedSurfaces),allowed_commands:P(e.allowedCommands),blocked_commands:P(e.blockedCommands),allowed_actions:P(e.allowedActions),blocked_actions:P(e.blockedActions),allowed_services:P(e.allowedServices),blocked_services:P(e.blockedServices),extension_overrides:t}}function Ua(e){let t=Fa(e.extension_overrides);return{mode:Ma(e.mode),trustMode:La(e.trust_mode),pmMaxVersionExceededMode:$a(e.pm_max_version_exceeded_mode),requireProvenance:e.require_provenance===!0,trustedExtensions:R(e.trusted_extensions),defaultSandboxProfile:Jt(e.default_sandbox_profile),allowedExtensions:R(e.allowed_extensions),blockedExtensions:R(e.blocked_extensions),allowedCapabilities:R(e.allowed_capabilities),blockedCapabilities:R(e.blocked_capabilities),allowedSurfaces:yt(e.allowed_surfaces),blockedSurfaces:yt(e.blocked_surfaces),allowedCommands:R(e.allowed_commands),blockedCommands:R(e.blocked_commands),allowedActions:R(e.allowed_actions),blockedActions:R(e.blocked_actions),allowedServices:R(e.allowed_services),blockedServices:R(e.blocked_services),overridesByName:t,warnings:[]}}function Pe(e,t){return e.overridesByName.get(ce(t))??null}function gt(e,t,n,r,o){return t.has(n)?o:e.size>0&&!e.has(n)?r:null}function qa(e,t,n){let r=n.trim().toLowerCase(),o=Pe(e,t.name),i=o&&o.allowedCapabilities.size>0?o.allowedCapabilities:e.allowedCapabilities,s=new Set([...e.blockedCapabilities,...o?o.blockedCapabilities:[]]);return gt(i,s,r,"capability_not_allowlisted","capability_blocked")}function rp(e,t,n){let r=Pe(e,t.name),o=r&&r.allowedSurfaces.size>0?r.allowedSurfaces:e.allowedSurfaces,i=new Set([...e.blockedSurfaces,...r?r.blockedSurfaces:[]]);return gt(o,i,n,"surface_not_allowlisted","surface_blocked")}function op(e,t,n){let r=$(n);if(r.length===0)return null;let o=Pe(e,t.name),i=o&&o.allowedCommands.size>0?o.allowedCommands:e.allowedCommands,s=new Set([...e.blockedCommands,...o?o.blockedCommands:[]]);return gt(i,s,r,"command_not_allowlisted","command_blocked")}function ip(e,t,n){let r=ce(n).replace(/\s+/g,"-");if(r.length===0)return null;let o=Pe(e,t.name),i=o&&o.allowedActions.size>0?o.allowedActions:e.allowedActions,s=new Set([...e.blockedActions,...o?o.blockedActions:[]]);return gt(i,s,r,"action_not_allowlisted","action_blocked")}function sp(e,t,n){let r=ce(n);if(r.length===0)return null;let o=Pe(e,t.name),i=o&&o.allowedServices.size>0?o.allowedServices:e.allowedServices,s=new Set([...e.blockedServices,...o?o.blockedServices:[]]);return gt(i,s,r,"service_not_allowlisted","service_blocked")}function ap(e,t){let n=ce(t.name);return Pe(e,t.name)?.disabled===!0?"extension_override_disabled":gt(e.allowedExtensions,e.blockedExtensions,n,"extension_not_allowlisted","extension_blocked")}function cp(e,t){if(e.trustMode==="off")return null;let n=Pe(e,t.name),r=ce(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 dp(e,t){if(e.mode==="off")return null;let r=Pe(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 Qn(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 Ba(e,t){if(e.mode==="off"&&e.trustMode==="off")return{allowed:!0,warning:null};let n=[],r=ap(e,t);r&&n.push({reason:r,scope:"extension",mode:e.mode});let o=cp(e,t);o&&n.push({reason:o,scope:"trust",mode:e.trustMode});let i=dp(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:Qn("blocked",s.scope,t,s.reason)};let a=n.find(c=>c.mode==="warn");return a?{allowed:!0,warning:Qn("violation",a.scope,t,a.reason)}:{allowed:!0,warning:null}}function Va(e,t,n){if(e.mode==="off")return{allowed:!0,warning:null};let r=qa(e,t,n);return r?{allowed:e.mode==="warn",warning:Qn(e.mode==="warn"?"violation":"blocked","capability",t,r,{capability:n.trim().toLowerCase()})}:{allowed:!0,warning:null}}function lp(e,t,n,r,o){let i=typeof r=="string"?qa(e,t,r):null,s=rp(e,t,n),a=o.command?op(e,t,o.command):null,c=o.action?ip(e,t,o.action):null,d=o.service?sp(e,t,o.service):null;return i??s??a??c??d}function up(e,t,n,r){let o={method:ce(e).replace(/\s+/g,"_"),surface:t};return n&&(o.capability=n),r.command&&(o.command=$(r.command)),r.action&&(o.action=ce(r.action).replace(/\s+/g,"-")),r.service&&(o.service=ce(r.service)),o}function Wa(e,t,n,r,o,i){if(e.mode==="off")return{allowed:!0,warning:null};let s=i??{},a=lp(e,t,n,o,s);if(!a)return{allowed:!0,warning:null};let c=Qn(e.mode==="warn"?"violation":"blocked","registration",t,a,up(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]="8725b7dd-ec6f-5c71-897a-7a84ce93f5f0")}catch{}})();function Ha(e){return!e.extensionReady||!e.enabledForLoad?null:{layer:e.layer,directory:e.directory,manifest_path:e.manifestPath,entry_path:e.entryPath,manifest:e.manifest,source_package:e.sourceIdentity?.package_name,source_aliases:e.sourceIdentity?.aliases,contributions:e.sourceIdentity?.contributions}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3d5208e5-0ea5-54a5-82a8-50294b4a0655")}catch{}})();var mp=100,Ka=null,pp=Object.freeze(Cn()),Ga=0;function _p(e=Date.now()){return Ga+=1,`${Ga}-${e}`}function Xa(e,t){let n=e[t];if(n!=null)return typeof n!="string"||n.trim().length===0?null:n.trim()}function yp(e){if(e==null)return;let t=ut(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 ti(e,t){let n=e[t];return typeof n!="string"||n.trim().length===0?null:n.trim()}function sc(e){if(e!=null)return typeof e!="number"||!Number.isInteger(e)?null:e}function Je(e){if(e!=null)return typeof e!="boolean"?null:e}function gp(e){let t=sc(e.priority);return t===void 0?mp:t}function hp(e){let t=e.sandbox_profile;if(t==null)return;if(typeof t!="string")return null;let n=Jt(t);return n!==t.trim().toLowerCase()?null:n}function ni(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}function bp(e){if(e==null)return;let t=ut(e);if(!t)return null;let n=ni(t.source),r=ni(t.signature),o=ni(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 wp(e){if(e==null)return;let t=ut(e);if(!t)return null;let n=Je(t.fs_read),r=Je(t.fs_write),o=Je(t.network),i=Je(t.env_read),s=Je(t.env_write),a=Je(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 Ep(e){if(e==null)return{capabilities:[],legacy_aliases:[]};if(!Array.isArray(e)||e.some(n=>typeof n!="string"))return null;let t=ma(e);return{capabilities:t.capabilities,legacy_aliases:t.legacy_aliases}}function kp(e){if(e==null)return;let t=ut(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=>$(o)).filter(o=>o.length>0))].sort((o,i)=>o.localeCompare(i));return r.length>0?{commands:r}:void 0}function vp(e){let t=sc(e.manifest_version);if(t===null)return null;let n=Xa(e,"pm_min_version");if(n===null)return null;let r=Xa(e,"pm_max_version");if(r===null)return null;let o=yp(e.engines);if(o===null)return null;let i=Je(e.trusted);if(i===null)return null;let s=hp(e);if(s===null)return null;let a=bp(e.provenance);if(a===null)return null;let c=wp(e.permissions);if(c===null)return null;let d=Ep(e.capabilities);if(d===null)return null;let l=kp(e.activation);if(l===null)return null;let f=jo(e.contributions);return f===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:d.capabilities,legacy_capability_aliases:d.legacy_aliases,activation:l,contributions:f}}function Sp(e){if(typeof e!="object"||e===null)return null;let t=e,n=ti(t,"name");if(n===null)return null;let r=ti(t,"version");if(r===null)return null;let o=ti(t,"entry");if(o===null)return null;let i=gp(t);if(i===null)return null;let s=vp(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 xp(e,t,n){return n.has(e)?!1:t.size===0?!0:t.has(e)}async function Ip(e,t){let[n,r]=await Promise.all([Ze.realpath(e),Ze.realpath(t)]);return Jo(n,r)}function Tp(e,t=process.cwd()){return{global:Qe.join(ca(t),"extensions"),project:Qe.join(e,"extensions")}}async function Ap(e){try{return(await Ze.readdir(e,{withFileTypes:!0})).filter(n=>n.isDirectory()).map(n=>n.name).sort((n,r)=>n.localeCompare(r))}catch{return[]}}function Cp(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 Ya(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}async function Op(e){let t=new Map;try{let n=JSON.parse(await Ze.readFile(Qe.join(e,".managed-extensions.json"),"utf8")),o=ut(n)?.entries;if(!Array.isArray(o))return t;for(let i of o){if(typeof i!="object"||i===null)continue;let s=i,a=Ya(s.source?.package),c=[s.source?.input,s.source?.name,a].map(f=>Ya(f)).filter(f=>f!==void 0),d=jo(s.contributions),l={aliases:[...new Set(c)],...a?{package_name:a}:{},...d?{contributions:d}:{}};typeof s.directory=="string"&&s.directory.trim().length>0&&t.set(`directory:${s.directory.trim()}`,l),typeof s.name=="string"&&s.name.trim().length>0&&t.set(`name:${s.name.trim()}`,l)}}catch{return t}return t}function Ja(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 Rp(e,t){let n=[...Ja(e),...Ja(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 Qa(e,t,n,r,o){let i=[],s=[],a=[],c=await Ap(t),d=await Op(t);for(let l of c){let f=await Pp(e,t,l,n,r,d,o);i.push(f.diagnostic),s.push(...f.warnings),f.candidate&&a.push(f.candidate)}return{diagnostics:i,warnings:s,candidates:a}}function Np(){return{diagnostics:[],warnings:[],candidates:[]}}function Za(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 Dp(e,t,n,r,o,i){let s=[];Array.isArray(t.legacy_capability_aliases)&&t.legacy_capability_aliases.length>0&&s.push(_a(e,t.name,t.legacy_capability_aliases));for(let a of fa(t.capabilities))s.push(pa(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 Pp(e,t,n,r,o,i,s){let a=Qe.join(t,n),c=Qe.join(a,"manifest.json");if(!await ke(c))return Za(e,n,c,`extension_manifest_missing:${e}:${n}`);let d;try{let q=JSON.parse(await Ze.readFile(c,"utf8"));d=Sp(q)}catch{d=null}if(!d)return Za(e,n,c,`extension_manifest_invalid:${e}:${n}`);let l=Qe.resolve(a,d.entry),f=Jo(a,l),p=f?await ke(l):!1,m=f&&p?await Ip(a,l):f,h=xp(d.name,r,o),_=await $p(e,d),y=await Fp(e,d,s),T=Dp(e,d,m,p,_,y),L=m&&p&&_.allowed&&y.allowed,J=i.get(`directory:${n}`)??i.get(`name:${d.name}`);return{diagnostic:{layer:e,directory:n,manifest_path:c,name:d.name,version:d.version,entry:d.entry,priority:d.priority,entry_path:l,enabled:h,status:L?"ok":"warn"},warnings:T,candidate:Ha({layer:e,directory:n,manifestPath:c,entryPath:l,manifest:d,sourceIdentity:J,extensionReady:L,enabledForLoad:h})}}async function Mp(e){let t=Tp(e.pmRoot,e.cwd??process.cwd()),n=Wt(e.settings.extensions.enabled),r=Wt(e.settings.extensions.disabled),o=ja(e.settings),i=za(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?Np():await Qa("global",t.global,s,a,o.pmMaxVersionExceededMode.global),d=await Qa("project",t.project,s,a,o.pmMaxVersionExceededMode.project),l=[...o.warnings],f=Rp(c.candidates,d.candidates),p=[];for(let m of f){let h={layer:m.layer,name:m.manifest.name,trusted:m.manifest.trusted===!0,provenanceVerified:m.manifest.provenance?.verified===!0,sandboxProfile:m.manifest.sandbox_profile,permissions:m.manifest.permissions&&typeof m.manifest.permissions=="object"?{fs_read:m.manifest.permissions.fs_read,fs_write:m.manifest.permissions.fs_write,network:m.manifest.permissions.network,env_read:m.manifest.permissions.env_read,env_write:m.manifest.permissions.env_write,process_spawn:m.manifest.permissions.process_spawn}:void 0},_=Ba(o,h);if(_.warning&&l.push(_.warning),!!_.allowed){for(let y of m.manifest.capabilities){let T=Va(o,h,y);T.warning&&l.push(T.warning)}p.push(Cp(m))}}return{disabled_by_flag:!1,roots:t,configured_enabled:n,configured_disabled:r,discovered:[...c.diagnostics,...d.diagnostics],effective:p,warnings:[...new Set([...c.warnings,...d.warnings,...l])],policy:i}}function rr(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}async function Lp(){try{let e=Mn(import.meta.url,["../../.."]),t=await Ze.readFile(Qe.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 ac(){return Ka??=Lp(),Ka}function cc(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 $p(e,t){if(t.pm_min_version===void 0)return{allowed:!0};let n=Da(t.pm_min_version,await ac()),r=cc(e,t,n);return r?{allowed:n.allowed,warning:r}:{allowed:n.allowed}}async function Fp(e,t,n){if(t.pm_max_version===void 0)return{allowed:!0};let r=Pa(t.pm_max_version,await ac(),n),o=cc(e,t,r);return o?{allowed:r.allowed,warning:o}:{allowed:r.allowed}}async function ec(e){try{let t=await Ze.stat(e);return`${Math.trunc(t.mtimeMs)}-${t.size}`}catch{return"missing"}}async function jp(e,t){let n=e.entry_path;t.module_graph_snapshot_root&&(n=await Sa(t.module_graph_snapshot_root,e));let r=new URL(fp(n).href);if(!(t.cache_bust===!0||typeof t.reload_token=="string"))return r.href;let[i,s]=await Promise.all([ec(e.entry_path),ec(e.manifest_path)]),a=t.reload_token??_p();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 yx(e){let t=await Mp(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 jp(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:rr(a)})}return{...t,warnings:o,loaded:n,failed:r}}var tc=5e3,zp=2147483647;function Up(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 dc(e){let t=js(e);return t?Up(t):null}async function gx(e,t,n={}){let r=qp(n?.deactivate_timeout_ms),o=new Set((t?.failed??[]).map(l=>`${l.layer}:${l.name}`)),i=[];for(let l of e.loaded){if(o.has(`${l.layer}:${l.name}`))continue;let f=dc(l.module);!f||typeof f.deactivate!="function"||i.push({extension:l,deactivate:f.deactivate})}let s=await Promise.all(i.map(async({extension:l,deactivate:f})=>{try{return await Bp(f,r),{ok:!0}}catch(p){return{ok:!1,layer:l.layer,name:l.name,error:rr(p)}}})),a=[],c=[],d=0;for(let l of s){if(l.ok){d+=1;continue}a.push(`extension_deactivate_failed:${l.layer}:${l.name}`),c.push({layer:l.layer,name:l.name,error:l.error})}return{deactivated:d,warnings:a,failed:c}}function qp(e){return typeof e!="number"||e<0?tc:e===0||e===1/0?0:Number.isFinite(e)?Math.min(zp,Math.max(1,Math.floor(e))):tc}async function Bp(e,t){if(t===0){await e();return}let n;try{let r=Promise.resolve().then(()=>e());r.catch(()=>{}),await Promise.race([r,new Promise((o,i)=>{n=setTimeout(()=>{i(new Error(`extension deactivate timed out after ${t}ms`))},t),n.unref?.()})])}finally{clearTimeout(n)}}function Vp(e){return e==="toon"||e==="json"}function Wp(e){return $t.includes(e)}function ht(e,t){if(typeof t!="function")throw new TypeError(`api.hooks.${e} requires a function handler`)}function ne(e,t){if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return t.trim()}function Zn(e,t){if(typeof t!="function")throw new TypeError(`${e} requires a function handler`)}function nc(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function rc(e,t){return $(`${e} ${t}`)}function tr(e){if(e===null)return null;if(Array.isArray(e))return e.map(t=>tr(t));if(typeof e=="function")return"[Function]";if(typeof e=="bigint"||typeof e=="symbol")return e.toString();if(typeof e=="object"){let t=e,n={},r=Object.keys(t).sort((o,i)=>o.localeCompare(i));for(let o of r)n[o]=tr(t[o]);return n}return e}function nr(e){if(Array.isArray(e))return e.map(t=>nr(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]=nr(t[r]);return n}return e}var lc=Symbol("extension_registration_trace");function Me(e,t){let n=new TypeError(e);return Object.defineProperty(n,lc,{value:t,enumerable:!1,configurable:!1,writable:!1}),n}function Hp(e){if(e instanceof Error)return e[lc]}function er(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return tr(t)}function ri(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return nr(t)}function ai(e,t){if(!Array.isArray(t))throw new TypeError(`${e} requires an array of object definitions`);return t.map(n=>er(e,n))}var Kp=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","visible"]);function oi(e,t){return ai(e,t).map(n=>(n.repeatable===!0&&(n.list=!0),n))}function Gp(e){return e.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function oc(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=Gp(t);if(n.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return n}function ic(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=xe(`registerCommand definition.arguments[${r}]`,o),s=ne(`registerCommand definition.arguments[${r}].name`,i.name);if(G(`registerCommand definition.arguments[${r}].required`,i.required),G(`registerCommand definition.arguments[${r}].variadic`,i.variadic),H(`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 ii(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=xe(`registerFlags flags[${t}]`,n),o=Object.keys(r).filter(c=>!Kp.has(c)).sort((c,d)=>c.localeCompare(d));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`);H(`registerFlags flags[${t}].long`,i),H(`registerFlags flags[${t}].short`,s);let a=Oa(i,s);if(a!==null)throw new TypeError(`registerFlags flags[${t}] ${Ra(a.token,a.failure)}`);if(H(`registerFlags flags[${t}].value_name`,r.value_name),H(`registerFlags flags[${t}].description`,r.description),G(`registerFlags flags[${t}].required`,r.required),G(`registerFlags flags[${t}].enabled`,r.enabled),G(`registerFlags flags[${t}].visible`,r.visible),G(`registerFlags flags[${t}].list`,r.list),G(`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(Aa(`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.`);Xp(`registerFlags flags[${t}]`,r)}}function Xp(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=Ws(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?Hs(t.default):[t.default];for(let[i,s]of o.entries())if(!Ks(s,r)){let a=o.length>1?`default[${i}]`:"default";throw new TypeError(`${e}.${a} (${JSON.stringify(s)}) is not coercible to ${r}.`)}}function Yp(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=xe(`registerItemFields fields[${t}]`,n);ne(`registerItemFields fields[${t}].name`,r.name);let o=ne(`registerItemFields fields[${t}].type`,r.type);if(Jn(o)===null){let i=va(o),s=i?` Did you mean "${i}"?`:"";throw new TypeError(`registerItemFields fields[${t}].type "${o}" is not a known field type (expected one of: ${Yn.join(", ")}).${s}`)}G(`registerItemFields fields[${t}].optional`,r.optional)}}function Jp(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=xe(i,o);ne(`${i}.command`,s.command),ne(`${i}.option`,s.option),G(`${i}.enabled`,s.enabled),G(`${i}.required`,s.required),G(`${i}.visible`,s.visible)}}function Qp(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=xe(i,o);ne(`${i}.key`,s.key),Ye(`${i}.values`,s.values),G(`${i}.required`,s.required),Ye(`${i}.aliases`,s.aliases)}}function Zp(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=xe(r,n);ne(`${r}.name`,o.name),H(`${r}.folder`,o.folder),Ye(`${r}.aliases`,o.aliases),Ye(`${r}.required_create_fields`,o.required_create_fields),Ye(`${r}.required_create_repeatables`,o.required_create_repeatables),Jp(t,o.command_option_policies),Qp(t,o.options)}}function e_(e){let t=xe("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(G("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 uc=["types","statuses","fields","workflows","config","templates","packages"],t_={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 n_(e){let t=xe("registerProfile profile",e);if(ne("registerProfile profile.name",t.name),ne("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 uc){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`);t_[n]?.(`registerProfile profile.${n}[${o}]`,i)}}}}function r_(e){e.summary===void 0&&(e.summary="");for(let t of uc)e[t]===void 0&&(e[t]=[]);return e}function si(e,t){return Object.defineProperty(e,"runtime_definition",{value:t,enumerable:!1,writable:!1,configurable:!1}),e}function o_(e){if(!Array.isArray(e.capabilities))return null;let t=new Set;for(let n of e.capabilities){let r=n.trim().toLowerCase();De(r)&&t.add(r)}return t}function j(e,t,n){let r=o_(e);if(r!==null&&!r.has(t))throw Me(`${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 i_(e){return Object.freeze({name:e.name,layer:e.layer,version:e.version,capabilities:Object.freeze((e.capabilities??[]).filter(t=>_e.includes(t))),pm_min_version:e.pm_min_version,pm_max_version:e.pm_max_version,source_package:e.source_package})}function s_(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 ci=class{extension;hooks;#e;#n;#o;#r;#s;#a;#i;#c;#t;#d;#l;#u;constructor(t,n,r,o,i,s,a,c,d,l,f){this.#e=t,this.extension=i_(t),this.#n=s_(t),this.#o=n,this.#r=r,this.#s=o,this.#a=i,this.#i=s,this.#c=a,this.#t=c,this.#d=d,this.#l=l,this.#u=f,this.registerCommand=this.registerCommand.bind(this),this.registerParser=this.registerParser.bind(this),this.registerPreflight=this.registerPreflight.bind(this),this.registerService=this.registerService.bind(this),this.registerFlags=this.registerFlags.bind(this),this.registerItemFields=this.registerItemFields.bind(this),this.registerItemTypes=this.registerItemTypes.bind(this),this.registerRelationshipKinds=this.registerRelationshipKinds.bind(this),this.registerMigration=this.registerMigration.bind(this),this.registerProfile=this.registerProfile.bind(this),this.registerRenderer=this.registerRenderer.bind(this),this.registerImporter=this.registerImporter.bind(this),this.registerExporter=this.registerExporter.bind(this),this.registerSearchProvider=this.registerSearchProvider.bind(this),this.registerVectorStoreAdapter=this.registerVectorStoreAdapter.bind(this),this.hooks={beforeCommand:p=>this.registerBeforeCommand(p),beforeMutation:p=>this.registerBeforeMutation(p),afterCommand:p=>this.registerAfterCommand(p),onWrite:p=>this.registerOnWrite(p),onRead:p=>this.registerOnRead(p),onIndex:p=>this.registerOnIndex(p)}}allowRegistration(t,n,r,o){let i=Wa(this.#u,this.#n,t,n,r,o);return i.warning&&this.#d.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:tr(o),hint:i}}registerCommandOverride(t,n){let r=$(t);if(r.length===0)throw Me("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 Me(`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.#d.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 Me("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 Me("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=$(t.name);if(n.length===0)throw Me("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 Me(`registerCommand requires a command definition run handler (command="${n}", registration_index=${o.registration_index})`,o)}try{Ca(t);let o=oc(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=Xt("registerCommand definition.examples",t.examples),c=Xt("registerCommand definition.failure_hints",t.failure_hints),d=ic(t.arguments);t.flags!==void 0&&(j(this.#e,"schema","registerCommand flags"),this.allowRegistration("schema.flags","registerCommand flags","schema")&&(ii(t.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:n,flags:oi("registerCommand definition.flags",t.flags)})));let l={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:n,action:o,examples:a,failure_hints:c,arguments:d,tier:t.tier};i&&(l.description=i),s&&(l.intent=s),this.#t.commands.push(l)}catch(o){let i=rr(o),s=this.registerCommandTrace("definition",n,"{ name: string; run: (context) => unknown; action?: string; arguments?: object[]; flags?: object[]; }",t,i),a=Me(`registerCommand definition metadata invalid (command="${n}", registration_index=${s.registration_index}): ${i}`,s);this.#d.push(`extension_command_quarantined:${this.#e.layer}:${this.#e.name}:${n}`),this.#l.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(j(this.#e,"commands","registerCommand"),typeof t=="string"){this.registerCommandOverride(t,n);return}this.registerCommandDefinition(t)}registerParser(t,n){if(j(this.#e,"parser","registerParser"),!this.allowRegistration("parser.override","registerParser","parser"))return;let r=$(ne("registerParser command",t));Zn("registerParser override",n),this.#s.overrides.push({layer:this.#e.layer,name:this.#e.name,command:r,run:n})}registerPreflight(t){if(j(this.#e,"preflight","registerPreflight"),!this.allowRegistration("preflight.override","registerPreflight","preflight"))return;let n=Ia(t);this.#a.overrides.push({layer:this.#e.layer,name:this.#e.name,...n})}registerService(t,n){j(this.#e,"services","registerService");let r=String(t).trim().toLowerCase();if(!Wp(r))throw new TypeError(`registerService service must be one of: ${$t.join(", ")}`);this.allowRegistration("services.override","registerService","services",{service:r})&&(Zn("registerService override",n),this.#i.overrides.push({layer:this.#e.layer,name:this.#e.name,service:r,run:n}))}registerRenderer(t,n,r={}){if(j(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(!Vp(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 $(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(j(this.#e,"schema","registerFlags"),!this.allowRegistration("schema.flags","registerFlags","schema"))return;let r=$(ne("registerFlags targetCommand",t));ii(n);let o=oi("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(j(this.#e,"schema","registerItemFields"),!this.allowRegistration("schema.itemfields","registerItemFields","schema"))return;Yp(t);let n=ai("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(j(this.#e,"schema","registerItemTypes"),!this.allowRegistration("schema.itemtypes","registerItemTypes","schema"))return;Zp(t);let n=ai("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(j(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=Ro();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(j(this.#e,"schema","registerMigration"),!this.allowRegistration("schema.migrations","registerMigration","schema"))return;e_(t);let n=ri("registerMigration definition",t);this.#t.migrations.push(si({layer:this.#e.layer,name:this.#e.name,definition:er("registerMigration definition",t)},n))}registerProfile(t){if(j(this.#e,"schema","registerProfile"),!this.allowRegistration("schema.profiles","registerProfile","schema"))return;let n=nr(t);n_(n),this.#t.profiles.push({layer:this.#e.layer,name:this.#e.name,profile:r_(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};H(`${t} options.action`,s.action),H(`${t} options.description`,s.description),H(`${t} options.intent`,s.intent);let a=oc(n,s.action),c=Xt(`${t} options.examples`,s.examples),d=Xt(`${t} options.failure_hints`,s.failure_hints),l=ic(s.arguments);s.flags!==void 0&&(j(this.#e,"schema",`${t} options.flags`),this.allowRegistration("schema.flags",`${t} options.flags`,"schema")&&(ii(s.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:n,flags:oi(`${t} options.flags`,s.flags)})));let f={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:n,action:a,examples:c,failure_hints:d,arguments:l},p=s.description?.trim();p&&(f.description=p);let m=s.intent?.trim();m&&(f.intent=m),this.#t.commands.push(f)}registerImporter(t,n,r){if(j(this.#e,"importers","registerImporter"),!this.allowRegistration("importers.importer","registerImporter","importers"))return;let o=nc(ne("registerImporter name",t));Zn("registerImporter importer",n);let i=rc(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:C(s.args),options:C(s.options),global:C(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(j(this.#e,"importers","registerExporter"),!this.allowRegistration("importers.exporter","registerExporter","importers"))return;let o=nc(ne("registerExporter name",t));Zn("registerExporter exporter",n);let i=rc(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:C(s.args),options:C(s.options),global:C(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(j(this.#e,"search","registerSearchProvider"),!this.allowRegistration("search.provider","registerSearchProvider","search"))return;let n=ri("registerSearchProvider provider",t);this.#t.search_providers.push(si({layer:this.#e.layer,name:this.#e.name,definition:er("registerSearchProvider provider",t)},n))}registerVectorStoreAdapter(t){if(j(this.#e,"search","registerVectorStoreAdapter"),!this.allowRegistration("search.vectorstore","registerVectorStoreAdapter","search"))return;let n=ri("registerVectorStoreAdapter adapter",t);this.#t.vector_store_adapters.push(si({layer:this.#e.layer,name:this.#e.name,definition:er("registerVectorStoreAdapter adapter",t)},n))}registerBeforeCommand(t){j(this.#e,"hooks","api.hooks.beforeCommand"),this.allowRegistration("hooks.beforecommand","api.hooks.beforeCommand","hooks")&&(ht("beforeCommand",t),this.#o.beforeCommand.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerBeforeMutation(t){j(this.#e,"hooks","api.hooks.beforeMutation"),this.allowRegistration("hooks.beforemutation","api.hooks.beforeMutation","hooks")&&(ht("beforeMutation",t),this.#o.beforeMutation.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerAfterCommand(t){j(this.#e,"hooks","api.hooks.afterCommand"),this.allowRegistration("hooks.aftercommand","api.hooks.afterCommand","hooks")&&(ht("afterCommand",t),this.#o.afterCommand.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnWrite(t){j(this.#e,"hooks","api.hooks.onWrite"),this.allowRegistration("hooks.onwrite","api.hooks.onWrite","hooks")&&(ht("onWrite",t),this.#o.onWrite.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnRead(t){j(this.#e,"hooks","api.hooks.onRead"),this.allowRegistration("hooks.onread","api.hooks.onRead","hooks")&&(ht("onRead",t),this.#o.onRead.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnIndex(t){j(this.#e,"hooks","api.hooks.onIndex"),this.allowRegistration("hooks.onindex","api.hooks.onIndex","hooks")&&(ht("onIndex",t),this.#o.onIndex.push({layer:this.#e.layer,name:this.#e.name,run:t}))}};function a_(e,t,n,r,o,i,s,a,c,d,l){return new ci(e,t,n,r,o,i,s,a,c,d,l)}function c_(e){let t=e.commands.length,n=e.flags.reduce((s,a)=>s+a.flags.length,0),r=e.item_fields.reduce((s,a)=>s+a.fields.length,0),o=e.item_types.reduce((s,a)=>s+a.types.length,0),i=(e.relationship_kinds??[]).reduce((s,a)=>s+a.definitions.length,0);return{commands:t,flags:n,item_fields:r,item_types:o,...i>0?{relationship_kinds:i}:{},migrations:e.migrations.length,profiles:e.profiles.length,importers:e.importers.length,exporters:e.exporters.length,search_providers:e.search_providers.length,vector_store_adapters:e.vector_store_adapters.length}}function d_(e){let t=[],n=(i,s)=>{let a=new Map;for(let c of i){let d=a.get(c.command)??[];d.push(c),a.set(c.command,d)}for(let c of[...a.keys()].sort((d,l)=>d.localeCompare(l))){let d=a.get(c);if(d.length<=1)continue;let l=d[d.length-1];for(let f of d.slice(0,-1))t.push(`${s}:${c}:${l.layer}:${l.name}:${f.layer}:${f.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 d of s)t.push(`extension_command_override_handler_overlap:${i}:${c.layer}:${c.name}:${d.layer}:${d.name}`)}return t}function l_(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 u_(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 f_=new Set(["output_format"]);function m_(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||f_.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 hx(e){let t=Ua(e.policy??pp),n=Ht(),r=Do(),o=Po(),i=Mo(),s=Lo(),a=$o(),c=Fo(),d=[],l=[];for(let m of e.loaded){let h=dc(m.module);if(!h)continue;let _=d.length,y=xa({hooks:n,commands:r,parsers:o,preflight:i,services:s,renderers:a,registrations:c});try{await h.activate(a_(m,n,r,o,i,s,a,c,l,d,t)),d.length>_&&(y(),l.push(`extension_activation_rolled_back:${m.layer}:${m.name}`))}catch(T){y(),l.push(`extension_activate_failed:${m.layer}:${m.name}`);let L=Hp(T);d.push({layer:m.layer,name:m.name,entry_path:m.entry_path,error:rr(T),trace:L})}}let f=[...d_(r),...u_(o),...Ta(i),...m_(s),...l_(a)],p=[...new Set([...l,...f])];return{hooks:n,commands:r,parsers:o,preflight:i,services:s,renderers:a,registrations:c,failed:d,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:c_(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 xx(e){return{...e,hooks:Ht(),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 Tx(){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 p_(){let e=Promise.resolve(),t=0,n=[],r=()=>{if(t!==0)return;let o=n.splice(0);for(let i of o)i()};return{enqueue(o){t++;let i=e.then(()=>o());return e=i.then(()=>{},()=>{}).finally(()=>{t--,r()}),i},idle(){return t===0?Promise.resolve():new Promise(o=>n.push(o))}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3f347c0d-2e1f-5d17-9e38-bae834f845d3")}catch{}})();var __={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"]},fc=":";function mc(e,t){return`${e}${fc}${di(t)}`}function y_(e){return e.slice(e.indexOf(fc)+1)}function di(e){return e.trim().toLowerCase()}function g_(e){if(!Array.isArray(e))return[];let t=new Set;for(let n of e){let r=ua(n);r!==null&&t.add(r)}return[...t].sort((n,r)=>n.localeCompare(r))}function pc(e){let t=new Map,n=(l,f)=>{for(let p of l){let m=mc(p.layer,p.name),h=t.get(m);h===void 0&&(h=new Set,t.set(m,h)),h.add(f)}},{registrations:r,commands:o,parsers:i,preflight:s,services:a,renderers:c,hooks:d}=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(c.overrides,"renderers"),n(d.beforeCommand,"hooks"),n(d.beforeMutation,"hooks"),n(d.afterCommand,"hooks"),n(d.onWrite,"hooks"),n(d.onRead,"hooks"),n(d.onIndex,"hooks"),t}function h_(e,t={}){let n=pc(e),r=new Set;t.extensionName!==void 0&&r.add(di(t.extensionName));for(let i of t.extensionNames??[])r.add(di(i));let o=new Set;for(let[i,s]of n)if(!(r.size>0&&!r.has(y_(i))))for(let a of s)o.add(a);return[...o].sort((i,s)=>i.localeCompare(s))}function b_(e,t){let n=pc(t),r=[];for(let o of e){let i=g_(o.capabilities);if(i.length===0)continue;let s=n.get(mc(o.layer,o.name))??new Set,a=[...s].sort((d,l)=>d.localeCompare(l)),c=i.filter(d=>!s.has(d));r.push({layer:o.layer,name:o.name,declared:i,used:a,unused:c})}return r}import{existsSync as w_}from"node:fs";import{AsyncLocalStorage as E_}from"node:async_hooks";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]="38024e6c-c1ef-5c15-8421-ac18d317e330")}catch{}})();var Le=null,Qt=null,ir=null,sr=null,Zt=null,ar=null,cr=null,et=null,dr,or=[],yc=new E_;function D(){return yc.getStore()}function Mx(e){return yc.run({hooks:null,commands:null,parsers:null,preflight:null,services:null,renderers:null,registrations:null,commandContext:null,commandResult:void 0,affectedItems:[]},e)}var k_=new Set(["body","comments","dependencies","docs","events","files","learnings","notes","reminders","test_runs","tests"]);function _c(e){let t=Ie.resolve(e);for(;;){if(w_(Ie.join(t,".git")))return t;let n=Ie.dirname(t);if(n===t)return;t=n}}function lr(e){let t=process.env.PM_SOURCE_WORKSPACE_ROOT?.trim()||process.cwd(),n=_c(t)??Ie.resolve(t),r=_c(n);if(!e)return{source_workspace_root:n,...r?{repo_root:r}:{}};let o=Ie.relative(n,Ie.resolve(e)),i=o.length>0&&!o.startsWith(`..${Ie.sep}`)&&o!==".."&&!Ie.isAbsolute(o);return{source_workspace_root:n,...r?{repo_root:r}:{},...i?{pm_root_rel:o.split(Ie.sep).join("/")}:{}}}function Lx(e){let t=D();if(t){t.hooks=e;return}Le=e}function $x(e){let t=D();if(t){t.commands=e;return}Qt=e}function Fx(e){let t=D();if(t){t.parsers=e;return}ir=e}function jx(e){let t=D();if(t){t.preflight=e;return}sr=e}function zx(e){let t=D();if(t){t.services=e;return}Zt=e}function Ux(e){let t=D();if(t){t.renderers=e;return}ar=e}function qx(e){let t=D();if(t){t.registrations=e;return}cr=e}function en(){let e=D();return e?e.registrations:cr}function Bx(){let e=D();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}Le=null,Qt=null,ir=null,sr=null,Zt=null,ar=null,cr=null,et=null,dr=null}function Vx(e){let t=e?{...e,...lr(e.pm_root)}:null,n=D();if(n){n.commandContext=t;return}et=t}function gc(){let e=D(),t=e?e.commandContext:et;return t?{...t,args:[...t.args],options:t.options?{...t.options}:{},global:t.global?{...t.global}:void 0}:null}function hc(e){let t=D();if(t){t.commandResult=e;return}dr=e}function Wx(){let e=D();return e?e.commandResult:dr}function li(e){if(!e)return;let t=D();t?t.affectedItems.push(e):or.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"||k_.has(i)||Object.hasOwn(r,i)&&r[i]!==void 0&&(n[i]=r[i])}return n}function Hx(){let e=D(),t=e?.affectedItems??or;if(t.length===0)return;let n=t;return e?e.affectedItems=[]:or=[],n}function Kx(){let e=D();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}Le=null,Qt=null,ir=null,sr=null,Zt=null,ar=null,cr=null,et=null,dr=void 0,or=[]}async function ue(e){let t=D(),n=t?t.hooks:Le;return n?Uo(n,e):[]}async function ui(e){let t=D(),n=t?t.hooks:Le;n&&await zo(n,e)}async function ge(e){let t=D(),n=t?t.hooks:Le;return n?qo(n,e):[]}function fi(){let e=D();return((e?e.hooks:Le)?.onRead?.length??0)>0}async function Gx(e){let t=D(),n=t?t.hooks:Le;return n?Bo(n,e):[]}function bc(e){let t=D(),n=t?t.commands:Qt,r=t?t.commandContext:et;return!n||!r?{overridden:!1,result:e,warnings:[]}:Xo(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 Xx(e){let t=D(),n=t?t.commands:Qt;return n?Vo(n,{...e,...lr(e.pm_root)}):{handled:!1,result:null,warnings:[]}}async function Yx(e){let t=D(),n=t?t.parsers:ir;return n?Wo(n,{...e,...lr(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 Jx(e){let t=D(),n=t?t.preflight:sr;return n?Ho(n,{...e,...lr(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 wc(e,t){let n=D(),r=n?n.renderers:ar,o=n?n.commandContext:et;return r?Yo(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 Ec(e,t){let n=D(),r=n?n.commandContext:et;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 Te(e,t){let n=D(),r=n?n.services:Zt;return r?Go(r,Ec(e,t)):{handled:!1,result:t,warnings:[]}}function mi(e,t){let n=D(),r=n?n.services:Zt;return r?Ko(r,Ec(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 tt=new Set(ye),fr=Object.freeze({get size(){return tt.size},has(e){return tt.has(e)},entries(){return tt.entries()},keys(){return tt.keys()},values(){return tt.values()},forEach(e,t){tt.forEach(n=>e.call(t,n,n,fr))},[Symbol.iterator](){return tt.values()}});function kc(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function vc(e){return typeof e!="string"?null:Jn(e)}function v_(e){try{return structuredClone(e)}catch{return e}}function S_(e){let t=e.trim(),n=t.indexOf("=");if(n<=0)throw new w(`--field entries must use name=value syntax, received: ${e}`,b.USAGE);let r=t.slice(0,n).trim(),o=t.slice(n+1);return{key:r,value:o}}function x_(e){return`--${e.replaceAll("_","-")}`}function I_(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 w(`--field ${t}=... must be valid JSON ${n}`,b.USAGE)}function T_(e,t,n){if(t==="string")return n;if(t==="number"){let r=n.trim();if(r.length===0)throw new w(`--field ${e}=... must be a number`,b.USAGE);let o=Number(r);if(!Number.isFinite(o))throw new w(`--field ${e}=... must be a number`,b.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 w(`--field ${e}=... must be one of true|false|1|0|yes|no`,b.USAGE)}return t==="string_array"?n.split(/[\n,|]/u).map(r=>r.trim()).filter(r=>r.length>0):I_(n,e,t)}function pi(e){let t=new Map;if(!e)return t;for(let n of e.item_fields)for(let r of n.fields){let o=kc(r.name),i=vc(r.type);if(!o||!i)continue;let s=t.get(o);if(s&&s.type!==i)throw new w(`Extension item field "${o}" is declared with conflicting types: ${s.type}, ${i}`,b.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 Sc(e){if(fr.has(e))throw new w(`Extension item field "${e}" collides with built-in item metadata "${e}"; rename the extension field with an extension-specific prefix. Reserved fields: ${[...fr].sort((t,n)=>t.localeCompare(n)).join(", ")}.`,b.USAGE,{code:"extension_item_field_reserved",nextSteps:["Rename the extension item field, preferably with an extension-specific prefix."]})}function mr(e){return[...pi(e).keys()].sort((t,n)=>t.localeCompare(n))}function sI(e,t){if(!e||e.length===0)return{};let n=pi(t),r={};for(let o of e){let{key:i,value:s}=S_(o),a=n.get(i);if(!a){if(fr.has(i)){let d=x_(i);throw new w(`--field ${i} is a core item field, not an extension field`,b.USAGE,{code:"core_item_field_requires_dedicated_flag",field:i,recovery:{provided_fields:[i],suggested_flags:[d]},nextSteps:[`Set the core field with its dedicated flag: pm update <id> ${d} <value>`,`When closing an item, pm close <id> also accepts ${d} <value>.`]})}let c=[...n.keys()].sort((d,l)=>d.localeCompare(l));throw new w(`--field ${i} is not declared by an active extension item-field registration`,b.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."]})}Sc(a.name),r[a.name]=T_(a.name,a.type,s)}return r}function A_(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 C_(e,t){return!t||t.length===0?!0:t.some(n=>Object.is(n,e))}function aI(e,t,n={}){if(t){pi(t);for(let r of t.item_fields)for(let o of r.fields){let i=kc(o.name);if(!i)continue;Sc(i),!(i in e)&&!n.skipDefaultFields?.has(i)&&Object.prototype.hasOwnProperty.call(o,"default")&&(e[i]=v_(o.default));let s=e[i];if(s===void 0)continue;let a=vc(o.type);if(a&&!A_(s,a))throw new TypeError(`Item field "${i}" must be of type ${a}`);let c=Array.isArray(o.values)?o.values:void 0;if(!C_(s,c))throw new TypeError(`Item field "${i}" must match one of the configured allowed values`)}}}import xc 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]="febba42b-dfd0-549a-a6d9-c30edb321d9d")}catch{}})();var K=Object.freeze({types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"}),Ac=go,gi=yo,O_=["create","update"],R_=new Set(Ln),N_=new Set(pt),D_=new Set($n),P_=new Set(Fn);function tn(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 nt(e){return typeof e=="string"?e.trim().toLowerCase().replaceAll(/[\s-]+/g,"_"):""}function fe(e){if(typeof e!="string"||e.length===0)return;let t=nt(e);return t.length>0?t:void 0}function M_(e){return e.startsWith("--")?e.slice(2):e}function Ic(e){return typeof e=="string"?M_(e.trim().toLowerCase().replaceAll(/[\s_]+/g,"-")):""}function Cc(e){return e.replaceAll("_","-")}function L_(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 yi(e,t){let n=fe(e.id);if(!n)return null;let r=[...new Set(tn(e.aliases).map(nt).filter(a=>a.length>0))].sort((a,c)=>a.localeCompare(c)),o=tn(e.roles).filter(a=>R_.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 $_(e){return{draft_status:fe(e?.draft_status),open_status:fe(e?.open_status),in_progress_status:fe(e?.in_progress_status),blocked_status:fe(e?.blocked_status),close_status:fe(e?.close_status),canceled_status:fe(e?.canceled_status)}}function Oc(e,t){if(!Array.isArray(t)||t.length!==2)return;let n=nt(t[0]),r=nt(t[1]);n.length===0||r.length===0||e.pairs.some(o=>o[0]===n&&o[1]===r)||e.pairs.push([n,r])}function F_(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)Oc(n,r);return{typeKey:t.toLowerCase(),record:n}}function j_(e){if(!Array.isArray(e)||e.length===0)return;let t=new Map;for(let r of e){let o=F_(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)Oc(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 Rc(e){let t=nt(e.key??"");if(!t)return null;let n=nt(e.metadata_key??e.front_matter_key??t),r=Ic(e.cli_flag??Cc(t));if(!r)return null;let o=tn(e.cli_aliases).map(l=>Ic(l)).filter(l=>l.length>0&&l!==r),i=typeof e.type=="string"?e.type.trim().toLowerCase():"string",s=N_.has(i)?i:"string",a=(()=>{let l=tn(e.commands).filter(f=>D_.has(f));return l.length>0?l:[...O_]})(),c=e.description?.trim(),d=tn(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:d,allow_unset:e.allow_unset!==!1}}function z_(e){let t=new Map;for(let[r,o]of e.entries()){let i=yi(o,r);i&&t.set(i.id,i)}let n=Tc([...t.values()]);return n.length>0?n:Tc(gi.map((r,o)=>yi(r,o)).filter(r=>r!==null))}function Tc(e){return e.sort((t,n)=>t.order===n.order?t.id.localeCompare(n.id):t.order-n.order)}function U_(e){let t=new Map;for(let n of e??[]){let r=Rc(n);r&&t.set(r.key,r)}return[...t.values()].sort((n,r)=>n.key.localeCompare(r.key))}function q_(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 B_(e){return{key:e.key,metadata_key:e.metadata_key!==e.key?e.metadata_key:void 0,cli_flag:e.cli_flag!==Cc(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 V_(e){let t=typeof e=="string"?e.trim().toLowerCase():"allow";return P_.has(t)?t:"allow"}function he(e){let t={...K,...e?.files},n=e?.statuses&&e.statuses.length>0?e.statuses:gi,r=z_(n),o=U_(e?.fields);return{version:typeof e?.version=="number"&&Number.isFinite(e.version)?Math.floor(e.version):1,files:t,statuses:r.map(q_),fields:o.map(B_),workflow:{...Ac,...$_(e?.workflow)},type_workflows:j_(e?.type_workflows),unknown_field_policy:V_(e?.unknown_field_policy)}}function W_(e){return`${JSON.stringify(e,null,2)}
|
|
4
|
-
`}function H_(){return{definitions:[]}}function K_(){return{statuses:gi}}function G_(){return{fields:[]}}function X_(){return{workflow:Ac}}function Y_(e,t,n){try{return JSON.parse(e)}catch{n.push(t);return}}function J_(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 Q_(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 Z_(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 ey(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 ty(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 X(e,t,n){let r=t?.trim()||n;return xc.isAbsolute(r)?r:xc.join(e,r)}function mI(e,t){return X(e,t.files.types,K.types)}async function Nc(e,t){let n=he(t),r=[{path:X(e,n.files.types,K.types),seed:H_()},{path:X(e,n.files.statuses,K.statuses),seed:K_()},{path:X(e,n.files.fields,K.fields),seed:G_()},{path:X(e,n.files.workflows,K.workflows),seed:X_()}],o=[];for(let i of r)await ke(i.path)||(await Q(i.path,W_(i.seed)),o.push(i.path));return{created_paths:o}}async function Dc(e,t){let n=he(t),r=[],o=X(e,n.files.types,K.types),i=X(e,n.files.statuses,K.statuses),s=X(e,n.files.fields,K.fields),a=X(e,n.files.workflows,K.workflows),c,d,l,f,p,m=async(J,q)=>{let lt=await ve(J);if(lt!==null)return Y_(lt,q,r)},h=await m(o,"runtime_schema_types_invalid_json");h!==void 0&&(c=J_(h),c===void 0&&r.push("runtime_schema_types_invalid_shape"));let _=await m(i,"runtime_schema_statuses_invalid_json");_!==void 0&&(d=Q_(_),d===void 0&&r.push("runtime_schema_statuses_invalid_shape"));let y=await m(s,"runtime_schema_fields_invalid_json");y!==void 0&&(l=Z_(y),l===void 0&&r.push("runtime_schema_fields_invalid_shape"));let T=await m(a,"runtime_schema_workflows_invalid_json");return T!==void 0&&(f=ey(T),f===void 0&&r.push("runtime_schema_workflows_invalid_shape"),p=ty(T)),{schema:he({...n,statuses:[...n.statuses,...d??[]],fields:[...n.fields,...l??[]],workflow:{...n.workflow,...f},type_workflows:[...n.type_workflows??[],...p??[]]}),type_definitions_from_file:c,warnings:r,created_paths:[]}}function _i(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=>fe(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 Pc(e){let t=he(e),n=t.statuses.map((_,y)=>yi(_,y)).filter(_=>_!==null),r=new Map,o=new Map;for(let _ of n){o.set(_.id,_),r.set(_.id,_.id),r.set(_.id.replaceAll("_","-"),_.id),r.set(_.id.replaceAll("_"," "),_.id);for(let y of _.aliases)r.set(y,_.id),r.set(y.replaceAll("_","-"),_.id),r.set(y.replaceAll("_"," "),_.id)}let i=new Set,s=new Set,a=new Set,c=new Set,d=new Set,l=new Set;for(let _ of n){let y=new Set(_.roles);(y.has("terminal")||y.has("terminal_done")||y.has("terminal_canceled"))&&i.add(_.id),y.has("terminal_done")&&s.add(_.id),y.has("terminal_canceled")&&a.add(_.id),y.has("active")&&c.add(_.id),y.has("blocked")&&d.add(_.id),y.has("draft")&&l.add(_.id)}let f=t.workflow,p=fe(f.open_status)??_i(n,"default_open",["open","in_progress",mt[0]]),m=fe(f.close_status)??_i(n,"default_close",["closed","done","complete"]),h=fe(f.canceled_status)??_i(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:d,draft_statuses:l,open_status:p,close_status:m,canceled_status:h}}function hi(e,t){let n=nt(e);if(n)return t.alias_to_id.get(n)}function Mc(e){let t=he(e),n=new Map,r=t.fields.map(c=>Rc(c)).filter(c=>c!==null);for(let c of r)n.set(c.key,c);let o=[...n.values()].sort((c,d)=>c.key.localeCompare(d.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 d of c.cli_aliases)s.set(d,c);for(let d of c.commands){let l=a.get(d)??[];l.push(c),a.set(d,l)}}for(let[c,d]of a.entries())d.sort((l,f)=>l.key.localeCompare(f.key)),a.set(c,d);return{definitions:o,by_key:i,by_cli_token:s,command_to_fields:a}}function Lc(e){return L_(e.key)}function pI(e,t){let n=hi(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 bi(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 ny(e){return[...new Set([Lc(e),bi(e.key),bi(e.cli_flag),...e.cli_aliases.map(t=>bi(t))])]}function jc(e,t){for(let n of ny(t)){if(!Object.hasOwn(e,n))continue;let r=e[n];if(r!==void 0)return r}}function zc(e){return Array.isArray(e)?e.flatMap(t=>zc(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 $c(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 w(`${t} must be one of true|false|1|0|yes|no`,b.USAGE)}function Fc(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 w(`${t} must be a number`,b.USAGE);return r}function ry(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 w(`${t} must be valid JSON ${n}`,b.USAGE)}function nn(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:ry(i,r,e.type)}if(e.repeatable||e.type==="string_array"){let i=zc(t);return e.type==="number"?i.map(s=>Fc(s,r)):e.type==="boolean"?i.map(s=>$c(s,r)):i}let o=Array.isArray(t)?t[t.length-1]:t;if(o!==void 0)return e.type==="number"?Fc(o,r):e.type==="boolean"?$c(o,r):typeof o=="string"?o:String(o)}function oy(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 bI(e,t,n){let r={},o=[];for(let i of t.command_to_fields.get("create")??[]){let s=jc(e,i);if(s===void 0){oy(i,n)&&o.push(`--${i.cli_flag}`);continue}r[i.metadata_key]=nn(i,s)}return{values:r,missing_required_flags:[...new Set(o)].sort((i,s)=>i.localeCompare(s))}}function wI(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=jc(e,s);a!==void 0&&(i.has(s.metadata_key)||(i.add(s.metadata_key),r[s.metadata_key]=nn(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 bt=1,Uc=1;function kI(e){let t=e.pm_format_version;return typeof t=="number"&&Number.isInteger(t)&&t>=bt?t:bt}function qc(e){if(!(typeof e!="number"||!Number.isInteger(e)||e<=bt))return e}function iy(e,t=Uc){return e<t?"outdated":e>t?"ahead":"current"}function vI(e,t=Uc){let n=[],r=[];for(let o of e){let i=iy(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 sy={"in-progress":"in_progress",cancelled:"canceled"};function pr(e,t){if(t){let o=hi(e,t);if(o)return o}if(typeof e!="string")return;let n=e.trim().toLowerCase();if(!n)return;let r=sy[n]??n;if(mt.includes(r))return r}function ay(e,t){return pr(e,t)??e}function TI(e,t){return t.terminal_statuses.has(ay(e,t))}import{encode as uy}from"@toon-format/toon";import{isDeepStrictEqual as Bc}from"node:util";import{decode as cy}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 wi(e){return{value:cy(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 dy=/^\s*(<<<<<<<|=======|>>>>>>>)(?:\s.*)?$/;function ly(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(dy);if(!i)continue;let s=i[1];n.push({line:r+1,marker:s,text:o})}return n}function _r(e){return ly(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]="a4c22692-fe27-5178-bba2-190ac3f80628")}catch{}})();var fy=new Set(["schema","tracker","auto"]),my=new Set(["passed","failed","stopped","canceled"]),py=new Set(Ys);function kt(e){return e.replaceAll("\\","/")}function Ti(e){for(let t of e)if(t!==0)return t;return 0}function gr(e){for(let[t,n]of Object.entries(e))n===void 0&&delete e[t]}var Kc=["id","title","description","created_at","updated_at"],_y=new Set(ye);function Gc(e){if(e?.schema)return{statusRegistry:Pc(e.schema),fieldRegistry:Mc(e.schema),unknownFieldPolicy:e.schema.unknown_field_policy??"allow",extensionFieldNames:new Set(e.extensionFieldNames??[]),onWarning:e.onWarning}}function yy(e,t){return e.required?e.required_types.length===0?!0:e.required_types.map(n=>n.toLowerCase()).includes(t.trim().toLowerCase()):!1}function Fe(e){let t=e.match(/^([a-z_][\w.]*)\s/u)?.[1];throw new w(`Invalid item metadata: ${e}`,b.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 sn(e,t){throw new w(t,b.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 Xc(e){let t=new Set(_y);for(let n of e.fieldRegistry?.definitions??[])t.add(n.metadata_key);for(let n of e.extensionFieldNames)t.add(n);return t}function v(e,t){e||Fe(t)}function an(e,t){return(typeof e!="object"||e===null||Array.isArray(e))&&Fe(t),e}function Ei(e,t){let n=e[t];v(typeof n=="string",`${t} must be a string`),v(Re(n),`${t} must be a valid ISO timestamp`)}function Vc(e,t,n){let r=e[t];r!==void 0&&v(typeof r=="number"&&Number.isInteger(r)&&r>=1,`${n} must be an integer >= 1`)}function Si(e,t,n){let r=e[t];r!==void 0&&(v(typeof r=="string",`${n} must be a string`),v(Re(r),`${n} must be a valid ISO timestamp`))}function gy(e){if(e!==void 0){v(Array.isArray(e),"event.recurrence.by_weekday must be an array");for(let t of e){v(typeof t=="string","event.recurrence.by_weekday entries must be strings");let n=t.trim().toLowerCase();v(jt.includes(n),`event.recurrence.by_weekday entries must be one of: ${jt.join(", ")}`)}}}function hy(e){if(e!==void 0){v(Array.isArray(e),"event.recurrence.by_month_day must be an array");for(let t of e)v(typeof t=="number"&&Number.isInteger(t)&&t>=1&&t<=31,"event.recurrence.by_month_day entries must be integers 1..31")}}function by(e){if(e!==void 0){v(Array.isArray(e),"event.recurrence.exdates must be an array");for(let t of e)v(typeof t=="string","event.recurrence.exdates entries must be strings"),v(Re(t),"event.recurrence.exdates entries must be valid ISO timestamps")}}function wy(e){let t=an(e,"event.recurrence must be an object");v(typeof t.freq=="string","event.recurrence.freq must be a string");let n=t.freq.trim().toLowerCase();v(Un.includes(n),`event.recurrence.freq must be one of: ${Un.join(", ")}`),Vc(t,"interval","event.recurrence.interval"),Vc(t,"count","event.recurrence.count"),Si(t,"until","event.recurrence.until"),gy(t.by_weekday),hy(t.by_month_day),by(t.exdates)}function Ey(e){for(let r of Kc)v(typeof e[r]=="string",`${r} is required and must be a string`);let t=e.type;v(typeof t=="string"&&t.trim().length>0,"type must be a non-empty string");let n=e.pm_format_version;return n!==void 0&&v(typeof n=="number"&&Number.isInteger(n)&&n>=bt,`pm_format_version must be an integer >= ${bt}`),t}function ky(e,t){let n=e.status;v(typeof n=="string"&&n.trim().length>0,"status must be a non-empty string");let r=t?.statusRegistry,o=pr(n,r),i=r?r.definitions.map(s=>s.id):[...mt];v(o!==void 0,`status must be one of: ${i.join(", ")}`)}function vy(e){let t=e.priority;v(typeof t=="number"&&Number.isInteger(t)&&[0,1,2,3,4].includes(t),"priority must be an integer 0..4");let n=e.tags;v(Array.isArray(n),"tags must be an array");for(let r of n)v(typeof r=="string","tags entries must be strings")}function Sy(e){let t=e.confidence;if(t!==void 0){if(typeof t=="number"){v(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"||zn.includes(n);v(r,`confidence string value must be one of: ${[...zn,"med"].join(", ")}`);return}v(!1,"confidence must be a number or string")}}function xy(e){let t=e.severity;if(t===void 0)return;typeof t!="string"&&Fe("severity must be a string");let n=t.trim().toLowerCase(),r=n==="med"||jn.includes(n);v(r,`severity value must be one of: ${[...jn,"med"].join(", ")}`)}function Iy(e){e.regression!==void 0&&typeof e.regression!="boolean"&&Fe("regression must be a boolean")}function Ty(e){let t=e.reminders;if(t!==void 0){v(Array.isArray(t),"reminders must be an array");for(let n of t){let r=an(n,"reminders entries must be objects");v(typeof r.at=="string","reminder.at must be a string"),v(Re(r.at),"reminder.at must be a valid ISO timestamp"),v(typeof r.text=="string","reminder.text must be a string"),v(r.text.trim().length>0,"reminder.text must not be empty")}}}function Ay(e){for(let t of["title","description","location","timezone"])e[t]!==void 0&&(v(typeof e[t]=="string",`event.${t} must be a string`),v(e[t].trim().length>0,`event.${t} must not be empty`))}function Cy(e){e.recurrence!==void 0&&(wy(e.recurrence),e.recurrence.until!==void 0&&v(W(e.recurrence.until,e.start_at)>=0,"event.recurrence.until must be at or after event.start_at"))}function Oy(e){let t=an(e,"events entries must be objects");v(typeof t.start_at=="string","event.start_at must be a string"),v(Re(t.start_at),"event.start_at must be a valid ISO timestamp"),t.end_at!==void 0&&(v(typeof t.end_at=="string","event.end_at must be a string"),v(Re(t.end_at),"event.end_at must be a valid ISO timestamp"),v(W(t.end_at,t.start_at)>0,"event.end_at must be after event.start_at")),Ay(t),t.all_day!==void 0&&v(typeof t.all_day=="boolean","event.all_day must be a boolean"),Cy(t)}function Ry(e){let t=e.events;if(t!==void 0){v(Array.isArray(t),"events must be an array");for(let n of t)Oy(n)}}function Ny(e){for(let t of["source_type","source_owner","design","external_ref"]){let n=e[t];n!==void 0&&v(typeof n=="string",`${t} must be a string`)}}function Dy(e){let t=e.type_options;if(t===void 0)return;let n=an(t,"type_options must be an object");for(let[r,o]of Object.entries(n))v(r.trim().length>0,"type_options keys must be non-empty"),v(typeof o=="string","type_options values must be strings"),v(o.trim().length>0,"type_options values must be non-empty strings")}function Py(e,t,n){if(n?.fieldRegistry)for(let r of n.fieldRegistry.definitions){let o=e[r.metadata_key];if(o===void 0){yy(r,t)&&Fe(`missing required schema field: ${r.metadata_key}`);continue}try{e[r.metadata_key]=nn(r,o,`metadata field "${r.metadata_key}"`)}catch(i){Fe(String(i?.message).replace(/^Invalid\s+/u,""))}}}function My(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=Xc(t),r=Object.keys(e).filter(o=>!n.has(o)).sort((o,i)=>o.localeCompare(i));r.length!==0&&(t.unknownFieldPolicy==="reject"?Fe(`unknown schema fields are not allowed: ${r.join(", ")}`):t.onWarning?.(`item_unknown_schema_fields:${r.join(",")}`))}function xi(e,t){let n=an(e,"item metadata must be an object"),r=Ey(n);ky(n,t),vy(n),Sy(n),xy(n),Iy(n),Ei(n,"created_at"),Ei(n,"updated_at"),n.deadline!==void 0&&Ei(n,"deadline"),Ty(n),Ry(n),Si(n,"closed_at","closed_at"),Si(n,"completed_at","completed_at"),Ny(n),Dy(n),Py(n,r,t),My(n,t)}function Ly(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=W(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 ki(e){if(!(!e||e.length===0))return[...e].sort((t,n)=>{let r=W(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 $y(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=W(n.at,r.at);return o!==0?o:n.text.localeCompare(r.text)});return t.length===0?void 0:t}function Fy(e){if(!e)return;let t=e.freq.trim().toLowerCase();if(!Un.includes(t))return;let n=Array.from(new Set((e.by_weekday??[]).map(s=>s.trim().toLowerCase()).filter(s=>jt.includes(s)))).sort((s,a)=>ko(s)-ko(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=>Re(s)))).sort((s,a)=>W(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 jy(e){return!Array.isArray(e)||e.length===0?void 0:[...e].map(zy).sort(Uy)}function zy(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:Fy(e.recurrence)};return gr(t),t}function Uy(e,t){return Ti([W(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 qy(e){if(!(!e||e.length===0))return e.map(t=>({path:kt(t.path),scope:t.scope,note:t.note?.trim()||void 0}))}function By(e){if(!e||e.length===0)return;let t=e.map(Hy).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)=>Ti([W(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 wt(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?Math.floor(e):void 0}function Vy(e){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.floor(e):void 0}function vi(e){return typeof e=="string"?e:""}function Wy(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 Hy(e){let t=typeof e.run_id=="string"?e.run_id.trim():"",n=e.kind==="test"||e.kind==="test-all"?e.kind:"test",r=my.has(e.status)?e.status:"failed",o={run_id:t,kind:n,status:r,started_at:vi(e.started_at),finished_at:vi(e.finished_at),recorded_at:vi(e.recorded_at),attempt:Vy(e.attempt),resumed_from:e.resumed_from?.trim()||void 0,passed:wt(e.passed)??0,failed:wt(e.failed)??0,skipped:wt(e.skipped)??0,items:wt(e.items),linked_tests:wt(e.linked_tests),fail_on_skipped_triggered:e.fail_on_skipped_triggered===!0?!0:void 0,measurements:Wy(e.measurements)};return gr(o),o}function Ky(e){if(!(!Array.isArray(e)||e.length===0))return[...e].map(Yy).sort(Jy)}function rn(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 Yc(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function Ai(e){return e==="__proto__"||e==="constructor"||e==="prototype"}function Wc(e){if(!Yc(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),String(r).trim()]).filter(([n,r])=>n.length>0&&!Ai(n)&&r.length>0).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function Gy(e){if(!Yc(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),Number(r)]).filter(([n,r])=>n.length>0&&!Ai(n)&&Number.isFinite(r)).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function Xy(e){let t=e?.trim().toLowerCase();if(!(!t||!fy.has(t)))return t}function Yy(e){let t={command:e.command?.trim()||void 0,path:e.path?kt(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:Xy(e.pm_context_mode),env_set:Wc(e.env_set),env_clear:rn(e.env_clear),shared_host_safe:e.shared_host_safe===!0?!0:void 0,assert_stdout_contains:rn(e.assert_stdout_contains),assert_stdout_regex:rn(e.assert_stdout_regex),assert_stderr_contains:rn(e.assert_stderr_contains),assert_stderr_regex:rn(e.assert_stderr_regex),assert_stdout_min_lines:wt(e.assert_stdout_min_lines),assert_json_field_equals:Wc(e.assert_json_field_equals),assert_json_field_gte:Gy(e.assert_json_field_gte),note:e.note?.trim()||void 0};return gr(t),t}function Jy(e,t){return Ti([e.scope.localeCompare(t.scope),yr(e.path,t.path),yr(e.command,t.command),Hc(e.timeout_seconds,t.timeout_seconds),yr(e.pm_context_mode,t.pm_context_mode),+!!e.shared_host_safe-+!!t.shared_host_safe,$e(e.env_clear,t.env_clear,[]),$e(e.env_set,t.env_set,{}),$e(e.assert_stdout_contains,t.assert_stdout_contains,[]),$e(e.assert_stdout_regex,t.assert_stdout_regex,[]),$e(e.assert_stderr_contains,t.assert_stderr_contains,[]),$e(e.assert_stderr_regex,t.assert_stderr_regex,[]),Hc(e.assert_stdout_min_lines,t.assert_stdout_min_lines),$e(e.assert_json_field_equals,t.assert_json_field_equals,{}),$e(e.assert_json_field_gte,t.assert_json_field_gte,{}),yr(e.note,t.note)])}function yr(e,t){return(e??"").localeCompare(t??"")}function Hc(e,t){return(e??0)-(t??0)}function $e(e,t,n){return JSON.stringify(e??n).localeCompare(JSON.stringify(t??n))}function Qy(e){if(!(!e||e.length===0))return[...e].map(t=>({path:kt(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 k(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function Zy(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=k(r.id),i=k(r.kind);if(!o||!i)continue;let s={id:o,kind:i},a=k(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 eg(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=k(r.path);if(!o)continue;let i={path:kt(o)};(r.scope==="project"||r.scope==="global")&&(i.scope=r.scope);let s=k(r.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function tg(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=k(r.command),i=k(r.path);if(!o&&!i)continue;let s={};o&&(s.command=o),i&&(s.path=kt(i));let a=k(r.note);a&&(s.note=a),t.push(s)}return t.length>0?t:void 0}function ng(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=k(r.path);if(!o)continue;let i={path:kt(o)};(r.scope==="project"||r.scope==="global")&&(i.scope=r.scope);let s=k(r.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function rg(e){if(e===null||typeof e!="object")return;let t=e,n=k(t.id),r=k(t.title),o=k(t.status),i=o&&py.has(o)?o:void 0,s=Nn(t.order)??Number.NaN,a=typeof t.created_at=="string"?t.created_at:"",c=typeof t.updated_at=="string"?t.updated_at:"";if(!n||!r||!i||!Number.isFinite(s)||!a||!c)return;let d={id:n,order:s,title:r,status:i,created_at:a,updated_at:c};return og(d,t),d}function og(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=k(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",Zy],["files","files",eg],["tests","tests",tg],["docs","docs",ng]];for(let[i,s,a]of o){let c=a(t[s]);c&&(e[i]=c)}}function ig(e){if(!Array.isArray(e))return;let t=e.flatMap(n=>{let r=rg(n);return r?[r]:[]});return t.sort((n,r)=>n.order-r.order),t.length>0?t:void 0}function sg(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=k(r.decision);if(!o||!i||!s)continue;let a={ts:o,author:i,decision:s},c=k(r.rationale);c&&(a.rationale=c);let d=k(r.evidence);d&&(a.evidence=d);let l=k(r.step_id);l&&(a.step_id=l),t.push(a)}return t.length>0?t:void 0}function ag(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=k(r.text);if(!o||!i||!s)continue;let a={ts:o,author:i,text:s},c=k(r.step_id);c&&(a.step_id=c),t.push(a)}return t.length>0?t:void 0}function cg(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=k(r.text);if(!o)continue;let i={text:o},s=k(r.command);s&&(i.command=s);let a=k(r.expected);a&&(i.expected=a),t.push(i)}return t.length>0?t:void 0}function dg(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 Et(e){let t=0;for(;t<e.length&&e[t]===`
|
|
5
|
-
`;)t+=1;return e.slice(t).trimEnd()}function lg(e){if(e===void 0)return;if(typeof e=="number")return e;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(zn.includes(t))return t}function ug(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(jn.includes(t))return t}function on(e){return e||void 0}function fg(e,t){let n=e,r=t;for(let[o,i]of Object.entries(r))Ai(o)||Object.prototype.hasOwnProperty.call(n,o)||i===void 0||(n[o]=i)}function mg(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]=nn(r,o,`metadata field "${r.metadata_key}"`))}}function pg(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=Xc(t),o=Object.keys(e).filter(i=>!n.has(i)).sort((i,s)=>i.localeCompare(s));o.length>0&&t.unknownFieldPolicy==="reject"&&Fe(`unknown schema fields are not allowed: ${o.join(", ")}`),o.length>0&&t.onWarning?.(`item_unknown_schema_fields:${o.join(",")}`)}function hr(e,t={}){let n=Gc(t),r=pr(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:qc(e.pm_format_version),source_type:k(e.source_type),type_options:dg(e.type_options),status:r,priority:e.priority,tags:o,created_at:e.created_at,updated_at:e.updated_at,dependencies:Ly(e.dependencies),comments:ki(e.comments),notes:ki(e.notes),learnings:ki(e.learnings),files:qy(e.files),tests:Ky(e.tests),test_runs:By(e.test_runs),docs:Qy(e.docs),deadline:on(e.deadline),reminders:$y(e.reminders),events:jy(e.events),closed_at:on(e.closed_at),completed_at:on(e.completed_at),assignee:k(e.assignee),claim_principal:k(e.claim_principal),source_owner:k(e.source_owner),author:on(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:k(e.definition_of_ready),order:e.order,goal:k(e.goal),objective:k(e.objective),value:k(e.value),impact:k(e.impact),outcome:k(e.outcome),why_now:k(e.why_now),parent:k(e.parent),reviewer:k(e.reviewer),risk:e.risk??void 0,confidence:lg(e.confidence),sprint:k(e.sprint),release:k(e.release),blocked_by:k(e.blocked_by),blocked_reason:k(e.blocked_reason),unblock_note:k(e.unblock_note),reporter:k(e.reporter),severity:ug(e.severity),environment:k(e.environment),repro_steps:k(e.repro_steps),resolution:k(e.resolution),expected_result:k(e.expected_result),actual_result:k(e.actual_result),affected_version:k(e.affected_version),fixed_version:k(e.fixed_version),component:k(e.component),regression:e.regression,customer_impact:k(e.customer_impact),close_reason:on(e.close_reason),plan_mode:k(e.plan_mode),plan_scope:k(e.plan_scope),plan_harness:k(e.plan_harness),plan_resume_context:k(e.plan_resume_context),plan_steps:ig(e.plan_steps),plan_decisions:sg(e.plan_decisions),plan_discoveries:ag(e.plan_discoveries),plan_validation:cg(e.plan_validation)};return fg(i,e),mg(i,n),pg(i,n),gr(i),i}function Jc(e){return x(e,ye)}function _g(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 yg(e){if(!e.startsWith("{"))return{frontMatter:"",body:e};let t=_g(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 gg(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(`
|
|
6
|
-
`,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 Ii(e,t){return hr(e,{...t,onWarning:void 0})}function hg(e,t,n={}){let r=gg(e);r.stripped&&n.onWarning?.("json_markdown_leading_yaml_frontmatter_ignored");let{frontMatter:o,body:i}=yg(r.content);o||(e.trimStart().startsWith("{")&&sn("json_markdown","JSON front matter is not valid JSON"),sn("json_markdown","JSON Markdown item document is missing JSON front matter"));let s;try{s=JSON.parse(o)}catch{sn("json_markdown","JSON front matter is not valid JSON")}return xi(s,t),{metadata:Ii(s,n),body:Et(i)}}function bg(e,t,n={}){let r;try{r=wi(e).value}catch{sn("toon","TOON item document is not valid TOON")}v(typeof r=="object"&&r!==null&&!Array.isArray(r),"TOON item document must be an object");let o=r;if(!Kc.some(a=>Object.prototype.hasOwnProperty.call(o,a))&&!Object.prototype.hasOwnProperty.call(o,"front_matter")&&sn("toon","TOON input does not have the shape of an item document"),Object.prototype.hasOwnProperty.call(o,"front_matter"))return xi(o.front_matter,t),v(o.body===void 0||typeof o.body=="string","TOON item document body must be a string"),{metadata:Ii(o.front_matter,n),body:Et(typeof o.body=="string"?o.body:"")};let{body:i,...s}=o;return v(i===void 0||typeof i=="string","TOON item document body must be a string"),xi(s,t),{metadata:Ii(s,n),body:Et(typeof i=="string"?i:"")}}function wg(e,t={}){let n=hr(e.metadata,t),r=Jc(n),o=JSON.stringify(r,null,2),i=Et(e.body??"");return i?`${o}
|
|
7
|
-
|
|
8
|
-
${i}
|
|
9
|
-
`:`${o}
|
|
10
|
-
`}function Eg(e,t={}){let n=hr(e.metadata,t),r=Jc(n),o=Et(e.body??""),i={...r,body:o},s=JSON.parse(JSON.stringify(i)),a=uy(s),c;try{c=wi(a).value}catch(d){throw new w("Refusing to persist a TOON item document that the configured decoder cannot read back.",b.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_error",format:"toon",required:"Upgrade or repair the TOON codec before retrying the mutation; no item bytes were written.",why:d instanceof Error?d.message:String(d)})}if(!Bc(c,s)){let d=typeof c=="object"&&c!==null&&!Array.isArray(c)?c:{},l=Object.keys(s).find(f=>!Bc(s[f],d[f]))??"document";throw new w(`Refusing to persist a lossy TOON item document; round-trip mismatch at field "${l}".`,b.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_mismatch",format:"toon",field:l,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}
|
|
11
|
-
`}function br(e,t={}){let n=_r(e);if(n)throw new w(`Merge conflict markers detected in item document at line ${n.line} (${n.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,b.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=Gc(t);return r==="toon"?bg(e,o,t):hg(e,o,t)}function Qc(e,t={}){return(t.format??"toon")==="toon"?Eg(e,t):wg(e,t)}function me(e,t={}){return{metadata:hr(e.metadata,t),body:Et(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 Zc(e){return e}import{AsyncLocalStorage as kg}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 Ci=new kg,ed=/^[A-Za-z0-9](?:[A-Za-z0-9._:-]{0,127})$/u;function wr(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=wr(n.id,128),o=wr(n.parent_id,128);if(r===void 0||!ed.test(r)||o!==void 0&&!ed.test(o)){if(t)throw new Error("Agent episode ids must be 1-128 letters, digits, dots, underscores, colons, or hyphens.");return}let i=wr(n.label,256);return{id:r,...i===void 0?{}:{label:i},...o===void 0?{}:{parent_id:o}}}function vt(e){let t={};for(let[n,r]of Object.entries(e??{}).slice(0,32)){let o=n.trim().toLowerCase().slice(0,64),i=wr(r,256);/^[a-z][a-z0-9_-]{0,63}$/u.test(o)&&i!==void 0&&(t[o]=i)}return t}function vg(e,t,n){let r=Ci.getStore(),o=vt({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={...vt(r?.provenance),...o,...vt(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 td(e,t){return vg(e.session_context,t,e.client_info?.episode)??{}}function XI(e,t){let n=Ci.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={...vt(n?.provenance),...vt(e.provenance)};return Ci.run({...Object.keys(s).length===0?{}:{provenance:s},...i===void 0?o===void 0?{}:{episode:o}:{episode:i}},t)}function YI(e){let t=vt(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{AsyncLocalStorage as Ni}from"node:async_hooks";import{createHash as Sg}from"node:crypto";import Er from"node:fs";import xg from"node:os";import nd 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]="0139d8ef-d286-571f-89f8-7de2f8422f22")}catch{}})();var od=["model","effort","role","topic","version"],kr=new Ni,id=new Ni,Di=new Ni,Ig=[{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"],role:["CLAUDE_CODE_CHILD_SESSION"]},provenance_resolvers:{model:"claude_session_file",version:"claude_session_file"},provenance_unavailable_dimensions:["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:[]}],St=new Map,Oi=/^[a-z0-9]+(?:-[a-z0-9]+)*$/u;function Y(e){let t=typeof e=="string"?e.trim():void 0;return t&&t.length>0?t:void 0}function ot(e){return[...new Set((e??[]).slice(0,64).map(t=>t.trim()).filter(t=>t.length>0).map(t=>t.slice(0,128)))]}function vr(e){let t=e.harness.trim().toLowerCase();if(!Oi.test(t))throw new Error(`Invalid harness signal descriptor namespace: ${e.harness}`);return{harness:t,environment_keys:ot(e.environment_keys),model_environment_keys:ot(e.model_environment_keys),session_environment_keys:ot(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),ot(r)]).filter(([n])=>Oi.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"&&Oi.test(n[0])&&(n[1]==="ai_agent_version"||n[1]==="claude_session_file"))),provenance_unavailable_dimensions:ot(e.provenance_unavailable_dimensions).map(n=>n.toLowerCase()),argv_markers:ot(e.argv_markers).map(n=>n.toLowerCase()),client_names:ot(e.client_names).map(n=>n.toLowerCase())}}var sd=Ig.map(vr);function Tg(e,t){return JSON.stringify(e)===JSON.stringify(t)}function rd(e,t){return e.toLowerCase().slice(0,512).split(/[/\\\s:=]+/u).filter(r=>r.length>0).includes(t)||e.trim().toLowerCase()===t}function ad(e=[]){let t=[...sd,...[...St.values()].map(r=>r.descriptor),...Di.getStore()?.descriptors??[],...e.map(vr)],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 cd(e,t){for(let n of t??[]){let r=Y(e[n]);if(r)return r.slice(0,256)}}function Ag(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 Y(r[o+1])?.slice(0,256);let s=n.find(a=>i.startsWith(`${a}=`));if(s)return Y(i.slice(s.length+1))?.slice(0,256)}}function Ri(e,t){return Y(e?.[t])?.slice(0,256)}var Cg=1048576;function Og(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 Y(i)?.slice(0,256)}function Rg(e,t,n){let r=Y(n.CLAUDE_CODE_SESSION_ID);if(!r||!/^[A-Za-z0-9_-]{1,128}$/u.test(r))return;let i=nd.resolve(t.cwd??process.cwd()).replaceAll(/[^A-Za-z0-9-]/gu,"-"),s=nd.join(t.home_dir??xg.homedir(),".claude","projects",i,`${r}.jsonl`);try{let a=Er.openSync(s,"r");try{let c=Er.fstatSync(a).size,d=Math.min(c,Cg),l=Buffer.alloc(d);Er.readSync(a,l,0,d,Math.max(0,c-d));let f=l.toString("utf8").split(`
|
|
12
|
-
`).reverse();for(let p of f.slice(0,4096)){let m=Og(p,e);if(m)return m}return}finally{Er.closeSync(a)}}catch{return}}function Ng(e,t,n,r){let o=Di.getStore();if(!(t.probes_enabled!==!1&&o?.probesEnabled!==!1&&!["0","false","off"].includes(Y(n.PM_AGENT_PROBES)?.toLowerCase()??"")))return;let s=r?.provenance_resolvers[e];if(s==="claude_session_file")return Rg(e,t,n);if(s==="ai_agent_version"){let a=Y(n.AI_AGENT);return a?/(?:^|[@/\s])v?(\d+\.\d+(?:\.\d+)?(?:[-+][A-Za-z0-9.-]+)?)$/u.exec(a)?.[1]?.slice(0,256):void 0}}function dd(e){return e||(id.getStore()??{env:process.env,argv:process.argv})}function Dg(e,t,n,r){let o=e.environment_keys.some(a=>Y(t[a])!==void 0),i=e.argv_markers.some(a=>n.some(c=>{let d=c.replaceAll("\\","/");return rd(d.slice(d.lastIndexOf("/")+1),a)})),s=e.client_names.some(a=>r===a||rd(r,a));return o||i||s}function Pg(e,t,n,r,o){let i=`PM_AGENT_${e.toUpperCase().replaceAll("-","_")}`,s=new Set([...od,...Object.keys(r?.provenance_environment_keys??{})]),a,c;s.has(e)&&(a=Y(n[i])?.slice(0,256),c=Ag(t.argv??[],e));let d={...r?.provenance_environment_keys,model:r?.model_environment_keys},l={...t.client_info?.provenance,model:t.client_info?.model},f=[a,Ri(o?.provenance,e),cd(n,d[e]),Ri(l,e),Ri(t.provenance,e),c,Ng(e,t,n,r)];return["override","session","environment","mcp_client","host","argv","probe"].map((h,_)=>({value:f[_],source:h})).find(h=>h.value!==void 0)}function Mg(e,t,n,r){let o=Object.keys(n?.provenance_environment_keys??{}),i=new Set([...od,...o,...Object.keys(n?.provenance_resolvers??{}),...Object.keys(e.provenance??{}),...Object.keys(e.client_info?.provenance??{}),...Object.keys(r?.provenance??{})]),s={};for(let a of i){let c=Pg(a,e,t,n,r);c?s[a]=c:n&&(a!=="version"||n.provenance_unavailable_dimensions.includes(a))&&(s[a]=null)}return s}function oT(e){let t=e.map(vr),n=new Map(sd.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=St.get(i.harness);if(s&&!Tg(s.descriptor,i))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);r.add(i.harness)}for(let i of t){let s=St.get(i.harness);St.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=St.get(i.harness);!s||s.registrations<=1?St.delete(i.harness):s.registrations-=1}}}}function iT(e,t){return id.run(e,t)}function sT(e,t,n={}){let r=e.map(vr);return ad(r),Di.run({descriptors:r,probesEnabled:n.probesEnabled!==!1},t)}function ld(e){let t=dd(e),n=t.env??{},r=ad(t.descriptors),o=[...(t.argv??[]).slice(0,3),...t.process_labels??[]].slice(0,64).map(m=>m.slice(0,512)),i=t.client_info?.name.trim().toLowerCase()??"",s=r.find(m=>Dg(m,n,o,i)),a=td(t,n),c=Mg(t,n,s,a),d=c.model,l=[cd(n,s?.session_environment_keys),Y(t.client_info?.session)?.slice(0,256)].find(m=>m!==void 0),f=s?.harness&&l?Sg("sha256").update(`pm-agent-instance:v1\0${s.harness}\0${l}`).digest("hex").slice(0,24):void 0,p=[["harness",s?.harness],["model",d?.value],["model_source",d?.source],["session",l],["instance",f],["provenance",Object.keys(c).length>0?c:void 0],["episode",a.episode]];return Object.fromEntries(p.filter(m=>m[1]!==void 0))}function aT(){return process.env.PM_AUTHOR}function cT(e){e===void 0?delete process.env.PM_AUTHOR:process.env.PM_AUTHOR=e}function dT(e){return ld(e).harness}function Lg(e,t,n){let r=dd(n),o=ld(r);if(e!==void 0){let s=Y(e);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}if(r.env?.PM_AUTHOR!==void 0){let s=Y(r.env.PM_AUTHOR);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}let i=Y(t);return i?{author:i,source:"configured",...o}:o.harness?{author:`harness:${o.harness}`,source:"detected",...o}:{author:"unknown",source:"unknown",...o}}function ud(e){let t=kr.getStore();return t?.author===e?t.source:e.startsWith("harness:")?"detected":e==="unknown"?"unknown":"asserted"}function fd(e){let t=kr.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 md(e){let t=kr.getStore();return t?.author===e&&t.source==="detected"&&t.instance?`${e}#${t.instance}`:e}function pd(e,t){let n=Lg(e,t);return kr.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 cn(e,t){let n=await ve(e);if(n===null)return[];if(await ge({path:e,scope:"project"}),n.trim()==="")return[];let r=_r(n);if(r)throw new w(`History for ${t} contains merge conflict markers at line ${r.line} (${r.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,b.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 w(`History for ${t} contains invalid JSON at line ${i+1}. Repair or restore the history stream and retry.`,b.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 $g="__pm_suppress_host_output",Pi="@unbrained/pm-cli:suppress-host-output:v1";function gT(e){return e===void 0?{__pm_suppress_host_output:Pi}:{__pm_suppress_host_output:Pi,result:e}}function _d(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&e[$g]===Pi}(function(){try{var e=typeof window<"u"?window:typeof 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 Sr="changed_fields",Fg="changed_field_count",Mi="rows",jg=new Set(["apply","rollback"]),yd=new Set(["deleted","would_delete"]);function it(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function gd(e){let t=e[Sr];if(!Array.isArray(t))return null;let n=Object.getPrototypeOf(e)===null?Object.create(null):{};for(let[r,o]of Object.entries(e))r!==Sr&&(n[r]=o);return n[Fg]=t.length,n}function zg(e){return"item"in e&&Array.isArray(e[Sr])}function Ug(e){return typeof e.mode=="string"&&jg.has(e.mode)&&Array.isArray(e[Mi])}function qg(e,t){let n=Object.getPrototypeOf(e)===null?Object.create(null):{};return Object.assign(n,e),n[Mi]=t,n}function Bg(e){if(!it(e))return null;let t=it(e.item)?e.item:it(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"&&yd.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 Vg(e){if(!it(e)||!it(e.item)||typeof e.item.id!="string")return null;let t=e[Sr];if(!Array.isArray(t))return null;let n={id:e.item.id,...typeof e.outcome=="string"&&yd.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 Wg(e){let t=Ug(e)?e[Mi]:void 0;if(!Array.isArray(t))return{projected:e,changed:!1};let n=!1,r=t.map(o=>{if(!it(o))return o;let i=gd(o);return i?(n=!0,i):o});return n?{projected:qg(e,r),changed:!0}:{projected:e,changed:!1}}function xr(e,t={}){if(t.idOnly===!0){let a=Bg(e);if(a!==null)return a}if(t.compactEnvelope===!0){let a=Vg(e);if(a!==null)return a}if((t.changedFields??"full")==="full"||!it(e))return e;let r=!1,o=e,i=zg(e)?gd(e):null;i!==null&&(o=i,r=!0);let s=Wg(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]="4a108e0e-0dfc-55c4-9f14-7395cfbac456")}catch{}})();var hd='.row_contract.row_keys[] as $key | getpath($key | split(".")) | if type == "array" then .[] else if type == "object" then to_entries[] else empty end end',Hg={context:{row_keys:["high_level","low_level"],fields:"supported"},get:{row_keys:["children"],fields:"supported"},list:{row_keys:["items"],fields:"supported"},next:{row_keys:["recommended","ready","decision_needed","blocked","held_by_others"],fields:"unsupported"},search:{row_keys:["items"],fields:"supported"},activity:{row_keys:["compact_activity","provenance_activity","activity"],fields:"unsupported"},history:{row_keys:["compact_history","provenance_history","history"],fields:"unsupported"},deps:{row_keys:["graph.nodes","graph.edges","context.nodes","context.edges"],fields:"unsupported"},health:{row_keys:["checks"],fields:"unsupported"},aggregate:{row_keys:["groups"],fields:"unsupported"},duplicates:{row_keys:["clusters"],fields:"unsupported"},stats:{row_keys:["by_type","by_status"],fields:"unsupported"},comments:{row_keys:["comments"],fields:"unsupported"},notes:{row_keys:["notes"],fields:"unsupported"},learnings:{row_keys:["learnings"],fields:"unsupported"},files:{row_keys:["files"],fields:"unsupported"},docs:{row_keys:["docs"],fields:"unsupported"},validate:{row_keys:["checks","warnings"],fields:"unsupported"},contracts:{row_keys:["command_summaries","commands"],fields:"unsupported"}},Kg=[{command:"activity",complete_mode:"full",omissions_by_mode:{compact:[{name:"provenance",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}},{command:"history",complete_mode:"full",omissions_by_mode:{compact:[{name:"raw_history",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}}];function kT(e,t,n){if(e&&t)throw new w(`${n} cannot be combined with --full`,b.USAGE)}function be(e,t=new Set){let n=e.filter(r=>!t.has(r.name)).map(r=>({...r}));return{has_omissions:n.length>0,omitted_field_group_count:n.length,omitted_field_groups:n}}function vT(e,t){let n=Kg.find(o=>o.command===e);if(n===void 0)throw new TypeError(`Unknown mode-paired output command: ${e}`);if(t===n.complete_mode)return be([]);let r=n.omissions_by_mode[t];if(r===void 0)throw new TypeError(`Unknown ${e} output mode: ${t}`);return be(r)}var Gg=[{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 de(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Xg(e){return de(e)&&typeof e.command=="string"&&e.command.trim().length>0&&(e.row_kind==="collection"||e.row_kind==="none")&&Array.isArray(e.row_keys)&&e.row_keys.every(t=>typeof t=="string"&&t.length>0)&&new Set(e.row_keys).size===e.row_keys.length&&(e.fields==="supported"||e.fields==="unsupported")&&(e.row_kind==="collection"?e.row_keys.length>0&&typeof e.jq_selector=="string"&&e.jq_selector.trim().length>0:e.row_keys.length===0&&e.jq_selector===void 0)}var Yg={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"]},Jg={context:["sections_included","high_level","low_level"],get:["item"],list:["items","projection"],next:["recommended","ready","decision_needed","blocked","held_by_others"],search:["items","projection"],activity:["compact_activity","provenance_activity","activity"],history:["compact_history","provenance_history","history"],deps:["tree","graph","projection"],health:["checks"],aggregate:["groups"],duplicates:["clusters"],stats:["totals","by_type","by_status"],comments:["comments"],notes:["notes"],learnings:["learnings"],files:["files"],docs:["docs"],validate:["checks","warnings"],contracts:["command_summaries","commands","selected"]};function Qg(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=Yg[s];if(a===void 0)return;let c=a.filter(d=>Array.isArray(t[d])||de(t[d]));return{command:"graph",row_kind:c.length>0?"collection":"none",row_keys:c,fields:"unsupported",...c.length>0?{jq_selector:hd}:{}}}let o=Hg[r],i=Jg[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((d,l)=>de(d)?d[l]:void 0,t);return Array.isArray(c)||de(c)});return{command:r,row_kind:s.length>0?"collection":"none",row_keys:s,fields:o.fields,...s.length>0?{jq_selector:hd}:{}}})()}function Zg(e){if(!de(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=>de(s)&&typeof s.name=="string"&&s.name.trim().length>0&&typeof s.restore_with=="string"&&s.restore_with.trim().length>0),o=n.filter(s=>typeof s=="string");if(r.length!==t.length||o.length!==n.length)return;let i=new Set(r.map(s=>s.name));if(!(i.size!==r.length||new Set(o).size!==o.length||o.some(s=>!i.has(s))))return be(r,new Set(o))}function eh(e){if(Array.isArray(e.sections_included))return be(Gg,new Set(e.sections_included.filter(t=>typeof t=="string")))}function th(e){if(!de(e.item))return;let t=["children","claim_state","linked"].map(n=>({name:n,restore_with:`--fields ${n}`}));return be(t,new Set(t.flatMap(({name:n})=>e[n]===void 0?[]:[n])))}function bd(e){if(de(e.projection))return be([{name:"full_item_fields",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_item_fields"]:[]))}function nh(e){if(!de(e.projection))return be([]);if(typeof e.projection.mode=="string")return be([{name:"full_check_details",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_check_details"]:[]))}function rh(e){if(!(!de(e.selected)||typeof e.selected.summary!="boolean"))return be([{name:"full_contract_catalog",restore_with:"--full"}],new Set(e.selected.summary?[]:["full_contract_catalog"]))}function oh(e,t){let n=Zg(t);if(n!==void 0)return n;let[r]=e.split(/\s+/u,1);if(r==="context")return eh(t);if(r==="get")return th(t);if(r==="list"||r.startsWith("list-"))return bd(t);if(r==="search")return bd(t)??be([{name:"projection_metadata",restore_with:"--full"}]);if(r==="health")return nh(t);if(r==="contracts")return rh(t)}function wd(e,t){if(e===void 0||!de(t))return t;let n=t.row_contract,r=Xg(n)?n:Qg(e,t),o=r!==void 0?{...t,row_contract:r}:Object.hasOwn(t,"row_contract")?Object.fromEntries(Object.entries(t).filter(([s])=>s!=="row_contract")):t;if(de(o.omission_receipt))return o;let i=oh(e,o);return i===void 0?o:{...o,omission_receipt:i}}import{createHash as ih}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="83fe180b-9d95-5d19-9d3b-ba3821700e61")}catch{}})();var Li=1,kd=4096,sh=/^[A-Za-z0-9_-]+$/;function Ed(e){return e.replace(/^--/u,"").replace(/[-_]([a-z0-9])/gu,(t,n)=>n.toUpperCase())}function CT(e,t){let n=new Set;for(let r of t)if(r.cursor_semantics==="presentation"){n.add(Ed(r.flag));for(let o of r.aliases??[])n.add(Ed(o))}return Object.fromEntries(Object.entries(e).filter(([r])=>!n.has(r)))}function OT(e,t){return ih("sha256").update(e).update("\0").update(ae(t)).digest("hex").slice(0,24)}function $i(e,t,n,r){return Buffer.from(JSON.stringify({version:Li,fingerprint:e,after_id:t,...n===void 0?{}:{after_index:n},...r===void 0?{}:{snapshot:r}})).toString("base64url")}function st(e){return new w(e,b.USAGE,{code:"invalid_query_cursor",nextSteps:["Repeat the original query without --after to obtain a fresh cursor."]})}function ah(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e;return t.version===Li&&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 Fi(e,t){if(typeof e!="string")throw st("Query cursor is malformed.");let n=e.trim();if(n.length===0||n.length>kd||!sh.test(n))throw st("Query cursor is malformed.");let r;try{r=JSON.parse(Buffer.from(n,"base64url").toString("utf8"))}catch{throw st("Query cursor is malformed.")}if(!ah(r))throw st("Query cursor version or payload is unsupported.");let o=r;if(o.fingerprint!==t)throw st(`Query cursor does not match the current filters, sort, or query (${o.fingerprint} != ${t}).`);return{after_id:o.after_id,...o.after_index===void 0?{}:{after_index:o.after_index},...o.snapshot===void 0?{}:{snapshot:o.snapshot}}}function RT(e,t){return Fi(e,t).after_id}function ch(e,t,n,r){if(t===void 0)return 0;let o=Fi(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 st(`Query cursor item ${o.after_id} is no longer present in this result set.`)}return i+1}function NT(e,t){if(t.cursor!==void 0&&Fi(t.cursor,t.fingerprint).snapshot!==t.snapshot)throw st("Query cursor does not match the requested snapshot.");let n=ch(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:$i(t.fingerprint,t.readId(i),n+r.length-1,t.snapshot)}:{}}}var DT=Object.freeze({version:Li,max_length: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]="ae6fbd4a-6c4e-5639-93ac-f107a336e95b")}catch{}})();function ji(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function dh(e,t){let n=e;for(let r of t.split(".")){if(!ji(n))return;n=n[r]}return n}function vd(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],d={...c};s[a]=d,i=c,s=d}return s[r.at(-1)]=n,o}function zi(e){let t=e.row_contract;return ji(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 at(e){return zi(e).flatMap(t=>{let n=dh(e,t);return Array.isArray(n)||ji(n)?[{path:t,value:n}]:[]})}function Ir(e){return at(e).reduce((t,n)=>t+(Array.isArray(n.value)?n.value.length:Object.keys(n.value).length),0)}function Tr(e,t){let n=e;for(let r of at(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=vd(n,r.path,o)}return n}function Sd(e,t){let n=e,r=!1;for(let o of at(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=vd(n,o.path,s)}return{result:n,truncated:r}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="04ad0d11-1fb7-5eb4-8ff0-d81a7090c4ff")}catch{}})();var Ui=256,xd=1e4,lh=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$/u,uh=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/u,fh=new Set(["version","id","token_budget","spent_tokens","seen_item_ids"]),mh=[{valid:e=>e.version===1,reason:"version must equal 1."},{valid:e=>typeof e.id=="string"&&lh.test(e.id),reason:"id must be 1-64 portable identifier characters."},{valid:e=>Number.isSafeInteger(e.token_budget)&&e.token_budget>=Ui,reason:`token_budget must be a safe integer of at least ${Ui}.`},{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<=xd&&e.seen_item_ids.every(t=>typeof t=="string"&&uh.test(t)),reason:`seen_item_ids must contain at most ${xd} portable item identifiers.`}];function Cr(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Ar(e){throw new w(`--output-session ${e}`,b.USAGE,{code:"invalid_read_output_session",field:"outputSession"})}function qi(e){if(e===void 0)return;let t=e;if(typeof e=="string")try{t=JSON.parse(e)}catch{Ar("must be a valid JSON object.")}Cr(t)||Ar("must be a JSON object.");let n=Object.keys(t).filter(i=>!fh.has(i));n.length>0&&Ar(`contains unknown field "${n.sort()[0]}".`);let r=mh.find(i=>!i.valid(t));r!==void 0&&Ar(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 Id(e){if(Cr(e))return typeof e.id=="string"?e.id:typeof e.item_id=="string"?e.item_id:Cr(e.item)&&typeof e.item.id=="string"?e.item.id:void 0}function ph(e){let t=new Set,n=0;for(let r of at(e)){let o=Array.isArray(r.value)?r.value:Object.values(r.value);for(let i of o){if(!Cr(i))continue;if(typeof i.context_ref=="string"){n+=1;continue}let s=Id(i);s!==void 0&&t.add(s)}}return{deliveredIds:t,suppressedRepeatCount:n}}function Td(e,t){let n=new Set(t.seen_item_ids);return Tr(e,r=>{let o=Id(r);return o!==void 0&&n.has(o)?{id:o,context_ref:`session:${t.id}:${o}`}:r})}function Bi(e,t){let{deliveredIds:n,suppressedRepeatCount:r}=ph(e),o=[...new Set([...t.seen_item_ids,...n])].sort(),i={contract_version:1,id:t.id,measurement_scope:"complete_read_envelope",estimator:"ceil(utf8_bytes / 4)",token_budget:t.token_budget,spent_before_tokens:t.spent_tokens,spent_this_call_tokens:0,charged_this_call_tokens:0,spent_total_tokens:t.spent_tokens,remaining_tokens:t.token_budget-t.spent_tokens,exhausted:!1,seen_before_count:t.seen_item_ids.length,new_item_count:n.size,suppressed_repeat_count:r,reference_format:"session:<session-id>:<item-id>",restore_reference_with:"pm get <item-id> --brief",next_state:{version:1,id:t.id,token_budget:t.token_budget,spent_tokens:t.spent_tokens,seen_item_ids:o}},s={...e,read_session:i},a=l=>{i.spent_this_call_tokens=l,i.charged_this_call_tokens=Math.min(t.token_budget-t.spent_tokens,l),i.spent_total_tokens=Math.min(t.token_budget,t.spent_tokens+i.charged_this_call_tokens),i.remaining_tokens=Math.max(0,t.token_budget-i.spent_total_tokens),i.exhausted=i.remaining_tokens<Ui,i.next_state.spent_tokens=i.spent_total_tokens},c=0,d=0;for(let l=0;l<8;l+=1){a(c);let f=Math.ceil(Buffer.byteLength(JSON.stringify(s),"utf8")/4);if(f===c)return s;d=Math.max(d,f),c=f}return a(d),s}function Ad(e){return Math.max(0,e.token_budget-e.spent_tokens)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1726fdce-dc71-5707-ae75-b588691e813d")}catch{}})();var _h=8,yh=64;function gh(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Vi(e,t){return typeof e=="string"?e.length<=240?e:(t.compacted=!0,`${e.slice(0,240)}\u2026`):Array.isArray(e)?e.map(n=>Vi(n,t)):gh(e)?Object.fromEntries(Object.entries(e).map(([n,r])=>[n,Vi(r,t)])):e}function xt(e,t){let n=t.estimated_tokens;for(let r=0;r<_h;r+=1){t.estimated_tokens=n;let o=Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4);if(o===n)return;n=o}t.estimated_tokens=n}function hh(e,t,n){for(let r=0;r<yh;r+=1){if(xt(e,t),t.estimated_tokens<=n)return;let o=at(e).filter(i=>(Array.isArray(i.value)?i.value.length:Object.keys(i.value).length)>1).map(i=>({collection:i,length:Array.isArray(i.value)?i.value.length:Object.keys(i.value).length})).sort((i,s)=>s.length-i.length||i.collection.path.localeCompare(s.collection.path))[0]?.collection;if(!o)return;if(Array.isArray(o.value))o.value.splice(-Math.max(1,Math.ceil(o.value.length/2)));else{let i=Object.keys(o.value);for(let s of i.slice(-Math.max(1,Math.ceil(i.length/2))))delete o.value[s]}t.rows_compacted=!0,e.has_more=!0,e.truncated=!0,typeof e.count=="number"&&(e.count=Ir(e))}}function Cd(e,t,n){let r={compacted:!1},o=Vi(e,r);return t.strings_compacted=r.compacted,o.read_output=t,hh(o,t,n),xt(o,t),o}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0bccb953-bd78-5eee-a78d-8af3e250fa55")}catch{}})();var It=["include","amount","cost","encoding"],Pd=["list","context","search","get","next","health","deps","graph","history","activity","validate","events","contracts","comments","notes","files","docs","stats","aggregate"],Md=["canonical","legacy","intent","default"],Gi={include:"--output-include",amount:"--output-limit",cost:"--output-budget",encoding:"--output-format"},KT=Object.freeze(It.map(e=>Gi[e])),GT=Object.freeze(["--output-session"]),bh={list:{include:["--brief","--compact","--fields","--full"],amount:["--after","--limit","--no-truncate"],cost:["--token-budget"],encoding:["--format","--stream"]},context:{include:["--fields","--section"],amount:["--after","--depth","--limit"],cost:["--token-budget"],encoding:["--format"]},search:{include:["--compact","--fields","--full"],amount:["--after","--limit"],cost:["--token-budget"],encoding:["--format"]},get:{include:["--fields","--full"],amount:["--depth"],cost:["--token-budget"],encoding:["--format"]},next:{amount:["--blocked-limit","--limit"],cost:["--token-budget"],encoding:["--format"]},health:{include:["--brief","--check-only","--full","--summary","--verbose"]},deps:{include:["--collapse","--full","--summary"],amount:["--edge-limit","--max-depth","--node-limit"],cost:["--token-budget"],encoding:["--format"]},graph:{include:["--full","--summary"],amount:["--after","--limit","--max-depth","--max-paths"]},history:{include:["--compact","--full"],amount:["--limit"],encoding:["--format"]},activity:{include:["--compact","--full"],amount:["--limit","--unbounded"],encoding:["--stream"]},validate:{include:["--counts","--full","--verbose"]},events:{include:["--full"],amount:["--limit"],encoding:["--follow"]},contracts:{include:["--full","--summary"]},comments:{amount:["--limit"]},notes:{amount:["--limit"]},files:{amount:["--limit","--no-truncate","--offset"]},docs:{},stats:{},aggregate:{}},wh=new Set(["--fields","--section"]),Eh=Object.freeze({"--after":"--after retains cursor-position semantics; use --output-limit <n> separately to bound returned rows.","--check-only":"--check-only retains health side-effect semantics; --output-include does not suppress vector refresh.","--depth":"--depth retains traversal or detail-depth semantics; --output-limit does not replace it.","--follow":"--follow retains event-tail semantics; --output-format does not enable following.","--max-depth":"--max-depth retains graph traversal-depth semantics; --output-limit does not replace it.","--max-paths":"--max-paths retains graph path-search semantics; use --output-limit separately to bound returned rows.","--offset":"--offset retains positional pagination semantics; use --output-limit separately to bound returned rows.","--stream":"--stream retains command streaming semantics; --output-format selects only static result encoding."});function Ld(e){return e.slice(2).replaceAll("-","_")}function kh(e,t){let n=Eh[e];if(n!==void 0)return n;let r=t==="include"?wh.has(e)?"<csv>":Ld(e):t==="amount"?"<n>":t==="cost"?"<tokens>":"<toon|json>";return`${e} is a compatibility alias; prefer ${Gi[t]} ${r}.`}function vh(e){let t=bh[e],n=Object.freeze(Object.fromEntries(It.map(r=>[r,Object.freeze({dimension:r,canonical_option:Gi[r],applicable:!0,inapplicable_reason:null,legacy_aliases:Object.freeze((t[r]??[]).map(o=>Object.freeze({flag:o,migration_hint:kh(o,r),visibility:"hidden_alias"})))})])));return Object.freeze({command:e,dimensions:n,precedence:Md})}var Sh=Object.freeze(Pd.map(vh)),xh=new Map(Sh.map(e=>[e.command,e]));function $d(e){let t=e.trim().toLowerCase().split(/\s+/u)[0],n=t.startsWith("list-")?"list":t==="ctx"?"context":t;return Pd.includes(n)?n:void 0}var Ih=["outputInclude","output_include","outputLimit","output_limit","outputBudget","output_budget","outputFormat","output_format","outputSession","output_session"],Th={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 Ah(e){return Ih.some(t=>e[t]!==void 0)}var Ch=[{keys:["outputInclude","output_include"],valid:e=>Wi(e)!==void 0,message:"--output-include requires at least one comma-separated field or section."},{keys:["outputLimit","output_limit"],valid:e=>e==="unbounded"||Tt(e)!==void 0,message:"--output-limit must be a positive integer or unbounded."},{keys:["outputBudget","output_budget"],valid:e=>Tt(e)!==void 0,message:"--output-budget must be a positive integer."},{keys:["outputFormat","output_format"],valid:e=>e==="toon"||e==="json",message:"--output-format must be toon or json."},{keys:["outputSession","output_session"],valid:e=>(qi(e),!0),message:"--output-session must be a valid session-state object."}];function XT(e,t){if(!Ah(t))return;let n=$d(e);if(!n)throw new w(`Universal output controls apply only to read commands; ${e||"this command"} is not a read surface.`,b.USAGE);if((Th[n]??[]).some(r=>t[r]!==void 0&&t[r]!==!1))throw new w(`Universal output controls cannot be combined with a ${n} mutation.`,b.USAGE);for(let r of Ch){let o=r.keys.map(i=>t[i]).find(i=>i!==void 0);if(o!==void 0&&!r.valid(o))throw new w(r.message,b.USAGE)}}function Oh(e){return e.slice(2).replace(/-([a-z])/gu,(t,n)=>n.toUpperCase())}function Rh(e,t){let n=Oh(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 Nh(e){return e!==void 0&&e!==!1&&e!==null}function Wi(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 Tt(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 Dh(e,t,n){for(let r of e.legacy_aliases){let o=Rh(t,r.flag),i={value:o,flag:r.flag};if(Nh(o)&&n(i))return i}}function Od(e,t){let n=Wi(e);if(n)return{source:"canonical",value:n};if(t)return{source:"legacy",value:Wi(t.value)??[Ld(t.flag)]}}function Rd(e,t){if(e==="unbounded")return{source:"canonical",value:"unbounded"};let n=Tt(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=Tt(t.value);return r===void 0?void 0:{source:"legacy",value:r}}function Nd(e,t){let n=Tt(e);if(n!==void 0)return{source:"canonical",value:n};if(!t)return;let r=Tt(t.value);return r===void 0?void 0:{source:"legacy",value:r}}function Dd(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 Fd(e,t){let n=$d(e);if(!n)return;let r=xh.get(n),o={include:c=>Od(void 0,c),amount:c=>Rd(void 0,c),cost:c=>Nd(void 0,c),encoding:c=>Dd(void 0,c)},i=Object.fromEntries(It.map(c=>[c,Dh(r.dimensions[c],t,d=>o[c](d)!==void 0)])),s=It.flatMap(c=>{let d=i[c];return d?[d.flag]:[]}),a=It.flatMap(c=>{let d=i[c];return d?[r.dimensions[c].legacy_aliases.find(f=>f.flag===d.flag).migration_hint]:[]});return{command:n,include:Od(t.outputInclude??t.output_include,i.include),amount:Rd(t.outputLimit??t.output_limit,i.amount),cost:Nd(t.outputBudget??t.output_budget,i.cost),encoding:Dd(t.outputFormat??t.output_format,i.encoding),legacy_aliases_used:s,migration_hints:a,precedence:Md}}function Hi(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}var Ph=new Set(["applied_bound","applied_limit","completeness","continuation_contract","count","filters","has_more","next_cursor","now","omission_receipt","projection","row_contract","sorting","total","truncated"]);function Mh(e,t){let n=new Set(t.map(r=>r.split(".")[0]));return Object.fromEntries(Object.entries(e).filter(([r])=>n.has(r)))}function Lh(e,t){let n=zi(e),r=t.flatMap(i=>n.flatMap(s=>i.startsWith(`${s}.`)?[i.slice(s.length+1)]:[])),o=t.some(i=>Object.hasOwn(e,i.split(".")[0])&&!n.some(s=>i.startsWith(`${s}.`)));if(n.length>0&&(!o||r.length>0)){let i={...e};return Tr(i,s=>Hi(s)?Mh(s,r.length>0?r:t):s)}return Object.fromEntries(Object.entries(e).filter(([i])=>t.some(s=>s.split(".")[0]===i)||Ph.has(i)))}function $h(e,t){if(t==="unbounded")return e;let{result:n,truncated:r}=Sd(e,t);return r&&(n.has_more=!0,n.truncated=!0,typeof n.count=="number"&&(n.count=Ir(n)),n.applied_bound={kind:"output_limit",source:"explicit",value:t}),n}function Fh(e){return It.filter(t=>e[t]!==void 0)}function Ki(e,t,n){let r=Bi(e,t);for(let o=0;o<8;o+=1){let i=n.estimated_tokens,s=r.read_session.spent_this_call_tokens;xt(r,n),r=Bi(r,t);let a=r.read_session.spent_this_call_tokens;if(n.estimated_tokens===i&&a===s)return r}return r}function jh(e,t,n){let r={...e};return t.include?.source==="canonical"&&(r=Lh(r,t.include.value)),t.amount?.source==="canonical"&&(r=$h(r,t.amount.value)),n===void 0?r:Td(r,n)}function zh(e,t){let n=[...e.cost?.source==="canonical"?[e.cost.value]:[],...t===void 0?[]:[Ad(t)]];return n.length===0?void 0:Math.min(...n)}function Uh(e,t,n,r){let o={contract_version:1,command:e.command,requested_dimensions:t,precedence:e.precedence,legacy_aliases_used:[],migration_hints:[],estimated_tokens:0,within_budget:!1,strings_compacted:!1,rows_compacted:!1,result_omitted:!0},i={output_budget_exceeded:{omitted_result:!0,reason:"requested_budget_infeasible",restore_with:"Increase --output-budget or narrow the read."},read_output:o},s=n===void 0?i:Ki(i,n,o);if(n===void 0&&xt(s,o),n!==void 0&&o.estimated_tokens>r)throw new w("The remaining output-session budget cannot fit its mandatory receipts; start a new session with a larger token_budget.",b.USAGE);return s}function jd(e,t,n){let r=Fd(e,t);if(!r)return n;let o=qi(t.outputSession??t.output_session),i=Fh(r);if(i.filter(l=>r[l]?.source==="canonical").length===0&&o===void 0)return n;let a=jh(n,r,o),c={contract_version:1,command:r.command,requested_dimensions:i,precedence:r.precedence,legacy_aliases_used:r.legacy_aliases_used,migration_hints:r.migration_hints,estimated_tokens:0,within_budget:!0,strings_compacted:!1,rows_compacted:!1,result_omitted:!1};a.read_output=c,a=o===void 0?a:Ki(a,o,c),xt(a,c);let d=zh(r,o);return d!==void 0&&c.estimated_tokens>d&&(a=Cd(a,c,d),o!==void 0&&(a=Ki(a,o,c))),d!==void 0&&c.estimated_tokens>d?Uh(r,i,o,d):a}function YT(e){return Hi(e)&&Hi(e.output_budget_exceeded)&&e.output_budget_exceeded.omitted_result===!0&&e.output_budget_exceeded.reason==="requested_budget_infeasible"}function zd(e,t){let n=Fd(e,t)?.encoding;return n?.value==="json"||n?.value==="toon"?n.value:void 0}import{AsyncLocalStorage as qh}from"node:async_hooks";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e48a306e-debb-5e66-ae9b-68bf17fa405f")}catch{}})();var qd=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"}]),Bd=new qh;function Bh(){return Bd.getStore()??qd}function oA(e,t){return Bd.run(Wh(e.workspaceContracts,e.packageContracts),t)}function Vh(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 Wh(e=[],t=[]){let n=[{source:"core",contracts:qd,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=Vh(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 Vd(e,t,n=Bh()){let r=e.trim().toLowerCase(),o=t.trim().toLowerCase(),i=n.find(d=>d.command===r&&d.intent===o);if(i)return{...i,source:i.source??"core"};let s=n.filter(d=>d.command===r).map(d=>d.intent);if(s.length===0)return;let a=s.map(d=>{let l=Array.from({length:o.length+1},(f,p)=>p);for(let f=1;f<=d.length;f+=1){let p=l[0];l[0]=f;for(let m=1;m<=o.length;m+=1){let h=l[m];l[m]=Math.min(l[m]+1,l[m-1]+1,p+(d[f-1]===o[m-1]?0:1)),p=h}}return{candidate:d,distance:l[o.length]}}).sort((d,l)=>d.distance-l.distance||d.candidate.localeCompare(l.candidate))[0].candidate,c=`pm ${r} --for ${a}`;throw new w(`Unknown context intent "${o}" for ${r}. Did you mean "${a}"?`,b.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 Wd={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=Rr(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=Rr(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=Rr(e.tokenBudget,t.token_budget),o=Math.max(2,Math.floor((r-480)/16));e.limit=String(n?o:Math.min(100,o))}}};function iA(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 w("--token-budget requires a declared context intent selected with --for",b.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=Vd(e,t.for),o=Yi(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)),Wd[e](i,r,o),i}var Hh={context:"bounded_sections",get:"standard_item",list:"bounded_fields_and_rows",next:"bounded_ranked_rows",search:"bounded_ranked_rows"},Or=256;function Xi(e){return Array.isArray(e)?e.map(Xi):e!==null&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,n])=>[t,Xi(n)])):typeof e=="string"&&e.length>240?`${e.slice(0,240)}\u2026`:e}function Yi(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 Rr(e,t){let n=Yi(e);if(n===void 0)return t;if(n<Or)throw new w(`Context intent token budget must be at least ${Or}`,b.USAGE,{code:"invalid_argument_value",reason:"below_minimum",field:"tokenBudget",required:`Use an integer token budget of at least ${Or}.`,why:"Smaller ceilings cannot contain the minimum machine-readable intent receipt.",nextSteps:[`Retry with --token-budget ${Or} or omit the override.`]});return n}function je(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 Ud={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 Hd(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 Kh(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 Gh(e,t,n){let r=!1;for(;;){if(je(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 Xh(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=Hd(i);if(s===void 0)return!1;let a=r.length,c=[...r],d=!1;for(;;){if(d=Gh(e,t,r)||d,!d)return!1;let l=Kh(r.at(-1));if(l===void 0)return r.splice(0,r.length,...c),je(e,t),!1;if(e.next_cursor=$i(s.fingerprint,l,o?s.after_index-(a-r.length):s.after_index+r.length,s.snapshot),je(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 Yh(e,t,n,r){if(e==="list"||e==="search")return Xh(t,n,r);if(e!=="next"||typeof t.next_cursor=="string")return!1;let o=!1;for(;;){if(je(t,n),n.estimated_tokens<=n.token_budget)return o;let i=Ud[e].map(p=>({key:p,rows:Array.isArray(t[p])?t[p]:[]})).filter(({rows:p})=>p.length>0).sort((p,m)=>m.rows.length-p.rows.length||p.key.localeCompare(m.key))[0];if(i===void 0)return o;let s=Ud[e].reduce((p,m)=>p+(Array.isArray(t[m])?t[m].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"),d=Math.max(1,Math.ceil(c/i.rows.length)),l=(n.estimated_tokens-n.token_budget)*4,f=Math.min(a,Math.max(1,Math.ceil(l/d)));i.rows.splice(-f,f),o=!0}}function Jh(e,t,n){if(typeof t.for!="string")return n;let r=e.startsWith("list-")?"list":e;if(!(r in Wd))return n;let o=r,i=Vd(o,t.for),s={command:o,intent:i.intent,source:i.source,included_field_groups:[...i.included_field_groups],token_budget:Rr(t.tokenBudget??t.token_budget,i.token_budget),estimated_tokens:0,within_budget:!0,degradation:Hh[o],declaration_feasible:!0,result_omitted:!1},a={...n};if(o==="list"||o==="search"){let d=o==="list"?520:480,l=Math.max(2,Math.floor((s.token_budget-d)/16)),p=Yi(t.tokenBudget??t.token_budget)!==void 0?l:Math.min(100,l),m=t.limit!==void 0;s.budget_derived_limit=p,s.binding_constraint=m?"explicit_limit":"token_budget",s.limit_reason=m?"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 je(c,s),s.estimated_tokens>s.token_budget&&(s.degradation="recursive_budget_compaction",c={...Xi(a),context_intent:s},je(c,s)),s.estimated_tokens>s.token_budget&&Yh(o,c,s,t)&&(s.degradation="budget_row_compaction",je(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},je(c,s)),c}function Qh(e,t){if(typeof e.after!="string"||e.after.length===0)return t;let n=Hd(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 Kd(e,t,n){let r=wd(e,n);return typeof r=="object"&&r!==null&&!Array.isArray(r)?jd(e??"",t,Qh(t,Jh(e??"",t,r))):r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="15daa637-4d30-5794-bdb5-87585d443cd3")}catch{}})();var Zh=[..._e],eb=[...$t],tb=[...xn],cA=[...In],dA=[...Tn],nb=[...An],Nr=["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","gc","workspace","contracts","claim","release","start-task","pause-task","close-task","meet","event","remind","help"],lA=["ancestors","descendants","predecessors","successors","paths","impact","analyze","audit","communities","redundancy","dominators","slack","centrality","articulation","plan","index"],rb=["init","install","uninstall","explore","manage","describe","reload","doctor","catalog","adopt","adopt-all","activate","deactivate"],Gd={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."},Xd=Object.freeze(Nr.flatMap(e=>e in Gd?[]:e==="extension"||e==="package"?[...rb.map(t=>`${e}-${t}`),e]:[e]));function uA(e=Nr,t=Xd,n=Gd){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 fA(e){return Xd.includes(e)}function mA(e){return Zh.includes(e)}function pA(e){return eb.includes(e)}function _A(e){return tb.includes(e)}function yA(e){return nb.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 ob=["full","compact","brief","summary","counts"],bA=["mutation","read","discovery","governance"],ib=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"]),sb=new Set(["contracts","extension","help","install","package","packages","profile","upgrade"]),ab=new Set(["gc","health","merge","stats","telemetry","test","test-all","validate"]),cb={mutation:2e3,read:4e3,discovery:3e3,governance:6e3},db=3,lb=2;function ub(e){let[t=""]=e.trim().split(/\s+/u);return ib.has(t)?"mutation":sb.has(t)?"discovery":ab.has(t)?"governance":"read"}function Yd(e,t=ub(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=cb[t];return fb({command:n,budget_class:t,default_max_estimated_tokens:r,default_max_estimated_tokens_by_format:{toon:r,json:Math.ceil(r*db/lb)},degradation_ladder:ob,allows_unbounded_opt_out:!0,token_estimate:"ceil(utf8_bytes / 4)"})}function fb(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 mb=Nr.map(e=>Yd(e)),pb=new Map(mb.map(e=>[e.command,e]));function wA(e,t={}){let n=e.trim().replace(/\s+/gu," "),[r]=n.split(" "),o=pb.get(r);return o?{...o,command:n}:t.generateFallback?Yd(n):null}function Dr(e){return Math.ceil(Math.max(0,e)/4)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="02baf966-46eb-5e19-b7eb-2f9fe05bb263")}catch{}})();var At=["result_rows","envelope","diagnostics","hints"],_b=/^(?:items|results|rows|ready|blocked|recommended|decision_needed|children|dependencies|events|matches|commands|tools)$/u,yb=/^(?:diagnostics|errors?|warnings?|findings|violations|failures?)$/u,gb=/^(?:hints?|suggestions?|next_steps?|recovery|remediation|examples?)$/u,hb=8;function Ji(e){return Buffer.byteLength(e,"utf8")}function Jd(e){return Ji(JSON.stringify(e)??"null")}function bb(e,t){return yb.test(e)?"diagnostics":gb.test(e)?"hints":_b.test(e)||Array.isArray(t)?"result_rows":"envelope"}function wb(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"]=Jd(e),t;for(let[n,r]of Object.entries(e))t[bb(n,r)]+=Jd({[n]:r});return Object.values(t).every(n=>n===0)&&(t.envelope=1),t}function Eb(e,t){let n=At.reduce((s,a)=>s+t[a],0),r=At.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-At.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))||At.indexOf(a.section)-At.indexOf(c.section))){if(i===0)break;o[s.section]+=1,i-=1}return o}function Qd(e,t){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e,token_accounting:t}:{result:e,token_accounting:t}}function Zd(e,t){let n=Ji(t(e)),r=Eb(n,wb(e)),o=Object.fromEntries(At.map(a=>[a,{bytes:r[a],estimated_tokens:Dr(r[a])}])),i={version:1,measurement_scope:"output_before_token_accounting",estimator:"ceil(utf8_bytes / 4)",total_bytes:n,total_estimated_tokens:Dr(n),sections:o,accounting_receipt_bytes:0,accounting_receipt_estimated_tokens:0,excluded_fields:["token_accounting"],section_allocation:"proportional_canonical_json"},s=Qd(e,i);for(let a=0;a<hb;a+=1){let c=Ji(t(s))-n;if(c===i.accounting_receipt_bytes)return s;i={...i,accounting_receipt_bytes:c,accounting_receipt_estimated_tokens:Dr(c)},s=Qd(e,i)}return s}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4a84286a-e1e3-5465-94c9-b44f8e4472d5")}catch{}})();var Zi="__pm_native_output",el=!1;function re(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function kb(e){return re(e)&&e[Zi]===!0}function vb(e){if(!re(e)||e[Zi]!==!0)return e;let{[Zi]:t,...n}=e;return n}function es(e){return typeof e=="object"&&e!==null&&e.code==="EPIPE"}function Sb(){(process.exitCode===void 0||process.exitCode===b.SUCCESS)&&(process.exitCode=b.SUCCESS)}function xb(){(process.exitCode===void 0||process.exitCode===b.SUCCESS)&&(process.exitCode=b.GENERIC_FAILURE)}function ts(e){if(e==="stdout"){Sb();return}xb()}function tl(e){let t=e instanceof Error?e:new Error(String(e));setImmediate(()=>{throw t})}function Ib(){el||(el=!0,process.stdout.on("error",e=>{if(es(e)){ts("stdout");return}tl(e)}),process.stderr.on("error",e=>{if(es(e)){ts("stderr");return}tl(e)}))}function rl(e,t){Ib();try{return e==="stdout"?process.stdout.write(t):process.stderr.write(t),!0}catch(n){if(es(n))return ts(e),!1;throw n}}function Tb(e){return rl("stdout",e)}function dn(e){return rl("stderr",e)}function Qi(e){return typeof e=="string"?JSON.stringify(e):typeof e=="number"||typeof e=="boolean"?String(e):e===null?"null":JSON.stringify(e)}function Pr(e){if(e!=null){if(Array.isArray(e)){let t=e.map(n=>Pr(n)).filter(n=>n!==void 0);return t.length>0?t:void 0}if(re(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=Pr(r);o!==void 0&&(t[n]=o)}return Object.keys(t).length>0?t:void 0}return e}}function ns(e,t){let n=" ".repeat(t);if(Array.isArray(e))return e.length===0?"[]":e.map(r=>{if(!re(r)&&!Array.isArray(r))return`${n}- ${Qi(r)}`;let i=ns(r,t+1).split(`
|
|
13
|
-
`),[s,...a]=i;return a.length===0?`${n}- ${s.trimStart()}`:`${n}- ${s.trimStart()}
|
|
14
|
-
${a.join(`
|
|
15
|
-
`)}`}).join(`
|
|
16
|
-
`);if(re(e)){let r=Object.entries(e);return r.length===0?"{}":r.map(([o,i])=>!re(i)&&!Array.isArray(i)?`${n}${o}: ${Qi(i)}`:Array.isArray(i)&&i.length===0?`${n}${o}: []`:re(i)&&Object.keys(i).length===0?`${n}${o}: {}`:`${n}${o}:
|
|
17
|
-
${ns(i,t+1)}`).join(`
|
|
18
|
-
`)}return`${n}${Qi(e)}`}function Ab(e){if(!re(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=re(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(`
|
|
19
|
-
`)}
|
|
20
|
-
`;for(let r of e.events){if(!re(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(`
|
|
21
|
-
`)}
|
|
22
|
-
`}function Cb(e){return e.json===!0||e.json===void 0&&e.defaultOutputFormat==="json"?"json":"toon"}var Ob=new Set(["filters","now","projection","sorting"]);function Rb(e){let t=Pr(e);if(!re(t)||!Array.isArray(t.items))return t??null;let n=Object.fromEntries(Object.entries(t).filter(([r])=>!Ob.has(r)));return n.has_more!==!0&&delete n.next_cursor,n}function Nb(e,t){if(!re(e)||!Array.isArray(e.run_results)||!e.run_results.every(re))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:d,...l}=s;return o===void 0?s:!t||s.status!=="passed"?{...l,stdout:c,stderr:d}:l});return{...e,...o===void 0?{}:{execution_context:o},run_results:i}}function nl(e,t){if(t==="json")return`${JSON.stringify(e,null,2)}
|
|
23
|
-
`;let n=Pr(e);return n===void 0?`{}
|
|
24
|
-
`:`${ns(n,0)}
|
|
25
|
-
`}function Db(e,t,n,r){let o=t?{handled:!1,result:e,warnings:[]}:mi("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&&dn(`Warning: ${i}. Returning context.payload now declines safely for compatibility; migrate the override to declineServiceOverride() or { handled: false }.
|
|
26
|
-
`),o.handled&&typeof o.result=="string"?{result:o.result,rendered:o.result.endsWith(`
|
|
27
|
-
`)?o.result:`${o.result}
|
|
28
|
-
`}:{result:o.handled?o.result:e,rendered:null}}function Pb(e,t,n){let r=gc(),o=n.command??r?.command,i={...r?.options,...n.commandOptions,...Object.fromEntries([["outputInclude",n.outputInclude],["outputLimit",n.outputLimit],["outputBudget",n.outputBudget],["outputFormat",n.outputFormat],["outputSession",n.outputSession]].filter(h=>h[1]!==void 0))},s=zd(o??"",i)??Cb(n),a={...n,command:o,commandOptions:i},c=Db(e,t,a,s);if(c.rendered!==null)return c.rendered;let d=c.result,l=o==="test"?Nb(d,n.lean===!0):d,f=Kd(o,i,l),p=h=>{if(s==="toon"){let y=Ab(h);if(y!==null)return y}let _=t?{rendered:null}:wc(s,h);return _.rendered!==null?_.rendered.endsWith(`
|
|
29
|
-
`)?_.rendered:`${_.rendered}
|
|
30
|
-
`:s==="json"?nl(n.lean===!0?Rb(h):h,"json"):nl(h,"toon")},m=n.tokenAccounting===!0?Zd(f,p):f;return p(m)}function Mb(e,t){let n=bc(e),r=_d(n.result)?n.result:null,o=kb(n.result),i=r?r.result:vb(n.result);return hc(i),r?"":Pb(i,o,t)}function RA(e,t){let n=t.idOnly?xr(e,{idOnly:!0}):t.fullChangedFields?e:t.noChangedFields?xr(e,{changedFields:"compact"}):xr(e,{compactEnvelope:!0}),r=Mb(n,t);t.quiet||Tb(r)}function NA(e){let t=mi("error_format",{message:e}),n=t.handled&&typeof t.result=="string"?t.result:e;dn(n.endsWith(`
|
|
31
|
-
`)?n:`${n}
|
|
32
|
-
`)}import ul from"fast-json-patch";import ze from"node:fs/promises";import Ae from"node:path";import{randomUUID as Lb}from"node:crypto";import{createRequire as $b}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 Fb="history-event-index.sqlite",rs="2";function $r(e){return Ae.join(e,"runtime",Fb)}function jb(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}function zb(e,t){let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=22?jb(t):null}var Mr;function os(){return Mr!==void 0||(Mr=zb(process.versions.node,$b(import.meta.url))),Mr}function Ub(e){e.exec(`
|
|
33
|
-
PRAGMA journal_mode = OFF;
|
|
34
|
-
PRAGMA synchronous = OFF;
|
|
35
|
-
CREATE TABLE metadata (
|
|
36
|
-
key TEXT PRIMARY KEY,
|
|
37
|
-
value TEXT NOT NULL
|
|
38
|
-
) STRICT;
|
|
39
|
-
CREATE TABLE events (
|
|
40
|
-
stream_id TEXT NOT NULL,
|
|
41
|
-
stream_offset INTEGER NOT NULL,
|
|
42
|
-
ts TEXT NOT NULL,
|
|
43
|
-
author TEXT NOT NULL,
|
|
44
|
-
agent_harness TEXT,
|
|
45
|
-
agent_instance TEXT,
|
|
46
|
-
op TEXT NOT NULL,
|
|
47
|
-
entry_json TEXT NOT NULL,
|
|
48
|
-
PRIMARY KEY(stream_id, stream_offset)
|
|
49
|
-
) STRICT;
|
|
50
|
-
CREATE INDEX events_order
|
|
51
|
-
ON events(ts, stream_id, stream_offset);
|
|
52
|
-
CREATE INDEX events_op_order
|
|
53
|
-
ON events(op, ts, stream_id, stream_offset);
|
|
54
|
-
CREATE INDEX events_author_order
|
|
55
|
-
ON events(author, ts, stream_id, stream_offset);
|
|
56
|
-
CREATE INDEX events_harness_order
|
|
57
|
-
ON events(agent_harness, ts, stream_id, stream_offset);
|
|
58
|
-
CREATE INDEX events_instance_order
|
|
59
|
-
ON events(agent_instance, ts, stream_id, stream_offset);
|
|
60
|
-
`),e.prepare("INSERT INTO metadata(key, value) VALUES ('version', ?)").run(rs)}function ol(e,t){e.prepare(`INSERT INTO events(
|
|
61
|
-
stream_id, stream_offset, ts, author, agent_harness,
|
|
62
|
-
agent_instance, op, entry_json
|
|
63
|
-
) 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 jA(e){let t=os();if(!t)return!1;let n=Ae.join(e,"history"),o=(await ze.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,d)=>c.name.localeCompare(d.name)),i=$r(e);await ze.mkdir(Ae.dirname(i),{recursive:!0});let s=`${i}.${Lb()}.tmp`,a;try{a=new t(s),Ub(a),a.exec("BEGIN IMMEDIATE");for(let c of o){let d=c.name.slice(0,-6),l=await cn(Ae.join(n,c.name),d);for(let[f,p]of l.entries())ol(a,{stream_id:d,stream_offset:f,entry:p})}return a.exec("COMMIT"),a.close(),a=void 0,await ze.rm(i,{force:!0}),await ze.rename(s,i),!0}catch(c){throw a?.close(),await ze.rm(s,{force:!0}),c}}async function il(e,t){let n=Ae.dirname(Ae.dirname(e)),r=$r(n);try{await ze.access(r)}catch{return}let o=os();if(!o)return;let i;try{if(i=new o(r),i.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==rs)throw new TypeError("Unsupported history event index version");let a=Ae.basename(e,".jsonl"),c=i.prepare("SELECT COALESCE(MAX(stream_offset), -1) + 1 AS value FROM events WHERE stream_id = ?").get(a);ol(i,{stream_id:a,stream_offset:Number(c.value),entry:t}),i.close()}catch{i?.close(),await ze.rm(r,{force:!0})}}async function Fr(e){await ze.rm($r(Ae.dirname(Ae.dirname(e))),{force:!0})}function Lr(e,t,n,r){!r||r.length===0||(e.push(`${n} IN (${r.map(()=>"?").join(", ")})`),t.push(...r))}function qb(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 zA(e,t){let n=os();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)),Lr(r,o,"op",t.ops),Lr(r,o,"author",t.authors),qb(r,o,t.harnesses,t.harness_alias_authors),Lr(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);Lr(r,o,"stream_id",t.stream_ids);let i=r.length===0?"":` WHERE ${r.join(" AND ")}`,s;try{if(s=new n($r(e),{readOnly:!0}),s.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==rs)return s.close(),null;let c=s.prepare(`SELECT stream_id, stream_offset, entry_json
|
|
64
|
-
FROM events${i}
|
|
65
|
-
ORDER BY ts, stream_id, stream_offset
|
|
66
|
-
LIMIT ?`).all(...o,Math.max(0,Math.floor(t.limit))+1),d=c.length>t.limit,l=c.slice(0,t.limit).map(f=>({stream_id:String(f.stream_id),stream_offset:Number(f.stream_offset),entry:JSON.parse(String(f.entry_json))}));return s.close(),{events:l,has_more:d}}catch{return s?.close(),null}}import is from"node:fs/promises";import Ct from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4db09d54-90c6-548b-baa8-c7ce419f70a2")}catch{}})();var Bb=Ct.join("runtime","history-drift-cache.json"),sl={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 al(e){return typeof e=="object"&&e!==null&&"code"in e&&typeof e.code=="string"?e.code:void 0}async function Vb(e){let t=Ct.join(e,Bb),n=!1,r="invalid_cache_path";try{n=(await is.stat(await is.realpath(e))).isDirectory()}catch(o){let i=al(o);r=i===void 0?"unknown":sl[i]??"filesystem_error"}if(!n){dn(`[pm] warning: history_drift_cache_invalidation_failed:${r}
|
|
67
|
-
`);return}try{await is.rm(t,{force:!0})}catch(o){let i=al(o);if(i==="ENOENT")return;let s=i===void 0?"unknown":sl[i]??"filesystem_error";dn(`[pm] warning: history_drift_cache_invalidation_failed:${s}
|
|
68
|
-
`)}}async function ln(e){let t=Ct.dirname(Ct.resolve(e));Ct.basename(t)==="history"&&await Vb(Ct.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]="5228a53a-603c-5c9f-870b-8ea8e0c5d27a")}catch{}})();var Wb={front_matter:{},body:""};function Hb(e){return!e||e==="/"?[]:e.startsWith("/")?e.slice(1).split("/").map(t=>t.replaceAll("~1","/").replaceAll("~0","~")):[]}function Kb(e,t){let n=Hb(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 Gb(e,t){let n=[],r=structuredClone(e);for(let o of t){let i=o.op==="replace"&&!Kb(r,o.path)?{...o,op:"add"}:o;n.push(i),r=ul.applyPatch(r,[i],!0,!0).newDocument}return n}function ss(e){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{front_matter:{},body:e.body??""};let n=me(e);return{front_matter:x(n.metadata,ye),body:n.body}}function cl(e){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{metadata:{},body:e.body??""};let n=me(e);return{metadata:x(n.metadata,ye),body:n.body}}function fl(e){return Xe(ae(ss(e)))}function rC(){return Xe(ae(Wb))}function Ot(e){let t=ss(e.before),n=ss(e.after),r=cl(e.before),o=cl(e.after),i=ul.compare(r,o),s=Gb(r,i),a=fd(e.author);return{ts:e.nowIso,author:e.author,author_source:e.authorSource??ud(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:Xe(ae(t)),after_hash:Xe(ae(n)),message:e.message===void 0?void 0:e.message,...e.context===void 0?{}:{context:e.context}}}function dl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Xb(e){let t=e.ts.trim();return t.length>0?t:Ke()}function ll(e,t){let n=e.ts;return typeof n=="string"&&n.trim().length>0?e:{...e,ts:t}}function jr(e,t){let n=Xb(t);if(typeof e=="string"){try{let r=JSON.parse(e);if(dl(r))return JSON.stringify(ll(r,n))}catch{}return e}return dl(e)?JSON.stringify(ll(e,n)):JSON.stringify(e)}async function Rt(e,t){let n=await Te("history_append",{history_path:e,entry:t});if(n.handled){if(n.result===!1)return;if(typeof n.result=="string"){await Lt(e,jr(n.result,t)),await ln(e),await Fr(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 Lt(o,jr(r.line,t)),await ln(o),await Fr(o);return}await Lt(o,jr(r.entry??t,t)),await ln(o),await Fr(o);return}}await Lt(e,jr(t,t)),await ln(e),await il(e,t)}import as from"fast-json-patch";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c8668470-7e57-5dee-8e41-298e7c697b77")}catch{}})();var Yb={metadata:{},body:""};function Ur(){return structuredClone(Yb)}function zr(e){if(Object.keys(e.metadata).length===0||Array.isArray(e.metadata.tags))try{return fl(qr(e))}catch{}return Xe(ae({replay_fallback:!0,metadata:e.metadata,body:e.body}))}function qr(e){return{metadata:e.metadata,body:e.body}}function uC(e,t={}){return me(qr(e),t)}function fC(e){if(!e.metadata||Object.keys(e.metadata).length===0)return{metadata:{},body:e.body??""};let t=me(e);return{metadata:x(t.metadata,ye),body:t.body}}function ml(e){return e==="/front_matter"?"/metadata":e.startsWith("/front_matter/")?`/metadata/${e.slice(14)}`:e}function Jb(e){return typeof e=="object"&&e!==null&&typeof e.op=="string"&&typeof e.path=="string"}function _l(e){return Array.isArray(e)?e.filter(Jb).map(t=>({...t,path:ml(t.path),from:typeof t.from=="string"?ml(t.from):void 0})):[]}function Qb(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 Br(e,t){try{let n=_l(t),r=as.applyPatch(structuredClone(e),n,!0,!1).newDocument;return Qb(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 cs(e){let t=Ur();for(let n=0;n<e.length;n+=1){let r=e[n];if(zr(t)!==r.before_hash)return{ok:!1,errors:[`verify_failed:before_hash_mismatch:entry_${n+1}`]};let o=Br(t,r.patch);if(!o.ok)return{ok:!1,errors:[`verify_failed:patch_apply_failed:entry_${n+1}`]};if(t=o.document,zr(t)!==r.after_hash)return{ok:!1,errors:[`verify_failed:after_hash_mismatch:entry_${n+1}`]}}return{ok:!0,errors:[]}}function pl(e,t){try{return{ok:!0,document:as.applyPatch(structuredClone(e),[t],!0,!1).newDocument}}catch{return{ok:!1}}}function Zb(e,t){let n=structuredClone(e),r=0,o=0;for(let a of _l(t)){let c=pl(n,a);if(c.ok){n=c.document;continue}if(a.op==="replace"){let d=pl(n,{...a,op:"add"});if(d.ok){n=d.document,r+=1;continue}}o+=1}let i=n;return{document:{metadata:typeof i.metadata=="object"&&i.metadata!==null?i.metadata:{},body:typeof i.body=="string"?i.body:e.body},convertedReplaceToAdd:r,skippedOps:o}}function mC(e){let t=Ur(),n=[],r=[],o=0,i=0,s=0,a=0;for(let c=0;c<e.length;c+=1){let d=e[c],l=zr(t),f=Br(t,d.patch),p,m,h=!1,_=0,y=0;if(f.ok)p=f.document,m=d.patch;else{let J=Zb(t,d.patch);p=J.document,m=as.compare(t,p),h=!0,_=J.convertedReplaceToAdd,y=J.skippedOps,s+=_,a+=y,i+=1}let T=zr(p),L=l!==d.before_hash||T!==d.after_hash;L&&(o+=1),n.push({...d,patch:m,before_hash:l,after_hash:T}),r.push({index:c+1,rehashed:L,patch_repaired:h,converted_replace_to_add:_,skipped_ops:y}),t=p}return{entries:n,finalDocument:t,entriesRehashed:o,entriesPatchRepaired:i,convertedReplaceToAdd:s,skippedOps:a,details:r}}function pC(e){return e.length===0?"":`${e.map(t=>JSON.stringify(t)).join(`
|
|
69
|
-
`)}
|
|
70
|
-
`}import ew from"node:fs/promises";import tw 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 nw(e){return[...new Set(e.filter(t=>t.trim().length>0))].sort((t,n)=>t.localeCompare(n))}function rw(e,t){return new w(`Missing history stream for ${e}. ${t} requires history streams when settings.history.missing_stream is strict_error.`,b.NOT_FOUND)}async function ow(e,t){return await vn(tw.dirname(e)),await(await ew.open(e,"a")).close(),ue({path:e,scope:"project",op:`${t}:history:auto_create`})}async function ds(e){return iw({pmRoot:e.pmRoot,settings:e.settings,itemIds:[e.itemId],commandLabel:e.commandLabel})}async function iw(e){let t=nw(e.itemIds),n=[],r=[];for(let o of t){let i=qt(e.pmRoot,o);if(!await ke(i)){if(e.settings.history.missing_stream==="strict_error")throw rw(o,e.commandLabel);r.push(...await ow(i,e.commandLabel)),r.push(`history_stream_auto_created:${o}`),n.push(o)}}return{auto_created_ids:n,warnings:r}}import Ce from"node:fs/promises";import ls from"node:path";import{randomUUID as sw}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c638b65d-148a-5b42-8f24-d6fa9d5ac7d3")}catch{}})();function aw(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 bl(e){try{let t=await Ce.readFile(e,"utf8");return await ge({path:e,scope:"project"}),aw(t)}catch(t){return un(t,"ENOENT")?{info:null,warnings:[]}:{info:null,warnings:["lock_info_read_failed"]}}}function un(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}async function wl(e,t){await ue({path:e,scope:"project",op:t})}function cw(e,t,n){return{id:e,pid:process.pid,owner:t,created_at:Ke(),ttl_seconds:n}}async function dw(e,t,n,r){await Ce.mkdir(ls.dirname(e),{recursive:!0});let o=await Ce.open(e,"wx");try{await o.writeFile(`${JSON.stringify(cw(t,n,r),null,2)}
|
|
71
|
-
`,"utf8")}finally{await o.close()}await wl(e,"lock:create")}async function El(e,t){try{return await Ce.unlink(e),await wl(e,t),!0}catch{return!1}}function kl(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 lw(e){return e?.owner?` (owner ${e.owner})`:""}var uw=25,fw=200,mw=250,pw=3,_w=".stale-cleanup",vl="owner.json",yw=1e4,gw=5*6e4;function yl(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 hw(e){let t=process.env.PM_LOCK_WAIT_MS,n=yl(t);if(n!==void 0)return n;let r=yl(e);return r!==void 0?r:0}function bw(e){let t=Math.max(1,Math.round(e*(.5+Math.random())));return new Promise(n=>setTimeout(n,t))}function Sl(e,t,n){let r=n>0?` after waiting ${n}ms`:"";return new w(`Item ${e} is locked${lw(t)}${r}`,b.CONFLICT,{code:"lock_conflict",recovery:{retry_after_ms:mw}})}function ww(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 Ew(e,t,n,r){if(!n&&r){let o=t.warnings.length>0?` (${t.warnings.join(",")})`:"";throw new w(`Item ${e} lock is stale${o}; rerun with --force when supported for this command`,b.CONFLICT)}}function kw(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 xl(e){try{return kw(await Ce.readFile(ls.join(e,vl),"utf8"))}catch{return null}}function vw(e){try{return process.kill(e,0),!0}catch(t){return!un(t,"ESRCH")}}async function us(e){try{return await Ce.rm(e,{recursive:!0,force:!0}),!0}catch{return!1}}async function gl(e,t){let n=await xl(e);n===null||n.token!==t||await us(e)}async function hl(e){try{await Ce.mkdir(e)}catch(n){return un(n,"EEXIST"),null}let t={pid:process.pid,token:sw()};try{await Ce.writeFile(ls.join(e,vl),`${JSON.stringify(t)}
|
|
72
|
-
`,"utf8")}catch{return await us(e),null}return t}async function Sw(e){let t;try{let r=await Ce.stat(e);if(t=Date.now()-r.mtimeMs,t<=yw)return!1}catch(r){return un(r,"ENOENT")}let n=await xl(e);return n!==null&&vw(n.pid)&&t<=gw?!1:us(e)}async function xw(e,t){let n=`${e}${_w}`,r=await hl(n);if(r!==null)return async()=>gl(n,r.token);if(!await Sw(n))return null;let o=await hl(n);return o===null?null:async()=>gl(n,o.token)}async function Iw(e){let t=await xw(e.lockPath,e.id);if(t===null)return{lockInfo:e.fallbackLockInfo,shouldRetryCreate:!1,staleRemovalCounted:!1};try{let n=await bl(e.lockPath);if(n.info===null&&n.warnings.length===0)return{lockInfo:n,shouldRetryCreate:!0,staleRemovalCounted:!1};if(!kl(n.info,e.ttlSeconds))return{lockInfo:n,shouldRetryCreate:!1,staleRemovalCounted:!1};if(Ew(e.id,n,e.force,e.forceRequiredForStaleLock),e.staleRemovals>=pw)throw Sl(e.id,n.info,Date.now()-e.startedAtMs);return{lockInfo:n,shouldRetryCreate:await El(e.lockPath,"lock:stale_remove"),staleRemovalCounted:!0}}finally{await t()}}async function Oe(e,t,n,r,o=!1,i=!0,s){let a=await Te("lock_acquire",{pm_root:e,id:t,ttl_seconds:n,owner:r,force:o,force_required_for_stale_lock:i});if(a.handled){let m=ww(a.result);if(m)return async()=>{await Promise.resolve(m()),await Te("lock_release",{pm_root:e,id:t,owner:r})}}let c=da(e,t),d=hw(s),l=Date.now(),f=0,p=uw;for(;;)try{return await dw(c,t,r,n),async()=>{await El(c,"lock:release"),await Te("lock_release",{pm_root:e,id:t,owner:r})}}catch(m){if(!un(m,"EEXIST"))throw new w(`Failed to acquire lock for ${t}: ${Fs(m)}`,b.GENERIC_FAILURE);let h=await bl(c);if(kl(h.info,n)){let y=await Iw({lockPath:c,id:t,ttlSeconds:n,force:o,forceRequiredForStaleLock:i,staleRemovals:f,waitBudgetMs:d,startedAtMs:l,fallbackLockInfo:h});if(h=y.lockInfo,y.staleRemovalCounted&&(f+=1),y.shouldRetryCreate)continue}let _=Date.now()-l;if(d===0||_>=d)throw Sl(t,h.info,d===0?0:_);await bw(Math.min(p,d-_)),p=Math.min(p*2,fw)}}import Tw from"node:fs/promises";import Il from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="86b45d6b-2192-5d31-8f73-94d6e6b17dfc")}catch{}})();var Vr="_workspace";function Tl(e){return Il.join(e,"history",`${Vr}.jsonl`)}function Aw(e,t){return{metadata:{id:Vr,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 Al(e){let t=Ur();for(let n of e)t=Br(t,n.patch).document;return qr(t)}async function Cl(e){let t=Tl(e.pmRoot),n=await cn(t,Vr),r=cs(n);if(!r.ok)throw new TypeError(`Workspace history verification failed: ${r.errors.join(", ")}`);let o=e.idempotencyKey===void 0?void 0:n.find(f=>f.op===`${e.op}:${e.idempotencyKey}`);if(o)return{entry:o,historyPath:t};let i=new Date().toISOString(),s=n.length===0?Ft:Al(n),a="documents"in s.metadata&&typeof s.metadata.documents=="object"&&s.metadata.documents!==null&&!Array.isArray(s.metadata.documents)?s.metadata.documents:{},c=a[e.documentPath];if(c!==void 0&&ae(c)!==ae(e.before))throw new w(`Workspace history state for "${e.documentPath}" changed outside the audited mutation path.`,b.CONFLICT,{code:"workspace_history_state_conflict",reason:"out_of_band_workspace_state",required:"Reconcile the singleton document with its matching _workspace history state before retrying the mutation.",why:"Accepting the write would make the append-only audit stream describe a state that was not actually observed.",examples:["pm history _workspace --verify","pm validate --check-history-drift --fix-hints"],nextSteps:["Review the version-control change that altered the singleton and preserve the intended document plus its matching workspace history.","Rerun the original mutation only after the on-disk singleton agrees with the latest audited workspace state."],recovery:{recovery_mode:"compact",next_best_command:"pm history _workspace --verify"}});let d=Aw({...a,[e.documentPath]:e.after},n.length===0?i:s.metadata.created_at),l=Ot({nowIso:i,author:e.author,op:e.idempotencyKey===void 0?e.op:`${e.op}:${e.idempotencyKey}`,before:s,after:d,message:e.message});return await Rt(t,l),{entry:l,historyPath:t}}async function VC(e){let t=await Oe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await Cl(e)}finally{await t()}}async function WC(e){let t=await Oe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let n=Tl(e.pmRoot),r=await cn(n,Vr),o=cs(r);if(!o.ok)throw new TypeError(`Workspace history verification failed: ${o.errors.join(", ")}`);let i=r.length===0?Ft:Al(r),s=Ot({nowIso:new Date().toISOString(),author:e.author,op:e.op,before:i,after:i,message:e.message,context:e.context});return await Rt(n,s),{entry:s,historyPath:n}}finally{await t()}}async function Ol(e,t){if(t===e.raw)return!1;let n=t===null?null:JSON.parse(t),r=JSON.parse(e.raw);await Q(e.filePath,e.raw);try{(t!==null||e.recordCreation!==!1)&&await Cl({pmRoot:e.pmRoot,documentPath:Il.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 Tw.rm(e.filePath,{force:!0}):await Q(e.filePath,t),o}return!0}async function HC(e){let t=await Oe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let n=await ve(e.filePath),r=await e.mutate(n);return{changed:await Ol({...e,raw:r.raw},n),result:r.result}}finally{await t()}}async function Rl(e){let t=await Oe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await Ol(e,await ve(e.filePath))}finally{await t()}}import Cw from"node:crypto";import Nl 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 Pl(e){let t=(e??"").trim().toLowerCase();return t?t.endsWith("-")?t:`${t}-`:"pm-"}function fs(e){let t=e.trim().toLowerCase();return t.startsWith("#")&&(t=t.slice(1)),t}function ms(e,t){let n=Pl(t),r=fs(e);return r.startsWith(n)?r:`${n}${r}`}function Ow(e){let t=qs(e);if(t!==void 0)return t;let n="";for(let r=0;r<e;r+=1)n+=Cw.randomInt(0,36).toString(36);return n}async function Rw(e,t,n){let r=[...new Set(Object.values(n))].flatMap(o=>[Nl.join(e,o,`${t}.md`),Nl.join(e,o,`${t}.toon`)]);return(await Promise.all(r.map(o=>ke(o)))).some(Boolean)}var Dl=4,Ml=12;function Nw(e){return typeof e!="number"||!Number.isFinite(e)?Dl:Math.min(Ml,Math.max(Dl,Math.trunc(e)))}async function ZC(e,t,n={}){let r=Nw(n.tokenLength),o=Math.min(r+6,Ml),i=0;for(;r<=o;){for(let s=0;s<32;s+=1){let a=`${Pl(t)}${Ow(r)}`;if(n.probeExisting===!1||!await Rw(e,a,n.typeToFolder??se))return a;i+=1}r+=1}throw new Error(`Unable to generate unique id after ${i} attempts`)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="027f6acb-15cc-5707-85ed-b5298b6b6abe")}catch{}})();var B={ok:!1},g=e=>typeof e=="string"?{ok:!0,value:e}:B,O=e=>typeof e=="boolean"?{ok:!0,value:e}:B;function M(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?B:{ok:!0,value:t}}function N(...e){return t=>typeof t=="string"&&e.includes(t)?{ok:!0,value:t}:B}function E(e,t){return n=>{if(!Array.isArray(n)||t!==void 0&&n.length>t)return B;let r=[];for(let o of n){let i=e(o);if(!i.ok)return B;r.push(i.value)}return{ok:!0,value:r}}}function _s(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}:B}function u(e){return t=>t===void 0?{ok:!0,value:void 0}:e(t)}function Wr(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return B;let n={};for(let[r,o]of Object.entries(t)){let i=e(o);if(!i.ok)return B;n[r]=i.value}return{ok:!0,value:n}}}function I(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return B;let n=t,r={};for(let[o,i]of Object.entries(e)){let s=i(n[o]);if(!s.ok)return B;s.value!==void 0&&(r[o]=s.value)}return{ok:!0,value:r}}}var Dw=I({key:g,values:E(g),required:u(O),aliases:u(E(g)),description:u(g)}),Pw=I({command:N("create","update"),option:g,required:u(O),visible:u(O),enabled:u(O)}),Mw=I({name:g,description:u(g),default_status:u(g),folder:u(g),aliases:u(E(g)),required_create_fields:u(E(g)),required_create_repeatables:u(E(g)),options:u(E(Dw)),command_option_policies:u(E(Pw))}),Lw=I({id:g,aliases:u(E(g)),roles:u(E(N(...Ln))),description:u(g),order:u(M())}),$w=I({key:g,metadata_key:u(g),front_matter_key:u(g),cli_flag:u(g),cli_aliases:u(E(g)),description:u(g),type:u(N(...pt)),commands:u(E(N(...$n))),repeatable:u(O),required:u(O),required_on_create:u(O),required_types:u(E(g)),allow_unset:u(O)}),Fw=e=>{if(!Array.isArray(e)||e.length!==2)return B;let[t,n]=e;return typeof t!="string"||typeof n!="string"?B:{ok:!0,value:[t,n]}},jw=I({type:g,allowed_transitions:E(Fw)}),zw=u(I({version:u(M({int:!0})),files:u(I({types:u(g),statuses:u(g),fields:u(g),workflows:u(g)})),statuses:u(E(Lw)),fields:u(E($w)),workflow:u(I({draft_status:u(g),open_status:u(g),in_progress_status:u(g),blocked_status:u(g),close_status:u(g),canceled_status:u(g)})),type_workflows:u(E(jw)),unknown_field_policy:u(N(...Fn))})),Uw=u(I({preset:u(N(...Xs)),ownership_enforcement:u(N("none","warn","strict")),create_mode_default:u(N("progressive","strict")),close_validation_default:u(N("off","warn","strict")),require_close_reason:u(O),parent_reference:u(N("warn","strict_error")),metadata_profile:u(N("core","strict","custom")),force_required_for_stale_lock:u(O),create_default_type:u(g),workflow_enforcement:u(N("off","warn","strict")),duplicate_detection_mode:u(N("off","advisory","strict")),duplicate_detection_threshold:u(M({min:0,max:1})),duplicate_detection_limit:u(M({int:!0,min:0,max:20}))})),qw=I({name:g,disabled:u(O),require_trusted:u(O),require_provenance:u(O),sandbox_profile:u(N("none","restricted","strict")),allowed_capabilities:u(E(g)),blocked_capabilities:u(E(g)),allowed_surfaces:u(E(g)),blocked_surfaces:u(E(g)),allowed_commands:u(E(g)),blocked_commands:u(E(g)),allowed_actions:u(E(g)),blocked_actions:u(E(g)),allowed_services:u(E(g)),blocked_services:u(E(g))}),ps=N("block","warn"),Bw=e=>typeof e=="string"?ps(e):I({global:u(ps),project:u(ps)})(e),Vw=u(I({mode:u(N("off","warn","enforce")),trust_mode:u(N("off","warn","enforce")),pm_max_version_exceeded_mode:u(Bw),require_provenance:u(O),trusted_extensions:u(E(g)),default_sandbox_profile:u(N("none","restricted","strict")),allowed_extensions:u(E(g)),blocked_extensions:u(E(g)),allowed_capabilities:u(E(g)),blocked_capabilities:u(E(g)),allowed_surfaces:u(E(g)),blocked_surfaces:u(E(g)),allowed_commands:u(E(g)),blocked_commands:u(E(g)),allowed_actions:u(E(g)),blocked_actions:u(E(g)),allowed_services:u(E(g)),blocked_services:u(E(g)),extension_overrides:u(E(qw))})),ct=_s(128),Ww=I({harness:_s(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u),environment_keys:u(E(ct,64)),model_environment_keys:u(E(ct,64)),session_environment_keys:u(E(ct,64)),provenance_environment_keys:u(Wr(E(ct,64))),provenance_resolvers:u(Wr(N("ai_agent_version","claude_session_file"))),provenance_unavailable_dimensions:u(E(ct,64)),argv_markers:u(E(ct,64)),client_names:u(E(ct,64))}),Hw=I({version:M({int:!0}),id_prefix:g,ids:u(I({token_length:u(M({int:!0,min:4,max:12}))})),author_default:g,agent_identity:u(I({probes_enabled:u(O),identity_vocabulary:u(I({version:M({int:!0,positive:!0}),aliases:Wr(_s(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u))})),harness_signals:E(Ww)})),mutation_guard:u(I({require_attributed_author:u(O),secret_guard:u(N("off","advise","block")),stale_in_progress_hours:u(M({int:!0,positive:!0}))})),item_format:u(N("toon","json_markdown")),locks:I({ttl_seconds:M({int:!0}),wait_ms:u(M({int:!0,min:0}))}),checkpoints:u(I({retention_days:u(M({int:!0,positive:!0}))})),output:I({default_format:N("toon","json")}),history:u(I({missing_stream:N("auto_create","strict_error"),compact_policy:u(I({enabled:u(O),max_entries:u(M({int:!0,positive:!0})),trigger:u(N("health_warn","auto"))}))})),validation:u(I({sprint_release_format:N("warn","strict_error"),parent_reference:u(N("warn","strict_error")),metadata_profile:u(N("core","strict","custom")),metadata_required_fields:u(E(g)),lifecycle_stale_blocker_reason_patterns:u(E(g)),lifecycle_closure_like_blocked_reason_patterns:u(E(g)),lifecycle_closure_like_resolution_patterns:u(E(g)),lifecycle_closure_like_actual_result_patterns:u(E(g)),estimate_defaults_by_type:u(Wr(M({int:!0,positive:!0})))})),governance:Uw,workflow:u(I({definition_of_done:E(g)})),testing:u(I({record_results_to_items:O})),telemetry:u(I({enabled:O,first_run_prompt_completed:u(O),capture_level:u(N("minimal","redacted","max")),endpoint:u(g),installation_id:u(g),retention_days:u(M({int:!0,positive:!0}))})),agent_guidance:u(I({prompt_completed:u(O),declined:u(O),declined_at:u(g),template_version:u(M({int:!0,positive:!0})),last_checked_files:u(E(g))})),item_types:u(I({definitions:E(Mw)})),schema:zw,context:u(I({default_depth:u(N("brief","standard","deep")),activity_limit:u(M({int:!0,positive:!0})),stale_threshold_days:u(M({int:!0,positive:!0})),sections:u(I({hierarchy:u(O),activity:u(O),progress:u(O),recently_created:u(O),unparented:u(O),blockers:u(O),files:u(O),workload:u(O),staleness:u(O),tests:u(O)}))})),extensions:I({enabled:E(g),disabled:E(g),policy:Vw}),search:I({score_threshold:M(),hybrid_semantic_weight:u(M()),max_results:M({int:!0}),embedding_model:g,embedding_corpus_max_characters:u(M()),embedding_batch_size:M({int:!0}),embedding_timeout_ms:u(M({int:!0})),scanner_max_batch_retries:M({int:!0}),provider:u(g),corpus_fields:u(E(g)),mutation_refresh_policy:u(N("cache_only","semantic_configured","semantic_auto")),query_expansion:u(I({enabled:u(O),provider:u(g)})),rerank:u(I({enabled:u(O),model:u(g),top_k:u(M({int:!0,positive:!0}))})),bm25:u(I({k1:u(M()),b:u(M())}))}),providers:I({openai:I({base_url:g,api_key:g,model:g}),ollama:I({base_url:g,model:g})}),vector_store:I({adapter:u(g),collection_name:u(g),qdrant:I({url:g,api_key:g}),lancedb:I({path:g})})});function Ll(e){let t=Hw(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 Kw={Epic:2880,Feature:480,Story:480,Milestone:2880,Task:120,Issue:60,Bug:60,Chore:30,Decision:15,Plan:120},$l=120;function ys(e){return typeof e=="number"&&Number.isFinite(e)&&e>0}function jl(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n.toLowerCase(),r);return t}var Gw=jl(Kw),Fl=new WeakMap;function Xw(e){let t=Fl.get(e);if(t)return t;let n=jl(e);return Fl.set(e,n),n}function rO(e,t){let n=(e??"").trim().toLowerCase();if(n.length===0)return $l;if(t){let o=Xw(t).get(n);if(ys(o))return Math.floor(o)}let r=Gw.get(n);return ys(r)?Math.floor(r):$l}function gs(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||!ys(r)||(t[o]=Math.floor(r))}return t}import{stat as Yw}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 Hr=new Map;function zl(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}async function Jw(e){try{let t=await Yw(e);return{path:e,mtime_ms:t.mtimeMs,size:t.size}}catch{return{path:e,mtime_ms:null,size:null}}}async function Ue(e){let t=zl(e),n=await Promise.all(t.map(r=>Jw(r)));return n.sort((r,o)=>r.path.localeCompare(o.path)),n}function fn(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 Ul(e){return Hr.get(e)}function Kr(e,t){let n=zl(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));Hr.set(e,{tracked_paths:n,signatures:r,value:t.value})}function qe(e){if(e){Hr.delete(e);return}Hr.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 Qw="settings:write",Hl=Symbol("pm.settings.persist_source"),Zw=128,eE=new Set(["off","advisory","strict"]);function ql(e){return structuredClone(ho[e])}function tE(e){return e==="minimal"||e==="default"||e==="strict"||e==="custom"?e:S.governance.preset}function Bl(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 nE(e){return e.preset==="custom"?Bl({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):Bl({preset:e.preset},e)}function rE(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),eE.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 Xr(e){let t=e.governance??{},n=tE(t.preset),r=rE(t);if(n==="custom"){let s=ql("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=ql(n),i=r.require_close_reason??o.require_close_reason;return{preset:n,...o,...r,require_close_reason:i}}function Kl(){return structuredClone(S)}function Gl(e){return e==="cache_only"||e==="semantic_configured"||e==="semantic_auto"?e:S.search.mutation_refresh_policy}function Xl(e){return typeof e=="boolean"?e:S.search.query_expansion.enabled}function Yl(e){return typeof e!="string"?S.search.query_expansion.provider:e.trim()}function Jl(e){return typeof e=="boolean"?e:S.search.rerank.enabled}function Ql(e){return typeof e!="string"?S.search.rerank.model:e.trim()}function Zl(e){return typeof e=="number"&&Number.isFinite(e)&&Number.isInteger(e)&&e>0?e:S.search.rerank.top_k}function eu(e){if(typeof e!="string")return S.vector_store.collection_name;let n=e.trim().replaceAll(/[^a-zA-Z0-9_-]/g,"_").slice(0,Zw);return n.length>0?n:S.vector_store.collection_name}function hs(e){return{present:Array.isArray(e),values:Array.isArray(e)?structuredClone(e):[]}}function oE(e,t){let n=e.schema,r=hs(n?.statuses),o=hs(n?.fields),i=hs(n?.type_workflows);return{source_settings:structuredClone(e),has_source_item_type_definitions:Array.isArray(e.item_types?.definitions),source_item_type_definitions:Nt(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:Nt(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 vs(e,t){Object.defineProperty(e,Hl,{value:t,writable:!0,configurable:!0,enumerable:!1})}function Ss(e){let t=e[Hl];if(!(!t||typeof t!="object"))return t}function bO(e){let t=Ss(e);if(t){let n=structuredClone(t);n.source_settings.item_format=e.item_format,vs(e,n)}}function Gr(e){let t=structuredClone(e.settings),n=Ss(e.settings);return n&&vs(t,n),{settings:t,metadata:{has_explicit_item_format:e.metadata.has_explicit_item_format},warnings:[...e.warnings]}}function iE(e,t,n){let r=he(t);return[n,X(e,r.files.types,K.types),X(e,r.files.statuses,K.statuses),X(e,r.files.fields,K.fields),X(e,r.files.workflows,K.workflows)]}async function sE(e,t,n){let r=await Ue(t);Kr(e,{tracked_paths:t,signatures:r,value:Gr(n)})}async function aE(e,t,n){try{await sE(e,t,n)}catch{qe(e)}}function Vl(e,t){return e.find(n=>n.path===t)}function cE(e,t,n){for(let r of n){let o=Vl(e,r),i=Vl(t,r);if(!o||!i||!fn([o],[i]))return!1}return!0}async function bs(e,t,n,r,o){try{let i=await Ue(t);if(!cE(r,i,o)){qe(e);return}Kr(e,{tracked_paths:t,signatures:i,value:Gr(n)})}catch{qe(e)}}function dE(e,t){let n=he(e.schema),r=Nt(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=te(r,t.runtime_item_type_definitions),s=te(n.statuses,t.runtime_schema_statuses),a=te(n.fields,t.runtime_schema_fields),c=te(o,t.runtime_schema_type_workflows);return{item_type_definitions:i?t.has_source_item_type_definitions?Nt(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 mn(e){return{settings:Kl(),metadata:{has_explicit_item_format:!1},warnings:e?[e]:[]}}function lE(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e.item_format;return t==="toon"||t==="json_markdown"}function Es(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function tu(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:Es(e?.last_checked_files??t.last_checked_files)}}function pe(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function uE(e){return e==="off"||e==="warn"||e==="enforce"?e:S.extensions.policy.mode}function fE(e){return e==="off"||e==="warn"||e==="enforce"?e:S.extensions.policy.trust_mode}function nu(e){return e==="none"||e==="restricted"||e==="strict"?e:S.extensions.policy.default_sandbox_profile}function mE(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=nu(e.sandbox_profile));let r=pe(e.allowed_capabilities),o=pe(e.blocked_capabilities),i=pe(e.allowed_surfaces),s=pe(e.blocked_surfaces),a=pe(e.allowed_commands),c=pe(e.blocked_commands),d=pe(e.allowed_actions),l=pe(e.blocked_actions),f=pe(e.allowed_services),p=pe(e.blocked_services);return r.length>0&&(n.allowed_capabilities=r),o.length>0&&(n.blocked_capabilities=o),i.length>0&&(n.allowed_surfaces=i),s.length>0&&(n.blocked_surfaces=s),a.length>0&&(n.allowed_commands=a),c.length>0&&(n.blocked_commands=c),d.length>0&&(n.allowed_actions=d),l.length>0&&(n.blocked_actions=l),f.length>0&&(n.allowed_services=f),p.length>0&&(n.blocked_services=p),n}function pE(e){let t=new Map;for(let n of e??[]){let r=mE(n);r&&t.set(r.name,r)}return[...t.values()].sort((n,r)=>n.name.localeCompare(r.name))}function ws(e){return e==="block"||e==="warn"?e:void 0}function _E(e){if(typeof e=="string")return ws(e);if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let t=ws(e.global),n=ws(e.project);return t===void 0&&n===void 0?void 0:{...t!==void 0?{global:t}:{},...n!==void 0?{project:n}:{}}}}function oe(e,t){return pe(e?.[t]??S.extensions.policy[t])}function ru(e){let t=_E(e?.pm_max_version_exceeded_mode);return{mode:uE(e?.mode),trust_mode:fE(e?.trust_mode),...t!==void 0?{pm_max_version_exceeded_mode:t}:{},require_provenance:e?.require_provenance===!0,trusted_extensions:oe(e,"trusted_extensions"),default_sandbox_profile:nu(e?.default_sandbox_profile),allowed_extensions:oe(e,"allowed_extensions"),blocked_extensions:oe(e,"blocked_extensions"),allowed_capabilities:oe(e,"allowed_capabilities"),blocked_capabilities:oe(e,"blocked_capabilities"),allowed_surfaces:oe(e,"allowed_surfaces"),blocked_surfaces:oe(e,"blocked_surfaces"),allowed_commands:oe(e,"allowed_commands"),blocked_commands:oe(e,"blocked_commands"),allowed_actions:oe(e,"allowed_actions"),blocked_actions:oe(e,"blocked_actions"),allowed_services:oe(e,"allowed_services"),blocked_services:oe(e,"blocked_services"),extension_overrides:pE(e?.extension_overrides??S.extensions.policy.extension_overrides)}}function ou(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 Be(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function U(e,t){return e===void 0?t:e}function ie(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:{}}function ks(e){return Array.isArray(e)?e:[]}function yE(e,t,n){return{...t.validation,...e.validation,parent_reference:n.parent_reference,metadata_profile:n.metadata_profile,metadata_required_fields:ou(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:Be(e.validation?.lifecycle_stale_blocker_reason_patterns??t.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:Be(e.validation?.lifecycle_closure_like_blocked_reason_patterns??t.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:Be(e.validation?.lifecycle_closure_like_resolution_patterns??t.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:Be(e.validation?.lifecycle_closure_like_actual_result_patterns??t.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:gs(e.validation?.estimate_defaults_by_type)}}function gE(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 hE(e,t){return{...t.search,...e.search,mutation_refresh_policy:Gl(e.search?.mutation_refresh_policy),query_expansion:{...t.search.query_expansion,...e.search?.query_expansion,enabled:Xl(e.search?.query_expansion?.enabled),provider:Yl(e.search?.query_expansion?.provider)},rerank:{...t.search.rerank,...e.search?.rerank,enabled:Jl(e.search?.rerank?.enabled),model:Ql(e.search?.rerank?.model),top_k:Zl(e.search?.rerank?.top_k)}}}function bE(e,t){return{adapter:e.vector_store.adapter??t.vector_store.adapter,collection_name:eu(e.vector_store.collection_name),qdrant:{...t.vector_store.qdrant,...e.vector_store.qdrant},lancedb:{...t.vector_store.lancedb,...e.vector_store.lancedb}}}function wE(e,t){return e.item_format==="json_markdown"?"toon":e.item_format??t.item_format}function EE(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 kE(e,t){return{openai:{...t.providers.openai,...e.providers.openai},ollama:{...t.providers.ollama,...e.providers.ollama}}}function Nt(e){let t=(e??[]).map(r=>qn(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 iu(e){let t=Kl(),n=Xr({governance:e.governance??{preset:"default"}});return{...t,...e,item_format:wE(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:yE(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:gE(e,t),agent_guidance:tu(e.agent_guidance??t.agent_guidance),item_types:{definitions:Nt(e.item_types?.definitions)},schema:he(e.schema??t.schema),context:EE(e,t),extensions:{enabled:[...e.extensions.enabled],disabled:[...e.extensions.disabled],policy:ru(e.extensions.policy??t.extensions.policy)},search:hE(e,t),providers:kE(e,t),vector_store:bE(e,t)}}function vE(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(ie(t.identity_vocabulary),["version","aliases"])),e.agent_identity.harness_signals=ks(e.agent_identity.harness_signals).map(n=>x(ie(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(ie(e.schema.files),["types","statuses","fields","workflows"]),e.schema.workflow=x(ie(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(ie(e.context.sections),["hierarchy","activity","progress","blockers","files","workload","staleness","tests"]),e.extensions=x(e.extensions,["enabled","disabled","policy"]),e.extensions.policy=x(ie(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=ks(e.extensions.policy.extension_overrides).map(n=>x(ie(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(ie(e.search.query_expansion),["enabled","provider"]),e.search.rerank=x(ie(e.search.rerank),["enabled","model","top_k"]),e.providers=x(e.providers,["openai","ollama"]),e.providers.openai=x(ie(e.providers.openai),["base_url","api_key","model"]),e.providers.ollama=x(ie(e.providers.ollama),["base_url","model"]),e.vector_store=x(e.vector_store,["adapter","collection_name","qdrant","lancedb"]),e.vector_store.qdrant=x(ie(e.vector_store.qdrant),["url","api_key"]),e.vector_store.lancedb=x(ie(e.vector_store.lancedb),["path"])}function SE(e){return{...e,locks:U(e.locks,S.locks),ids:U(e.ids,S.ids),agent_identity:U(e.agent_identity,S.agent_identity),mutation_guard:U(e.mutation_guard,S.mutation_guard),checkpoints:U(e.checkpoints,S.checkpoints),output:U(e.output,S.output),history:U(e.history,S.history),validation:U(e.validation,S.validation),workflow:U(e.workflow,S.workflow),testing:U(e.testing,S.testing),telemetry:U(e.telemetry,S.telemetry),agent_guidance:U(e.agent_guidance,S.agent_guidance),item_types:U(e.item_types,S.item_types),schema:U(e.schema,S.schema),context:U(e.context,S.context),extensions:U(e.extensions,S.extensions),search:U(e.search,S.search),providers:U(e.providers,S.providers),vector_store:U(e.vector_store,S.vector_store)}}function xE(e,t){return{...e.validation,parent_reference:t.parent_reference,metadata_profile:t.metadata_profile,metadata_required_fields:ou(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:Be(e.validation?.lifecycle_stale_blocker_reason_patterns??S.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:Be(e.validation?.lifecycle_closure_like_blocked_reason_patterns??S.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:Be(e.validation?.lifecycle_closure_like_resolution_patterns??S.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:Be(e.validation?.lifecycle_closure_like_actual_result_patterns??S.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:gs(e.validation?.estimate_defaults_by_type)}}function IE(e){return{...S.search,...e.search,mutation_refresh_policy:Gl(e.search?.mutation_refresh_policy),query_expansion:{...S.search.query_expansion,...e.search?.query_expansion,enabled:Xl(e.search?.query_expansion?.enabled),provider:Yl(e.search?.query_expansion?.provider)},rerank:{...S.search.rerank,...e.search?.rerank,enabled:Jl(e.search?.rerank?.enabled),model:Ql(e.search?.rerank?.model),top_k:Zl(e.search?.rerank?.top_k)}}}function TE(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 AE(e){return{...e.vector_store,adapter:e.vector_store?.adapter??S.vector_store.adapter,collection_name:eu(e.vector_store?.collection_name),qdrant:{...e.vector_store?.qdrant},lancedb:{...e.vector_store?.lancedb}}}function CE(e,t,n,r){return{...e,item_format:"toon",validation:xE(e,t),governance:t,agent_guidance:tu(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:IE(e),context:TE(e),extensions:{enabled:Es(e.extensions?.enabled),disabled:Es(e.extensions?.disabled),policy:ru(e.extensions?.policy)},vector_store:AE(e)}}function su(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(!te(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:{};su(c,i,s),Object.keys(c).length>0?e[o]=c:delete e[o];continue}e[o]=structuredClone(s)}}}var au=["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 Wl(e,t){let n=SE(e),r=Xr(n),o=he(n.schema),i=dE(n,t),s=CE(n,r,o,i),a=x({...s,governance:nE(r)},au);return vE(a),a}function OE(e,t={}){let n=Wl(e,t.persist_source);if(t.persist_source){let r=iu(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=Wl(r,t.persist_source),i=structuredClone(t.persist_source.source_settings);return su(i,o,n),`${JSON.stringify(x(i,au),null,2)}
|
|
73
|
-
`}return`${JSON.stringify(n,null,2)}
|
|
74
|
-
`}async function cu(e){let t=Ge(e),n=[t];await ge({path:t,scope:"project"});let r=Ul(e);if(r){let d=await Ue(r.tracked_paths);if(fn(d,r.signatures))return Gr(r.value)}let o=await Ue([t]),i;try{i=await ve(t)}catch{return mn("settings_read_fs_error")}if(i===null){let d=mn();return await bs(e,[t],d,o,[t]),d}let s=await Ue([t]);if(!fn(o,s))return qe(e),cu(e);let a;try{a=JSON.parse(i)}catch{let d=mn("settings_read_invalid_json");return await bs(e,[t],d,s,[t]),d}let c=Ll(a);if(!c.success){let d=mn("settings_read_invalid_schema");return await bs(e,[t],d,s,[t]),d}try{let d=iu(c.data),l=iE(e,d.schema,t);n=l;let f=await Ue(l),p=await Nc(e,d.schema),m=await Dc(e,d.schema),h=await Ue(l),_={...d,item_types:{definitions:Nt([...d.item_types.definitions,...ks(m.type_definitions_from_file)])},schema:m.schema};vs(_,oE(c.data,_));let y={settings:_,metadata:{has_explicit_item_format:lE(a)},warnings:[...c.data.item_format==="json_markdown"?["settings_item_format_legacy_json_markdown_coerced_to_toon"]:[],...p.created_paths.map(T=>`runtime_schema_bootstrap_created:${T}`),...m.warnings]};return p.created_paths.length===0?fn(f,h)?Kr(e,{tracked_paths:l,signatures:h,value:Gr(y)}):qe(e):qe(e),y}catch{let d=mn("settings_read_merge_failed");return await aE(e,n,d),d}}async function wO(e){return(await cu(e)).settings}async function EO(e,t,n=Qw){let r=Ge(e),o=OE(t,{persist_source:Ss(t)});try{await Rl({pmRoot:e,filePath:r,raw:o,op:n,author:pd(void 0,t.author_default),lockTtlSeconds:t.locks.ttl_seconds,lockWaitMs:t.locks.wait_ms,recordCreation:!1}),await ue({path:r,scope:"project",op:n})}finally{qe(e)}}import dt from"node:fs/promises";import lu from"node:path";import{randomUUID as RE}from"node:crypto";import{createRequire as NE}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 DE="metadata-query-index.sqlite",pn="4";function PE(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}var Yr;function ME(e,t){let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=22?PE(t):null}function _n(){return Yr!==void 0||(Yr=ME(process.versions.node,NE(import.meta.url))),Yr}function du(e,t){return Math.max(0,Math.floor(e===void 0?t:e))}function Dt(e){return lu.join(e,"runtime",DE)}function LE(e){e.exec(`
|
|
75
|
-
PRAGMA foreign_keys = ON;
|
|
76
|
-
PRAGMA journal_mode = OFF;
|
|
77
|
-
PRAGMA synchronous = OFF;
|
|
78
|
-
CREATE TABLE metadata (
|
|
79
|
-
key TEXT PRIMARY KEY,
|
|
80
|
-
value TEXT NOT NULL
|
|
81
|
-
) STRICT;
|
|
82
|
-
CREATE TABLE items (
|
|
83
|
-
id TEXT PRIMARY KEY,
|
|
84
|
-
relative_path TEXT NOT NULL UNIQUE,
|
|
85
|
-
metadata_json TEXT NOT NULL,
|
|
86
|
-
status TEXT NOT NULL,
|
|
87
|
-
type TEXT NOT NULL,
|
|
88
|
-
priority INTEGER NOT NULL,
|
|
89
|
-
updated_at TEXT NOT NULL,
|
|
90
|
-
created_at TEXT NOT NULL,
|
|
91
|
-
parent TEXT,
|
|
92
|
-
assignee TEXT,
|
|
93
|
-
sprint TEXT,
|
|
94
|
-
release TEXT
|
|
95
|
-
) STRICT;
|
|
96
|
-
CREATE INDEX items_default_order
|
|
97
|
-
ON items(priority, updated_at DESC, id);
|
|
98
|
-
CREATE INDEX items_status_default_order
|
|
99
|
-
ON items(status, priority, updated_at DESC, id);
|
|
100
|
-
CREATE INDEX items_type_default_order
|
|
101
|
-
ON items(type, priority, updated_at DESC, id);
|
|
102
|
-
CREATE INDEX items_parent_default_order
|
|
103
|
-
ON items(parent, priority, updated_at DESC, id);
|
|
104
|
-
CREATE TABLE item_metadata_keys (
|
|
105
|
-
item_id TEXT NOT NULL,
|
|
106
|
-
key TEXT NOT NULL,
|
|
107
|
-
PRIMARY KEY(item_id, key),
|
|
108
|
-
FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
|
|
109
|
-
) STRICT;
|
|
110
|
-
CREATE INDEX item_metadata_keys_key_item
|
|
111
|
-
ON item_metadata_keys(key, item_id);
|
|
112
|
-
CREATE TABLE item_linked_files (
|
|
113
|
-
item_id TEXT NOT NULL,
|
|
114
|
-
path TEXT NOT NULL,
|
|
115
|
-
scope TEXT NOT NULL,
|
|
116
|
-
note TEXT,
|
|
117
|
-
PRIMARY KEY(item_id, path, scope),
|
|
118
|
-
FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
|
|
119
|
-
) STRICT;
|
|
120
|
-
CREATE INDEX item_linked_files_path_scope_item
|
|
121
|
-
ON item_linked_files(path, scope, item_id);
|
|
122
|
-
CREATE VIRTUAL TABLE item_search USING fts5(
|
|
123
|
-
id UNINDEXED,
|
|
124
|
-
title,
|
|
125
|
-
description,
|
|
126
|
-
tags,
|
|
127
|
-
tokenize = 'unicode61'
|
|
128
|
-
);
|
|
129
|
-
`)}function Qr(e,t,n){e.prepare("INSERT INTO metadata(key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value").run(t,n)}function uu(e,t){let n=t.metadata;e.prepare(`INSERT INTO items(
|
|
130
|
-
id, relative_path, metadata_json, status, type, priority,
|
|
131
|
-
updated_at, created_at, parent, assignee, sprint, release
|
|
132
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
133
|
-
ON CONFLICT(id) DO UPDATE SET
|
|
134
|
-
relative_path = excluded.relative_path,
|
|
135
|
-
metadata_json = excluded.metadata_json,
|
|
136
|
-
status = excluded.status,
|
|
137
|
-
type = excluded.type,
|
|
138
|
-
priority = excluded.priority,
|
|
139
|
-
updated_at = excluded.updated_at,
|
|
140
|
-
created_at = excluded.created_at,
|
|
141
|
-
parent = excluded.parent,
|
|
142
|
-
assignee = excluded.assignee,
|
|
143
|
-
sprint = excluded.sprint,
|
|
144
|
-
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 fu(e){let t=Dt(e.pmRoot),n=_n();if(!n){await dt.rm(t,{force:!0});return}await dt.mkdir(lu.dirname(t),{recursive:!0});let r=`${t}.${RE()}.tmp`,o;try{o=new n(r),LE(o),o.exec("BEGIN IMMEDIATE"),Qr(o,"version",pn),Qr(o,"context_fingerprint",e.contextFingerprint),Qr(o,"source_cursor",e.sourceCursor);for(let i of e.rows)uu(o,i);o.exec("COMMIT"),o.close(),o=void 0,await dt.rm(t,{force:!0}),await dt.rename(r,t)}catch(i){throw o?.close(),await Promise.allSettled([dt.rm(r,{force:!0})]),i}}function Zr(e){return Object.fromEntries(e.prepare("SELECT key, value FROM metadata").all().map(t=>[String(t.key),String(t.value)]))}async function mu(e){let t=Dt(e.pmRoot),n;try{await dt.access(t);let r=_n();if(!r)return!1;n=new r(t),n.exec("PRAGMA foreign_keys = ON");let o=Zr(n);if(o.version!==pn||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 d=s.get(c);i.run(c),d&&a.run(d.id)}return e.row&&uu(n,e.row),Qr(n,"source_cursor",e.sourceCursor),n.exec("COMMIT"),n.close(),!0}catch{try{n?.exec("ROLLBACK")}catch{}return n?.close(),!1}}function Jr(e,t,n,r,o){!r||r.length===0||(e.push(`${n} ${o} (${r.map(()=>"?").join(", ")})`),t.push(...r))}function $E(e){let t=[],n=[];Jr(t,n,"status",e.statuses,"IN"),Jr(t,n,"status",e.excludeStatuses,"NOT IN"),Jr(t,n,"type",e.types,"IN"),Jr(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 TO(e){let t=_n();if(!t)return null;let n=e.query??{},{where:r,parameters:o}=$E(n),i;try{i=new t(Dt(e.pmRoot),{readOnly:!0});let s=Zr(i);if(s.version!==pn||s.source_cursor!==e.expectedSourceCursor)return i.close(),null;let a=i.prepare(`SELECT COUNT(*) AS count FROM items${r}`).get(...o),c=[],d="";n.limit!==void 0?(d+=" LIMIT ?",c.push(Math.max(0,Math.floor(n.limit))),n.offset!==void 0&&(d+=" OFFSET ?",c.push(Math.max(0,Math.floor(n.offset))))):n.offset!==void 0&&(d+=" LIMIT -1 OFFSET ?",c.push(Math.max(0,Math.floor(n.offset))));let f=i.prepare(`SELECT metadata_json FROM items${r}
|
|
145
|
-
ORDER BY ${n.terminalStatuses&&n.terminalStatuses.length>0?`CASE WHEN status IN (${n.terminalStatuses.map(()=>"?").join(", ")}) THEN 1 ELSE 0 END ASC, `:""}priority ASC, updated_at DESC, id ASC${d}`).all(...o,...n.terminalStatuses??[],...c).map(p=>{let m=JSON.parse(String(p.metadata_json));if(!m.id)throw new TypeError("Indexed metadata row has no id");return m});return i.close(),{source_cursor:s.source_cursor,total:Number(a.count),items:f}}catch{return i?.close(),null}}async function AO(e){let t=_n();if(!t||e.paths.length===0)return null;let n;try{n=new t(Dt(e.pmRoot),{readOnly:!0});let r=Zr(n);if(r.version!==pn||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
|
|
146
|
-
FROM item_linked_files
|
|
147
|
-
WHERE ${a}`).get(...s),d=du(e.limit,50),l=du(e.offset,0),f=n.prepare(`SELECT items.id, items.metadata_json
|
|
148
|
-
FROM items
|
|
149
|
-
WHERE EXISTS (
|
|
150
|
-
SELECT 1 FROM item_linked_files
|
|
151
|
-
WHERE item_linked_files.item_id = items.id AND ${a}
|
|
152
|
-
)
|
|
153
|
-
ORDER BY items.priority ASC, items.updated_at DESC, items.id ASC
|
|
154
|
-
LIMIT ? OFFSET ?`).all(...s,d,l),p=[];if(f.length>0){let m=f.map(y=>String(y.id)),h=n.prepare(`SELECT item_id, path, scope, note
|
|
155
|
-
FROM item_linked_files
|
|
156
|
-
WHERE item_id IN (${m.map(()=>"?").join(", ")})
|
|
157
|
-
AND ${a}
|
|
158
|
-
ORDER BY path ASC, scope ASC`).all(...m,...s),_=new Map(m.map(y=>[y,[]]));for(let y of h){let T=String(y.item_id),L=_.get(T);L.push({path:String(y.path),scope:String(y.scope),...y.note===null?{}:{note:String(y.note)}}),_.set(T,L)}for(let y of f){let T=JSON.parse(String(y.metadata_json));p.push({item:T,files:_.get(String(y.id))})}}return n.close(),{source_cursor:r.source_cursor,total:Number(c.count),matches:p}}catch{return n?.close(),null}}async function CO(e){let t=_n();if(!t)return null;let n;try{n=new t(Dt(e.pmRoot),{readOnly:!0});let r=Zr(n);if(r.version!==pn||r.source_cursor!==e.expectedSourceCursor)return n.close(),null;let i=n.prepare(`SELECT items.metadata_json
|
|
159
|
-
FROM item_search
|
|
160
|
-
JOIN items ON items.id = item_search.id
|
|
161
|
-
WHERE item_search MATCH ?
|
|
162
|
-
ORDER BY bm25(item_search), items.priority, items.updated_at DESC, items.id
|
|
163
|
-
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 eo(e){await dt.rm(Dt(e),{force:!0})}import V from"node:fs/promises";import F from"node:path";import{createHash as FE,randomUUID as hu}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8ed70856-9cba-599d-8b53-21a981af1f40")}catch{}})();var we=8,bu=500,jE="metadata-derived-index",zE="metadata-cache.json",UE="metadata-cache-bodies.json",qE="metadata-cache-collections.json",BE="metadata-cache-delta.json",VE="metadata-cache-manifest.json",pu=4,WE=["comments","notes","learnings","files","tests","test_runs","docs"];function wu(){return mr(en())}function no(e){let t={...e},n={};for(let r of WE)r in t&&(n[r]=t[r],delete t[r]);return{light:t,heavy:n}}function Eu(e,t){return!t||Object.keys(t).length===0?e:{...e,...t}}function ku(e,t,n,r){let o=FE("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 ro(e){return F.join(e,"runtime",zE)}function oo(e){return F.join(e,"runtime",UE)}function io(e){return F.join(e,"runtime",qE)}function Is(e){return F.join(e,"runtime",BE)}function Ts(e){return F.join(e,"runtime",VE)}function so(e,t){let n=F.extname(e);return`${e.slice(0,-n.length)}.${t}${n}`}var HE=24,le=new Map,ao=new WeakMap;function As(e){return ao.get(e)??e.source_cursor}function KE(e,t){let n=As(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){ao.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 GE(e,t){if(!e)return;let n=As(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){ao.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 XE(e,t){if(!e)return;let n=As(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){ao.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 YE(e,t,n,r){!e||!r||e.context_fingerprint!==r.context_fingerprint||(KE(e,r),GE(t,r),XE(n,r))}function xs(e,t){le.size>=HE&&!le.has(e)&&Dn(le),le.set(e,t)}async function Ve(e,t){let n;try{n=await V.stat(e)}catch{return le.delete(e),null}let r=le.get(e);if(r&&yn(r.signature,n.mtimeMs,n.ctimeMs,n.size))return le.delete(e),le.set(e,r),r.envelope;let o;try{o=t(await V.readFile(e,"utf8"))}catch{o=null}return xs(e,{signature:{mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size},envelope:o}),o}async function JE(e,t,n){let r=a=>{let c=JSON.parse(a);return c.version!==we||typeof c.source_cursor!="string"||typeof c.entries!="object"||c.entries===null?null:c},o=ro(e),i=await Ve(o,r);if(!t||i===null||i.context_fingerprint===t)return i;let s=await Ve(so(o,t),r);return s===null&&bn(n,`metadata_cache_context_changed:${i.context_fingerprint}->${t}`),s}async function QE(e,t){let n=i=>{let s=JSON.parse(i);return s.version!==we||typeof s.source_cursor!="string"||typeof s.bodies!="object"||s.bodies===null?null:s},r=oo(e),o=await Ve(r,n);return t&&o?.context_fingerprint!==t?await Ve(so(r,t),n):o}async function ZE(e,t){let n=i=>{let s=JSON.parse(i);return s.version!==we||typeof s.source_cursor!="string"||typeof s.collections!="object"||s.collections===null?null:s},r=io(e),o=await Ve(r,n);return t&&o?.context_fingerprint!==t?await Ve(so(r,t),n):o}async function Cs(e){let t=Is(e),n=await Ve(t,r=>{let o=JSON.parse(r);return o.version!==we||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 V.stat(t),{envelope:null,invalid:!0}}catch{return{envelope:null,invalid:!1}}}async function Os(e){let t=Ts(e),n=await Ve(t,r=>{let o=JSON.parse(r);return o.version!==we||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 V.stat(t),await Pt(e)}catch{}return null}async function gn(e,t){await V.mkdir(F.dirname(e),{recursive:!0}),await Q(e,JSON.stringify(t));try{let r=await V.stat(e);xs(e,{signature:{mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size},envelope:t})}catch{le.delete(e)}let n=F.dirname(F.dirname(e));if(e===ro(n)||e===oo(n)||e===io(n)){let r=so(e,t.context_fingerprint);await Q(r,JSON.stringify(t));try{let c=await V.stat(r);xs(r,{signature:{mtime_ms:c.mtimeMs,ctime_ms:c.ctimeMs,size:c.size},envelope:t})}catch{le.delete(r)}let o=F.dirname(e),i=F.extname(e),s=F.basename(e,i),a=(await V.readdir(o,{withFileTypes:!0}).catch(()=>[])).filter(c=>c.isFile()&&c.name!==F.basename(e)&&c.name.startsWith(`${s}.`)&&c.name.endsWith(i)).map(c=>F.join(o,c.name));if(a.length>pu){let c=(await Promise.all(a.map(async d=>{try{return{path:d,mtime:(await V.stat(d)).mtimeMs}}catch{return null}}))).filter(d=>d!==null);for(let d of c.sort((l,f)=>l.mtime-f.mtime).slice(0,Math.max(0,c.length-pu)))await V.rm(d.path,{force:!0}),le.delete(d.path)}}}function ek(e,t,n){return n?t===n&&e!==n:t==="toon"&&e!=="toon"}function vu(e,t,n){return e===void 0||ek(e,t,n)}function bn(e,t){e&&!e.includes(t)&&e.push(t)}function yn(e,t,n,r){return e.mtime_ms===t&&e.ctime_ms===n&&e.size===r}async function tk(e,t,n){let r=F.join(e,t);try{let o=await V.readdir(r);return{folder:t,dirPath:r,files:o}}catch(o){return typeof o=="object"&&o!==null&&"code"in o&&o.code!=="ENOENT"&&bn(n,`item_list_directory_read_failed:${t}`),{folder:t,dirPath:r,files:[]}}}async function nk(e,t){try{let n=await V.stat(F.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 to(e,t){return Object.fromEntries(await Promise.all(t.map(async n=>await nk(e,n))))}function hn(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&&yn(o,r.mtime_ms,r.ctime_ms,r.size)})}function rk(e){return Bn.some(t=>e.toLowerCase().endsWith(t))}function ok(e,t,n,r,o,i){r||(e.metadata=!0),t&&!o&&(e.body=!0),n&&!i&&(e.collections=!0)}async function ik(e,t,n){if(n)for(let r of await ge({path:e,scope:"project"}))bn(t,r)}function _u(e,t,n,r){if(e)return t&&n?n.collections:r}async function sk(e,t,n){let r=await V.stat(e),o=r.mtimeMs,i=r.ctimeMs,{size:s}=r,a=To(e);await ik(e,n.warnings,n.dispatchReadHooks);let c=n.previousEntries[t],d=c!==void 0&&yn(c,o,i,s),l=n.previousBodies[t],f=l!==void 0&&yn(l,o,i,s),p=n.previousCollections[t],m=p!==void 0&&yn(p,o,i,s);if(!(!d||n.includeBody&&!f||n.includeCollections&&!m))return{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:c.metadata,heavyMetadata:_u(n.includeCollections,m,p,void 0),bodyLength:c.body_length,body:n.includeBody?l.body:void 0};let _=await V.readFile(e,"utf8"),y=br(_,{format:a,schema:n.schema,extensionFieldNames:n.extensionFieldNames,onWarning:L=>bn(n.warnings,L)}),T=no(y.metadata);return ok(n.state.misses,n.includeBody,n.includeCollections,d,f,m),{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:d?c.metadata:T.light,heavyMetadata:_u(n.includeCollections,m,p,T.heavy),bodyLength:d?c.body_length:y.body.length,body:n.includeBody?y.body:void 0}}function ak(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?Eu(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};vu(i?.itemFormat,r.itemFormat,n.preferredFormat)&&n.state.documentsById.set(o.id,{candidate:s,itemFormat:r.itemFormat})}async function ck(e,t,n,r){try{let o=await sk(t,n,r);ak(t,n,r,o)}catch{bn(r.warnings,`item_list_item_read_failed:${e}/${F.basename(t)}`)}}function dk(e,t){return e&&e.context_fingerprint===t?e.entries:{}}function lk(e,t){return e&&e.context_fingerprint===t?e.bodies:{}}function uk(e,t){return e&&e.context_fingerprint===t?e.collections:{}}function fk(){return{newEntries:{},newBodies:{},newCollections:{},documentsById:new Map,misses:{metadata:!1,body:!1,collections:!1}}}function mk(e,t){let n=[];for(let{folder:r,dirPath:o,files:i}of e)for(let s of i){if(!rk(s))continue;let a=F.join(o,s),c=F.relative(t.pmRoot,a);n.push(ck(r,a,c,t))}return n}async function pk(e){if(!(!(e.state.misses.metadata||Object.keys(e.previousEntries).length!==Object.keys(e.state.newEntries).length||!hn(e.existingCache?.directory_signatures,e.directorySignatures))&&e.existingCache!==null&&e.existingCache.context_fingerprint===e.contextFingerprint))try{await gn(ro(e.pmRoot),{version:we,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,directory_signatures:e.directorySignatures,entries:e.state.newEntries}),await gn(Ts(e.pmRoot),{version:we,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:F.relative(e.pmRoot,r.item_path),metadata:no(r.metadata).light,linkedFiles:r.metadata.files??[]}));n.length>=e.minimumIndexedItems?await fu({pmRoot:e.pmRoot,contextFingerprint:e.contextFingerprint,sourceCursor:e.sourceCursor,rows:n}):await eo(e.pmRoot)}catch{}}async function _k(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 gn(oo(e.pmRoot),{version:we,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,bodies:e.state.newBodies}).catch(()=>{})}async function yk(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 gn(io(e.pmRoot),{version:we,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,collections:e.state.newCollections}).catch(()=>{})}async function Rs(e,t,n={}){let r=await Os(e);return n.required!==!0&&(r===null||r.entry_count<bu)?async()=>{}:Oe(e,jE,30,t,!1,!1,3e3)}async function qO(e,t){let n=await Os(e);if(n===null)return null;let r=await Cs(e);if(r.invalid)return await Pt(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&&!hn(i,await to(e,t))?null:{source_cursor:o,entry_count:n.entry_count}}function yu(e,t){let n=F.relative(e,t);return n===""||n===".."||n.startsWith(`..${F.sep}`)||F.isAbsolute(n)?null:n}async function Pt(e){await Promise.all([ro(e),oo(e),io(e),Is(e),Ts(e)].map(async t=>{await V.rm(t,{force:!0}),le.delete(t)})),await eo(e)}async function gk(e){if(e.mutation.document===null)return{entry:null,body:null,collections:null};let t=await V.stat(e.mutation.itemPath),n=no(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 hk(e,t,n){return e?.context_fingerprint===t&&e.base_source_cursor===n?structuredClone(e.changes):{}}async function Ns(e){let t=yu(e.pmRoot,e.itemPath),n=e.previousItemPath?yu(e.pmRoot,e.previousItemPath):void 0;if(t===null||n===null)return await Pt(e.pmRoot),["metadata_derived_index_path_invalidated"];try{let r=ku(e.preferredFormat,e.typeToFolder,e.schema,wu()),o=await Os(e.pmRoot);if(o===null||o.context_fingerprint!==r)return[];let i=o.source_cursor,s=await Cs(e.pmRoot);if(s.invalid)return await Pt(e.pmRoot),["metadata_derived_index_refresh_failed"];let a=hk(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 gk({mutation:e});let d=hu();return await gn(Is(e.pmRoot),{version:we,context_fingerprint:r,base_source_cursor:i,source_cursor:d,directory_signatures:await to(e.pmRoot,[...new Set(Object.values(e.typeToFolder))]),changes:a}),await mu({pmRoot:e.pmRoot,contextFingerprint:r,expectedSourceCursor:c,sourceCursor:d,row:e.document===null?null:{relativePath:t,metadata:no(e.document.metadata).light,linkedFiles:e.document.metadata.files},deletedRelativePaths:[...n===void 0?[]:[n],...e.document===null?[t]:[]]})||await eo(e.pmRoot),[]}catch{return await Pt(e.pmRoot).catch(()=>{}),["metadata_derived_index_refresh_failed"]}}function bk(e){return[...e.documentsById.values()].sort((t,n)=>t.candidate.metadata.id.localeCompare(n.candidate.metadata.id)).map(t=>t.candidate)}function gu(e,t,n){return e?.context_fingerprint===t&&e.source_cursor===n}function wk(e,t,n,r,o){return e.every(i=>(!t||r[i]!==void 0)&&(!n||o[i]!==void 0))}function Ek(e){let t=new Map;for(let[n,r]of Object.entries(e.previousEntries)){let o=To(n);if(!o)continue;let i=e.includeCollections?Eu(r.metadata,e.previousCollections[n]?.collections):r.metadata,s=t.get(i.id);vu(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:F.join(e.pmRoot,n)}})}return[...t.values()].sort((n,r)=>n.candidate.metadata.id.localeCompare(r.candidate.metadata.id)).map(n=>n.candidate)}function kk(e){return e.forceSourceScan||fi()||e.existingCache?.context_fingerprint!==e.contextFingerprint||e.entryKeys.length<e.minimumIndexedItems||!hn(e.existingCache?.directory_signatures,e.directorySignatures)?!1:[!e.includeBody||gu(e.existingBodyCache,e.contextFingerprint,e.existingCache.source_cursor),!e.includeCollections||gu(e.existingCollectionsCache,e.contextFingerprint,e.existingCache.source_cursor)].every(Boolean)&&wk(e.entryKeys,e.includeBody,e.includeCollections,e.previousBodies,e.previousCollections)}async function co(e,t,n,r,o,i={}){let s=i.includeBody!==!1,a=i.includeCollections!==!1,c=wu(),d=ku(t,n,o,c),l=await Cs(e);l.invalid&&await Pt(e);let f=await JE(e,d,i.cacheDiagnostics),p=s?await QE(e,d):null,m=a?await ZE(e,d):null;YE(f,p,m,l.envelope);let h=dk(f,d),_=lk(p,d),y=uk(m,d),T=[...new Set(Object.values(n))],L=await to(e,T),J=Object.keys(h),q=Math.max(1,Math.floor(i.derivedIndexMinimumItems??bu));if(kk({forceSourceScan:i.forceSourceScan===!0,contextFingerprint:d,existingCache:f,existingBodyCache:p,existingCollectionsCache:m,directorySignatures:L,entryKeys:J,minimumIndexedItems:q,includeBody:s,includeCollections:a,previousBodies:_,previousCollections:y}))return Ek({pmRoot:e,preferredFormat:t,includeBody:s,includeCollections:a,previousEntries:h,previousBodies:_,previousCollections:y});let lt=await Promise.all(T.map(Ru=>tk(e,Ru,r))),wn=fi(),Ee=fk(),fo={pmRoot:e,preferredFormat:t,warnings:r,schema:o,extensionFieldNames:c,includeBody:s,includeCollections:a,dispatchReadHooks:wn,previousEntries:h,previousBodies:_,previousCollections:y,state:Ee};await Promise.all(mk(lt,fo));let En=await to(e,T),Ps=hn(L,En)?En:{},mo=Ee.misses.metadata||Object.keys(h).length!==Object.keys(Ee.newEntries).length||!hn(f?.directory_signatures,Ps)||f===null?hu():f.source_cursor;return await pk({pmRoot:e,contextFingerprint:d,sourceCursor:mo,existingCache:f,previousEntries:h,directorySignatures:Ps,state:Ee,minimumIndexedItems:q}),s&&await _k({pmRoot:e,contextFingerprint:d,sourceCursor:mo,existingBodyCache:p,previousBodies:_,state:Ee}),a&&await yk({pmRoot:e,contextFingerprint:d,sourceCursor:mo,existingCollectionsCache:m,previousCollections:y,state:Ee}),bk(Ee)}async function Su(e,t,n,r,o){return(await co(e,t,n,r,o,{includeBody:!1})).map(s=>({metadata:s.metadata,body:s.body??""}))}async function xu(e,t,n,r,o){return(await co(e,t,n,r,o,{includeBody:!1,includeCollections:!1})).map(s=>({metadata:s.metadata,body:s.body??""}))}import We from"node:fs/promises";import Mt from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f43e1170-e797-5a0c-b02e-d31e002ab275")}catch{}})();async function vk(e){try{return await We.access(e),!0}catch{return!1}}function lo(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}function Sk(e,t){e&&(e.includes(t)||e.push(t))}function Iu(e){return e??mr(en())}function xk(e){return e==="toon"?["toon","json_markdown"]:e==="json_markdown"?["json_markdown","toon"]:["toon","json_markdown"]}function uo(e){return new w(`Tracker root is not a directory at ${e}.`,b.USAGE,{code:"tracker_root_not_directory",reason:"not_a_directory",nextSteps:["Pass the tracker directory itself, usually <workspace>/.agents/pm."]})}async function Ik(e){let t=Mt.parse(Mt.resolve(e)).root,n=Mt.dirname(Mt.resolve(e));for(;n!==t;){let r;try{r=await We.stat(n)}catch(o){if(lo(o,"ENOTDIR"))throw uo(e);if(!lo(o,"ENOENT"))throw o;n=Mt.dirname(n);continue}if(!r.isDirectory())throw uo(e);break}}async function Ds(e){let t;try{t=await We.stat(e)}catch(n){throw lo(n,"ENOENT")?(await Ik(e),new w(`Tracker root does not exist at ${e}.`,b.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."]})):lo(n,"ENOTDIR")?uo(e):n}if(!t.isDirectory())throw uo(e)}async function Tu(e,t,n="pm-",r,o=se){let i=ms(t,n),s=fs(t),a=i===s?[i]:[i,s],c=Object.entries(o),d=xk(r);for(let l of a)for(let[f]of c)for(let p of d){let m=Io(e,f,l,p,o);if(await vk(m))return{id:l,type:f,itemPath:m,item_format:p}}return null}async function Au(e,t={}){let n=await We.readFile(e.itemPath,"utf8");await ge({path:e.itemPath,scope:"project"});let r=br(n,{format:e.item_format,schema:t.schema,extensionFieldNames:Iu(t.extensionFieldNames),onWarning:o=>Sk(t.warnings,o)});return{raw:n,document:r}}async function Tk(e,t,n=se,r,o){return await Ds(e),(await Su(e,t,n,r,o)).map(s=>s.metadata)}async function dR(e,t,n=se,r,o){return await Ds(e),(await xu(e,t,n,r,o)).map(s=>s.metadata)}async function lR(e,t,n=se,r,o,i={}){return await Ds(e),(await co(e,t,n,r,o,{includeBody:!0,forceSourceScan:i.forceSourceScan})).map(a=>({...a.metadata,body:a.body}))}function Cu(e){return{async get(t){let n=await Tu(e.pmRoot,t,e.settings.id_prefix,e.settings.item_format,e.typeToFolder);if(!n)return null;let{document:r}=await Au(n,{schema:e.settings.schema});return{item:r.metadata,body:r.body}},list:()=>Tk(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema)}}async function Ak(e,t){let n=new Set(Object.values(t)),r=[];return await Promise.all([...n].map(async o=>{try{let i=await We.readdir(Mt.join(e,o));for(let s of i)for(let a of Bn)if(s.toLowerCase().endsWith(a)){r.push(s.slice(0,-a.length));break}}catch{}})),r}async function Ck(e,t,n,r){let o=ms(t,n),i=await Ak(e,r);if(i.length===0)return[];let s=Math.max(3,Math.floor(o.length/2));return i.map(c=>({id:c,distance:_t(c,o,s)})).filter(c=>c.distance!==null).sort((c,d)=>c.distance-d.distance).slice(0,3).map(c=>c.id)}async function Ok(e,t,n,r){let o=await Ck(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 w(`Item ${t} not found`,b.NOT_FOUND,{nextSteps:i})}function Rk(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 Ou(e){let t=e.typeToFolder??sa(e.settings,en()).type_to_folder,n=await Tu(e.pmRoot,e.id,e.settings.id_prefix,e.settings.item_format,t);if(!n)throw await Ok(e.pmRoot,e.id,e.settings.id_prefix,t);let r=await Oe(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 Au(n,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames,warnings:o}),a=s.metadata.assignee?.trim(),c=s.metadata.claim_principal?.trim()||a,d=md(e.author),l=Xr(e.settings);if(a&&c!==d&&!e.force&&!Rk(e.op,e.bypassAssigneeConflict)){if(l.ownership_enforcement==="strict")throw new w(`Item ${n.id} is assigned to ${a}. Use --force to override.`,b.CONFLICT);l.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 Nk(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 Dk(e){if(!e.skipItemWrite){if(e.effectiveTargetItemPath!==e.originalItemPath){await Q(e.originalItemPath,e.originalRaw),await We.rm(e.effectiveTargetItemPath,{force:!0});return}await Q(e.originalItemPath,e.originalRaw)}}async function uR(e){let t=await Ou({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=me(i,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),d=me(structuredClone(i),{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),l=await e.mutate(d);if(e.skipNoop===!0&&l.changedFields.length===0)return{item:c.metadata,body:c.body,changedFields:[],warnings:[...s,...l.warnings??[]]};d.metadata.updated_at=Ke();let f=me(d,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames});await ui({pm_root:e.pmRoot,operation:e.op,before:c,after:f,changed_fields:l.changedFields,sdk:Cu({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:n})});let p=await ds({pmRoot:e.pmRoot,settings:e.settings,itemId:r.id,commandLabel:e.op}),m="toon",h=Qc(f,{format:m,schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),_=Io(e.pmRoot,f.metadata.type,r.id,m,n),y=qt(e.pmRoot,r.id),T=await Te("item_store_write",{op:e.op,pm_root:e.pmRoot,item_id:r.id,source_item_path:r.itemPath,target_item_path:_,history_path:y,item_format:m,before:c,after:f,contents:h}),{effectiveTargetItemPath:L,effectiveSerializedAfter:J,skipItemWrite:q}=Nk(T,_,h),lt=await Rs(e.pmRoot,e.author),wn=[];try{q||await Q(L,J),!q&&L!==r.itemPath&&await We.rm(r.itemPath);let fo=Ot({nowIso:f.metadata.updated_at,author:e.author,op:e.op,before:c,after:f,message:e.message});try{await Rt(y,fo)}catch(En){throw await Dk({skipItemWrite:q,effectiveTargetItemPath:L,originalItemPath:r.itemPath,originalRaw:o}),En}q||(wn=await Ns({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:n,schema:e.settings.schema,itemPath:L,previousItemPath:r.itemPath,document:f}))}finally{await lt()}let Ee=[...await ue({path:L,scope:"project",op:e.op,item_id:f.metadata.id,item_type:f.metadata.type,before:c,after:f,changed_fields:l.changedFields}),...await ue({path:y,scope:"project",op:`${e.op}:history`,item_id:f.metadata.id,item_type:f.metadata.type,before:c,after:f,changed_fields:l.changedFields})];return li({id:f.metadata.id,op:e.op,item_type:f.metadata.type,previous_status:c.metadata.status,status:f.metadata.status,previous:ur(c.metadata,l.changedFields),current:ur(f.metadata,l.changedFields),changed_fields:l.changedFields}),{item:f.metadata,body:f.body,changedFields:l.changedFields,warnings:[...s,...l.warnings??[],...p.warnings,...T.warnings,...wn,...Ee]}}finally{await a()}}async function fR(e){let t=await Ou({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=Iu(void 0),c=me(o,{schema:e.settings.schema,extensionFieldNames:a});await ui({pm_root:e.pmRoot,operation:"delete",before:c,after:null,changed_fields:["deleted"],sdk:Cu({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:t.typeToFolder})});let d=await ds({pmRoot:e.pmRoot,settings:e.settings,itemId:n.id,commandLabel:"delete"}),l=Ke(),f=Ft,p=Ot({nowIso:l,author:e.author,op:"delete",before:c,after:f,message:e.message}),m=qt(e.pmRoot,n.id),h=await Te("item_store_delete",{op:"delete",pm_root:e.pmRoot,item_id:n.id,item_path:n.itemPath,history_path:m,before:c}),_=n.itemPath,y=!1;if(h.handled&&typeof h.result=="object"&&h.result!==null){let q=h.result;typeof q.item_path=="string"&&q.item_path.trim().length>0&&(_=q.item_path),q.skip_delete===!0&&(y=!0)}if(e.dryRun===!0)return{item:c.metadata,changedFields:["deleted"],targetPath:_,warnings:[...i,...d.warnings,...h.warnings]};let T=await Rs(e.pmRoot,e.author),L=[];try{y||await We.rm(_);try{await Rt(m,p)}catch(q){throw y||await Q(_,r),q}y||(L=await Ns({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:t.typeToFolder,schema:e.settings.schema,itemPath:_,document:null}))}finally{await T()}let J=[...await ue({path:_,scope:"project",op:"delete",item_id:c.metadata.id,item_type:c.metadata.type,before:c,after:f,changed_fields:["deleted"]}),...await ue({path:m,scope:"project",op:"delete:history",item_id:c.metadata.id,item_type:c.metadata.type,before:c,after:f,changed_fields:["deleted"]})];return li({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,...d.warnings,...h.warnings,...L,...J]}}finally{await s()}}export{vn as a,ke as b,ve as c,Q as d,Lt as e,$k as f,_e as g,Sn as h,po as i,jk as j,xn as k,In as l,Tn as m,An as n,Cn as o,On as p,qk as q,Pu as r,Bk as s,se as t,Lu as u,ye as v,ho as w,$u as x,_o as y,S as z,b as A,Vk as B,w as C,ju as D,Kk as E,Gk as F,Xk as G,Fs as H,Yk as I,Jk as J,Qk as K,$s as L,js as M,Zk as N,Dn as O,qu as P,ov as Q,Ke as R,Re as S,W as T,lv as U,uv as V,Ws as W,Hs as X,Jo as Y,Mn as Z,gv as _,hv as $,ff as aa,Gs as ba,mt as ca,Ln as da,pt as ea,$n as fa,wv as ga,Ev as ha,kv as ia,jn as ja,zn as ka,vv as la,Sv as ma,xv as na,Iv as oa,Un as pa,jt as qa,ko as ra,Tv as sa,Ys as ta,Av as ua,Cv as va,Ov as wa,Rv as xa,ea as ya,ia as za,zv as Aa,xo as Ba,Cf as Ca,sa as Da,Bf as Ea,Vf as Fa,Uv as Ga,qv as Ha,Bn as Ia,im as Ja,Xv as Ka,Yv as La,Jv as Ma,ca as Na,Ge as Oa,Io as Pa,To as Qa,qt as Ra,da as Sa,am as Ta,Vn as Ua,cm as Va,Qv as Wa,dm as Xa,lm as Ya,Zv as Za,eS as _a,um as $a,tS as ab,_t as bb,$ as cb,Ym as db,Oa as eb,Ra as fb,Da as gb,Pa as hb,Oo as ib,Ro as jb,oS as kb,bm as lb,la as mb,iS as nb,ua as ob,No as pb,vm as qb,Sm as rb,Ht as sb,Do as tb,Po as ub,Mo as vb,Lo as wb,$o as xb,Fo as yb,jo as zb,mS as Ab,ae as Bb,te as Cb,Xe as Db,qm as Eb,zo as Fb,Vm as Gb,Uo as Hb,qo as Ib,Bo as Jb,Vo as Kb,Wo as Lb,Ho as Mb,Go as Nb,Xo as Ob,Yo as Pb,_p as Qb,Sp as Rb,Ip as Sb,Tp as Tb,Mp as Ub,yx as Vb,gx as Wb,hx as Xb,xx as Yb,Tx as Zb,p_ as _b,__ as $b,di as ac,h_ as bc,b_ as cc,Mx as dc,Lx as ec,$x as fc,Fx as gc,jx as hc,zx as ic,Ux as jc,qx as kc,en as lc,Bx as mc,Vx as nc,hc as oc,Wx as pc,li as qc,ur as rc,Hx as sc,Kx as tc,ue as uc,ui as vc,ge as wc,fi as xc,Gx as yc,Xx as zc,Yx as Ac,Jx as Bc,Te as Cc,fr as Dc,mr as Ec,sI as Fc,aI as Gc,K as Hc,gi as Ic,he as Jc,X as Kc,mI as Lc,Nc as Mc,Pc as Nc,hi as Oc,Mc as Pc,Lc as Qc,pI as Rc,jc as Sc,nn as Tc,bI as Uc,wI as Vc,bt as Wc,Uc as Xc,kI as Yc,qc as Zc,iy as _c,vI as $c,pr as ad,ay as bd,TI as cd,_r as dd,hr as ed,yg as fd,br as gd,Qc as hd,me as id,Zc as jd,rt as kd,td as ld,XI as md,YI as nd,od,Ig as pd,oT as qd,iT as rd,sT as sd,ld as td,aT as ud,cT as vd,dT as wd,Lg as xd,md as yd,pd as zd,cn as Ad,jA as Bd,zA as Cd,Pi as Dd,gT as Ed,_d as Fd,xr as Gd,hd as Hd,Hg as Id,Kg as Jd,kT as Kd,be as Ld,vT as Md,Xg as Nd,Qg as Od,oh as Pd,wd as Qd,CT as Rd,OT as Sd,$i as Td,Fi as Ud,RT as Vd,ch as Wd,NT as Xd,DT as Yd,zi as Zd,at as _d,Ir as $d,Tr as ae,Sd as be,Ui as ce,xd as de,qi as ee,Td as fe,Bi as ge,Ad as he,It as ie,Pd as je,KT as ke,GT as le,Sh as me,$d as ne,XT as oe,Fd as pe,jd as qe,YT as re,zd as se,qd as te,Bh as ue,oA as ve,Wh as we,Vd as xe,iA as ye,Hd as ze,Kh as Ae,Jh as Be,Kd as Ce,Zh as De,eb as Ee,tb as Fe,cA as Ge,dA as He,nb as Ie,Nr as Je,lA as Ke,rb as Le,Gd as Me,Xd as Ne,uA as Oe,fA as Pe,mA as Qe,pA as Re,_A as Se,yA as Te,ob as Ue,bA as Ve,ub as We,Yd as Xe,fb as Ye,mb as Ze,wA as _e,Dr as $e,Zd as af,Tb as bf,nl as cf,RA as df,NA as ef,Vb as ff,ln as gf,fl as hf,rC as if,Ot as jf,Rt as kf,Yb as lf,Ur as mf,zr as nf,qr as of,uC as pf,fC as qf,_l as rf,Br as sf,cs as tf,mC as uf,pC as vf,ds as wf,iw as xf,Oe as yf,Vr as zf,Tl as Af,VC as Bf,WC as Cf,HC as Df,Rl as Ef,Pl as Ff,fs as Gf,ms as Hf,ZC as If,rO as Jf,Xr as Kf,bO as Lf,cu as Mf,wO as Nf,EO as Of,TO as Pf,AO as Qf,CO as Rf,bu as Sf,WE as Tf,Rs as Uf,qO as Vf,Ns as Wf,co as Xf,Tu as Yf,Au as Zf,Tk as _f,dR as $f,lR as ag,Cu as bg,Ok as cg,uR as dg,fR as eg};
|
|
164
|
-
//# sourceMappingURL=chunk-D4FPS43D.js.map
|