@unbrained/pm-cli 2026.9.14 → 2026.9.15
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 +12 -0
- package/dist/cli-bundle/bundle-manifest.json +148 -148
- package/dist/cli-bundle/chunks/{chunk-5JIJAWIF.js → chunk-3AHONKLL.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-DBHQIS6Z.js → chunk-3RB6Z7XE.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-ZYRN2OG3.js → chunk-5P5PYCZX.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-B6W5LIXK.js → chunk-BOZ4HVYL.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-J4DRE3WN.js +237 -0
- package/dist/cli-bundle/chunks/{chunk-GQMILIC5.js → chunk-RKPUO75B.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-O7SRS7Y3.js → chunk-RM2OGG65.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-D5AJQU7F.js → chunk-UKLOSZV6.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-XEV7BHH3.js → chunk-WDF7PP4P.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-A2Q64TGR.js → chunk-WLJJ4MAU.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-BY3ID7QI.js → chunk-Y2P3DSSO.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-NYE6EREL.js → chunk-YMMLKKEP.js} +2 -2
- package/dist/cli-bundle/chunks/{register-list-query-B2U36YWL.js → register-list-query-IWSPNFFD.js} +2 -2
- package/dist/cli-bundle/chunks/{register-mutation-GX42CQYR.js → register-mutation-3DVF4R64.js} +2 -2
- package/dist/cli-bundle/chunks/{register-operations-ZV34KX5E.js → register-operations-LXP3MECQ.js} +2 -2
- package/dist/cli-bundle/chunks/{register-setup-W4OS7IZW.js → register-setup-KFQSNBDX.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-GGDO6VBT.js → chunk-4YTDKIPF.js} +17 -17
- package/dist/cli-bundle/focused-chunks/{chunk-ZFNRD7EN.js → chunk-533DCWPY.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-FNLAQJES.js → chunk-5SBU4QDC.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-KWP3QTN7.js → chunk-63YRRGKX.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-N23WTRCC.js → chunk-6C3CUU2G.js} +3 -3
- package/dist/cli-bundle/focused-chunks/{chunk-ENJH7CBZ.js → chunk-AXDAIBT3.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-6WZBO4VQ.js → chunk-BMATJLPT.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-FHQLQOUZ.js → chunk-JKJYXCT6.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-D4FQV6TY.js → chunk-MD7ADLME.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-7BUJABHB.js → chunk-OGGF2RBL.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-CPQQIVDL.js → chunk-PBJC2ZNA.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-UFSMYVZF.js → chunk-SHF57M2H.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-C5NQVXKE.js → chunk-UACMCSCC.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-LFGTCEHX.js → chunk-YBQTVE5S.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-O4EROPO3.js → chunk-ZHX3433X.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-ZOE2NSJB.js +20 -0
- package/dist/cli-bundle/main.js +2 -2
- 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 +1 -1
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +40 -40
- 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 +1 -1
- package/dist/core/extensions/index.d.ts +7 -0
- package/dist/core/extensions/index.js +1 -1
- package/dist/core/lock/lock.js +2 -2
- package/dist/core/telemetry/policy.d.ts +2 -0
- package/dist/core/telemetry/policy.js +1 -1
- package/dist/core/telemetry/read-sampling.d.ts +8 -0
- package/dist/core/telemetry/read-sampling.js +3 -0
- package/dist/core/telemetry/runtime.js +2 -2
- package/docs/CONFIGURATION.md +6 -2
- package/marketplace.json +2 -2
- package/package.json +1 -1
- 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/dist/cli-bundle/chunks/chunk-33PER336.js +0 -236
- package/dist/cli-bundle/focused-chunks/chunk-CMCSUANO.js +0 -20
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{A as Ke,Aa as _o,B as Qe,Ba as So,C as Ye,Ca as vo,D as Ze,Da as Fo,E as $e,Ea as Eo,F as eo,Fa as Po,G as oo,Ga as Ro,H as to,Ha as Oo,I as ro,Ia as Uo,J as no,Ja as jo,K as fo,Ka as Ao,L as po,La as Bo,M as ao,Ma as Mo,N as mo,Na as Wo,O as so,Oa as zo,P as xo,Pa as Lo,Q as io,Qa as No,R as lo,Ra as Vo,S as uo,Sa as Xo,T as co,Ta as qo,U as yo,V as bo,a as fe,aa as f,b as pe,ba as p,c as ae,ca as a,d as me,da as m,e as de,ea as d,f as se,fa as s,ga as x,ha as i,ia as l,ja as u,ka as c,la as y,m as n,ma as b,na as g,o as Be,oa as C,p as Me,pa as w,q as We,qa as I,r as ze,ra as T,s as Le,sa as go,t as Ne,ta as Co,u as Ve,ua as wo,v as Xe,va as Io,w as qe,wa as To,x as Ge,xa as ko,y as He,ya as ho,z as Je,za as Do}from"./focused-chunks/chunk-
|
|
1
|
+
import{A as Ke,Aa as _o,B as Qe,Ba as So,C as Ye,Ca as vo,D as Ze,Da as Fo,E as $e,Ea as Eo,F as eo,Fa as Po,G as oo,Ga as Ro,H as to,Ha as Oo,I as ro,Ia as Uo,J as no,Ja as jo,K as fo,Ka as Ao,L as po,La as Bo,M as ao,Ma as Mo,N as mo,Na as Wo,O as so,Oa as zo,P as xo,Pa as Lo,Q as io,Qa as No,R as lo,Ra as Vo,S as uo,Sa as Xo,T as co,Ta as qo,U as yo,V as bo,a as fe,aa as f,b as pe,ba as p,c as ae,ca as a,d as me,da as m,e as de,ea as d,f as se,fa as s,ga as x,ha as i,ia as l,ja as u,ka as c,la as y,m as n,ma as b,na as g,o as Be,oa as C,p as Me,pa as w,q as We,qa as I,r as ze,ra as T,s as Le,sa as go,t as Ne,ta as Co,u as Ve,ua as wo,v as Xe,va as Io,w as qe,wa as To,x as Ge,xa as ko,y as He,ya as ho,z as Je,za as Do}from"./focused-chunks/chunk-ZHX3433X.js";import{R as xe,Ra as ie,Sa as le,Ta as ue,Va as he,Wa as De,Xa as _e,Ya as Se,fb as ve,gb as Fe,hb as Ee,ib as Pe,jb as Re,kb as Oe,lb as Ue,mb as je,nb as Ae,rb as k}from"./focused-chunks/chunk-ZOE2NSJB.js";import"./focused-chunks/chunk-5SBU4QDC.js";import{a as X,b as q,c as G,d as H,e as J,f as K}from"./focused-chunks/chunk-533DCWPY.js";import"./focused-chunks/chunk-SHF57M2H.js";import{$ as Q,Da as Y,fc as ce,gc as ye,hb as r,hc as be,ic as ge,jc as Ce,kb as Z,kc as we,lb as $,lc as Ie,mb as ee,mc as Te,nb as oe,nc as ke,pb as te,qb as re,rb as ne}from"./focused-chunks/chunk-6C3CUU2G.js";import"./focused-chunks/chunk-OGGF2RBL.js";import"./focused-chunks/chunk-HFAW3FJQ.js";import{$d as O,ad as h,ae as U,bd as D,be as j,cd as _,ce as A,dd as S,de as B,ed as v,ee as M,fd as F,fe as W,gd as E,ge as z,hd as P,he as L,id as R,ie as N,je as V}from"./focused-chunks/chunk-4YTDKIPF.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},o=new e.Error().stack;o&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[o]="d45a8203-4501-5797-a6cc-a2e7844adec9")}catch{}})();(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},o=new e.Error().stack;o&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[o]="87fb8085-4f16-58a9-9de7-c871fb90be5b")}catch{}})();export{ye as ACTIONABILITY_ORDERING_KINDS,q as BRIEF_LIST_FIELDS,Ke as CONTEXT_EVALUATION_METRIC_NAMES,f as CONTEXT_OUTPUT_VALUES,eo as CONTEXT_PACKING_PROFILES,qe as CONTEXT_RELEVANCE_SERVICE,Ve as CONTEXT_RELEVANCE_SIGNAL_NAMES,ro as CONTEXT_SIGNAL_SET_VERSION,to as CONTEXT_SIGNAL_STORE_FORMAT_VERSION,no as CONTEXT_SIGNAL_STORE_WARNING_DETAILS,O as CONTEXT_USAGE_LIMITS,mo as ContextSignalStore,U as ContextUsageValidationError,_o as DEFAULT_CHILD_SAMPLE_LIMIT,X as DEFAULT_COMPACT_LIST_FIELDS,oe as DEFAULT_DERIVED_INDEX_MINIMUM_ITEMS,xo as DEFAULT_WORKSPACE_MEMORY_MINIMUM_ITEMS,J as GET_DEPTH_VALUES,ao as JsonFileContextSignalStoreAdapter,G as LIST_COMMAND_DEFAULT_PROJECTIONS,Ee as LIST_SORT_FIELDS,Pe as LIST_SORT_ORDER_VALUES,Do as MAX_CHILD_PROJECTION_ITEMS,go as NEXT_OUTPUT_VALUES,fe as PM_COMPLETE_LIST_FINDING_CODES,pe as PmCompleteListValidationError,R as QUERY_CURSOR_CONTRACT,Ae as _testOnly,Me as _testOnlyAggregateCommand,Fo as _testOnlyGetCommand,wo as _testOnlyNextCommand,Vo as _testOnlySearchCommand,te as acquireItemMetadataDerivedIndexLock,k as analyzeDuplicateItems,I as applyContextTagProjection,Re as applyFilterValueEcho,se as assertCompleteListResult,j as attachContextUsageServingReceipt,b as buildChildrenByParent,Eo as buildCompactSearchFilterSummary,Oe as buildContentFilterEcho,po as buildContextSignalSnapshot,Ue as buildGovernanceMissingFilterEcho,So as buildItemChildrenRollup,Xe as buildItemContextRelevanceCandidates,Po as buildVerboseSearchFilters,io as buildWorkspaceMemorySnapshot,de as certifyCompleteListResult,zo as classifyImplicitSemanticFallbackReason,be as collectBlockedByIds,Ce as collectBlockedByIdsFromCorpus,B as collectContextUsageDeliveredItemIds,Ie as collectDependencyBlockedIds,Wo as collectErrorCauseCodes,i as collectSubtreeIds,l as compareCriticalItems,ke as computeActionabilityReport,ae as createCompleteListOptions,D as createQueryFingerprint,Ro as createSearchCursorFingerprint,F as decodeQueryCursor,S as decodeQueryCursorEnvelope,v as decodeQueryCursorState,Ge as defaultScoreContextCandidates,_ as encodeQueryCursor,Qe as evaluateContextRanking,M as finalizeContextUsageDelivery,No as formatVectorIndexRecoveryWarnings,ge as indexBlockedByIds,me as inspectCompleteListResult,K as listGetProjectionFields,H as listListProjectionFields,r as measureItemMetadataReadWork,C as mergeSortedWarnings,oo as packContextCandidates,u as packRankedContextItems,P as paginateQueryRows,s as parseContextDepth,p as parseContextFocusFields,x as parseContextSections,fo as parseContextSignalSnapshot,ie as parseIntegerLimit,xe as parseLimit,he as parseMultiValueFilter,le as parsePriority,Se as parsePriorityFilterSet,De as parseStringFilterSet,ue as parseType,_e as parseTypeFilterSet,Io as partitionDecisionEntries,a as projectContextFocusRows,A as propagateContextUsageServingReceipt,Z as queryItemMetadataIndex,$ as queryLinkedFileMetadataIndex,ee as querySimilarItemMetadataIndex,V as readContextUsageAffinity,Q as readHistoryEntries,re as readItemMetadataDerivedIndexState,so as readWorkspaceContextSignals,lo as readWorkspaceMemory,z as recordContextUsageDelivery,W as recordContextUsageServing,L as recordContextUsageTouch,N as recordContextUsageTouches,ne as refreshItemMetadataDerivedIndex,ze as renderCalendarMarkdown,Le as renderCalendarToon,w as renderContextMarkdown,ko as renderNextMarkdown,We as resolveCalendarOutputFormat,Fe as resolveContentFieldFilters,m as resolveContextOutputFormat,d as resolveContextTokenBudget,jo as resolveEffectiveSearchMode,Bo as resolveHybridSemanticWeight,we as resolveItemBlockers,ce as resolveItemExecutionRole,ve as resolveMissingMetadataFilters,Co as resolveNextOutputFormat,E as resolveQueryCursorStart,Uo as resolveSearchMaxResults,Oo as resolveSearchPage,Ao as resolveSearchScoreThreshold,Mo as resolveSearchTuning,Lo as resolveVectorIndexRecovery,n as runActivity,Be as runAggregate,Ne as runCalendar,T as runContext,$e as runContextEvaluationCorpus,Ye as runContextEvaluationScenario,qo as runDuplicates,vo as runGet,ho as runHistory,je as runList,To as runNext,Xo as runSearch,He as scoreContextCandidates,Je as scoreContextCandidatesWithActiveExtensions,yo as searchWorkspaceMemory,bo as searchWorkspaceMemoryReadResult,Te as selectActionableEntries,h as selectCursorSemanticOptions,co as selectWorkspaceMemory,uo as selectWorkspaceMemoryRollups,Ze as summarizeContextEvaluationReports,g as toContextFocusItem,c as toContextPackingSummary,y as toContextRankingSummary,Y as verifyHistoryChain};
|
|
2
2
|
//# sourceMappingURL=sdk-query.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{$a as rc,$b as rd,Aa as Nb,Ab as Sc,Ba as Ob,Bb as Tc,Ca as Pb,Cb as Uc,Da as Qb,Db as Vc,Ea as Rb,Eb as Wc,Fa as Sb,Fb as Xc,Ga as Tb,Gb as Yc,Ha as Ub,Hb as Zc,Ia as Vb,Ib as _c,Ja as Wb,Jb as $c,Ka as Xb,Kb as ad,La as Yb,Lb as bd,M as rb,Ma as Zb,Mb as cd,N as sb,Na as _b,Nb as dd,O as tb,Oa as $b,Ob as ed,Pa as ac,Pb as fd,Qa as bc,Qb as gd,Ra as cc,Rb as hd,Sa as ic,Sb as id,Ta as jc,Tb as jd,Ua as kc,Ub as kd,Va as lc,Vb as ld,Wa as mc,Wb as md,Xa as nc,Xb as nd,Ya as oc,Yb as od,Za as pc,Zb as pd,_a as qc,_b as qd,a as Ea,ab as sc,ac as sd,b as Fa,bb as tc,bc as td,c as Ga,ca as wb,cb as uc,cc as ud,da as xb,db as vc,dc as vd,ea as yb,eb as wc,ec as wd,fa as zb,fb as xc,fc as xd,gb as yc,gc as yd,hb as zc,hc as zd,ib as Ac,ic as Ad,jb as Bc,jc as Bd,kb as Cc,kc as Cd,lb as Dc,lc as Dd,mb as Ec,mc as Ed,n as La,nb as Fc,nc as Fd,ob as Gc,oc as Gd,p as Ma,pa as Ab,pb as Hc,pc as Hd,q as Na,qa as Db,qb as Ic,qc as Id,r as Oa,ra as Eb,rb as Jc,rc as Jd,s as Pa,sa as Fb,sb as Kc,sc as Kd,t as Qa,ta as Gb,tb as Lc,tc as Ld,u as Ra,ua as Hb,ub as Mc,uc as Md,v as Sa,va as Ib,vb as Nc,vc as Nd,wa as Jb,wb as Oc,wc as Od,xa as Kb,xb as Pc,ya as Lb,yb as Qc,za as Mb,zb as Rc}from"./chunks/chunk-
|
|
1
|
+
import{$a as rc,$b as rd,Aa as Nb,Ab as Sc,Ba as Ob,Bb as Tc,Ca as Pb,Cb as Uc,Da as Qb,Db as Vc,Ea as Rb,Eb as Wc,Fa as Sb,Fb as Xc,Ga as Tb,Gb as Yc,Ha as Ub,Hb as Zc,Ia as Vb,Ib as _c,Ja as Wb,Jb as $c,Ka as Xb,Kb as ad,La as Yb,Lb as bd,M as rb,Ma as Zb,Mb as cd,N as sb,Na as _b,Nb as dd,O as tb,Oa as $b,Ob as ed,Pa as ac,Pb as fd,Qa as bc,Qb as gd,Ra as cc,Rb as hd,Sa as ic,Sb as id,Ta as jc,Tb as jd,Ua as kc,Ub as kd,Va as lc,Vb as ld,Wa as mc,Wb as md,Xa as nc,Xb as nd,Ya as oc,Yb as od,Za as pc,Zb as pd,_a as qc,_b as qd,a as Ea,ab as sc,ac as sd,b as Fa,bb as tc,bc as td,c as Ga,ca as wb,cb as uc,cc as ud,da as xb,db as vc,dc as vd,ea as yb,eb as wc,ec as wd,fa as zb,fb as xc,fc as xd,gb as yc,gc as yd,hb as zc,hc as zd,ib as Ac,ic as Ad,jb as Bc,jc as Bd,kb as Cc,kc as Cd,lb as Dc,lc as Dd,mb as Ec,mc as Ed,n as La,nb as Fc,nc as Fd,ob as Gc,oc as Gd,p as Ma,pa as Ab,pb as Hc,pc as Hd,q as Na,qa as Db,qb as Ic,qc as Id,r as Oa,ra as Eb,rb as Jc,rc as Jd,s as Pa,sa as Fb,sb as Kc,sc as Kd,t as Qa,ta as Gb,tb as Lc,tc as Ld,u as Ra,ua as Hb,ub as Mc,uc as Md,v as Sa,va as Ib,vb as Nc,vc as Nd,wa as Jb,wb as Oc,wc as Od,xa as Kb,xb as Pc,ya as Lb,yb as Qc,za as Mb,zb as Rc}from"./chunks/chunk-BOZ4HVYL.js";import"./chunks/chunk-YMMLKKEP.js";import{J as vb,b as Za,d as qb,p as ub}from"./chunks/chunk-Y2P3DSSO.js";import{Ab as ib,Cb as jb,Db as kb,Eb as lb,Ed as Bb,Fd as Cb,Rd as dc,Sd as ec,Td as fc,Ud as gc,Vd as hc,gc as mb,jc as nb,kc as ob,lc as pb,yb as gb,zb as hb}from"./chunks/chunk-WDF7PP4P.js";import{H as Ta,I as Ua,K as Va,L as Wa,M as Xa,c as Ha,d as Ia,f as Ja,g as Ka}from"./chunks/chunk-3AHONKLL.js";import{Dc as cb,Ob as Ya,Pb as _a,Qb as $a,Rb as ab,Sb as bb,Uc as db,Vc as eb,Zc as fb}from"./chunks/chunk-UKLOSZV6.js";import{$d as A,$j as wa,$k as Aa,Aa as k,Ea as l,Ga as m,Ha as n,Ia as o,Ig as ba,Jg as ca,Kg as da,Kj as va,Lg as ea,Mg as fa,Ng as ga,Ni as ra,O as e,Og as ha,Oi as sa,Pg as ia,Pi as ta,Q as f,Qg as ja,Rc as v,Rg as ka,Sg as la,Tg as ma,Ug as na,Vg as oa,Zd as z,_c as w,ab as p,ad as x,ak as xa,al as Ba,ba as g,bg as S,bl as Ca,ca as h,cg as T,ck as ya,df as N,dg as U,dk as za,dl as Da,ee as B,eg as V,fe as C,fg as W,gb as q,ge as D,gf as O,gg as X,he as E,hf as P,hg as Y,ib as r,ie as F,if as Q,ig as Z,je as G,jf as R,jg as _,ji as pa,ke as H,kg as $,ki as qa,lb as s,lg as aa,mb as t,me as I,o as a,ob as u,oe as J,pe as K,qd as y,r as b,re as L,s as c,se as M,t as d,wj as ua,ya as i,za as j}from"./chunks/chunk-J4DRE3WN.js";export{B as BASELINE_ITEM_FORMAT_VERSION,i as BUILTIN_ITEM_TYPE_VALUES,o as CONFIDENCE_TEXT_VALUES,cb as CONTEXT_OUTPUT_VALUES,C as CURRENT_ITEM_FORMAT_VERSION,gb as DEFAULT_TERMINAL_TRANSITION_POLICY,l as DEPENDENCY_KIND_VALUES,e as EXIT_CODE,O as HISTORY_EVENT_CLASSIFICATION_VERSION,n as ISSUE_SEVERITY_VALUES,j as ITEM_TYPE_VALUES,P as MAINTENANCE_HISTORY_OPERATIONS,T as MAX_WORKFLOW_POLICIES,U as MAX_WORKFLOW_POLICY_TERMS,eb as NEXT_OUTPUT_VALUES,Ea as PM_CLI_EXPECTED_ERROR_NAME,ja as PM_COMMAND_OUTPUT_BUDGET_CONTRACTS,ea as PM_DIAGNOSTIC_DEGRADATION_STEPS,fa as PM_DIAGNOSTIC_OUTPUT_BUDGET_CONTRACTS,da as PM_DIAGNOSTIC_OUTPUT_CLASSES,Ia as PM_GITIGNORE_END,Ha as PM_GITIGNORE_START,ca as PM_OUTPUT_BUDGET_CLASSES,ba as PM_OUTPUT_DEGRADATION_STEPS,f as PmCliError,ic as PmClient,Ma as PmCompleteListValidationError,m as RISK_VALUES,La as SEARCH_EXTENSION_FLAG_DEFINITIONS,k as STATUS_VALUES,Q as SUBSTANTIVE_HISTORY_OPERATIONS,S as WORKFLOW_POLICY_ACTIONS,Ua as WORKFLOW_POLICY_DOCUMENT_SCHEMA,Ta as WORKFLOW_POLICY_SCHEMA,N as acquireLock,pc as aggregate,Od as analyzeSdkActionCoverage,Bc as append,qa as appendHistoryEntry,jb as applyTerminalOrderingPolicy,Qa as assertCompleteListResult,Va as buildWorkflowCompletenessCheck,M as canonicalDocument,Pa as certifyCompleteListResult,kd as claim,ld as claimNext,R as classifyHistoryEvent,F as classifyItemFormatVersion,Ra as clearWorkspaceContractsCache,jd as close,kb as closeItem,td as closeTask,sc as comments,Zb as commitImportedItem,Dc as config,jc as context,nd as copy,gd as create,Na as createCompleteListOptions,pa as createHistoryEntry,Wa as createLifecycleCompletenessPolicies,Fa as createPmCliExpectedError,ha as createPmCommandOutputBudget,aa as createWorkflowPolicyEvaluator,ia as definePmCommandOutputBudget,od as deleteItem,zc as deps,yc as docs,rc as duplicates,D as effectiveItemFormatVersion,Yb as emptyImportedDocument,Ka as ensurePmGitignore,Xb as ensureTrackerInitialized,la as estimatePmOutputTokens,$ as evaluateWorkflowPolicies,ud as extension,wd as extensionActivate,xd as extensionDeactivate,vd as extensionList,vc as files,wc as filesDiscover,xc as filesLookup,qd as focus,ad as gc,ta as generateItemId,nc as get,v as getActiveExtensionRegistrations,Kd as getContracts,u as getHistoryPath,t as getItemPath,Ja as getPmGitignoreBlock,s as getSettingsPath,Sa as getWorkspaceContracts,Ac as graph,$c as health,ed as historyCompact,fd as historyCompactBulk,bd as historyRedact,cd as historyRepair,dd as historyRepairAll,ga as inferPmOutputBudgetClass,Cc as init,Oa as inspectCompleteListResult,Ga as isPmCliExpectedError,I as isTerminalStatus,h as isTimestampLiteral,Aa as jaccardSimilarity,uc as learnings,kc as list,lc as listAllComplete,ya as listAllItemMetadata,za as listAllItemMetadataLight,wb as loadCreateTemplateOptions,wa as locateItem,oc as next,E as normalizeItemFormatVersion,sa as normalizeItemId,J as normalizeItemMetadata,ra as normalizeRawItemId,Ba as normalizeSimilarityText,H as normalizeStatusInput,tc as notes,g as nowIso,Hd as packageActivate,Gd as packageCatalog,Id as packageDeactivate,Ed as packageDescribe,Cd as packageDoctor,Ad as packageInstall,yd as packageLifecycle,zd as packageList,Dd as packageManage,Fd as packageReload,Bd as packageUninstall,y as parseTags,V as parseWorkflowPolicy,W as parseWorkflowPolicyDocument,a as pathExists,sd as pauseTask,Vc as profile,Yc as profileApply,Zc as profileLint,Wc as profileList,Xc as profileShow,na as projectPmDiagnosticOutput,oa as projectPmDiagnosticText,Eb as readBooleanOption,Fb as readCsvListOption,b as readFileIfExists,xa as readLocatedItem,Ld as readRequiredString,ua as readSettings,Db as readStringOption,va as readWorkflowPolicies,X as readWorkflowPolicyField,md as release,d as removeFileIfExists,$a as renderCalendarMarkdown,ab as renderCalendarToon,ac as renderGuideMarkdown,id as reopen,ib as requireTerminalReason,_a as resolveCalendarOutputFormat,_b as resolveGuideOutputFormat,q as resolveImplicitPmRoot,p as resolveItemTypeRegistry,ka as resolvePmCommandOutputBudget,ma as resolvePmDiagnosticOutputBudget,r as resolvePmRoot,A as resolveRuntimeFieldRegistry,z as resolveRuntimeStatusRegistry,hb as resolveTerminalReason,pd as restore,Nd as runAction,x as runActiveOnReadHooks,w as runActiveOnWriteHooks,Za as runAggregate,bb as runCalendar,lb as runClose,pb as runCloseTask,bc as runCompletion,db as runContext,rb as runCopy,sb as runDelete,Cb as runDuplicates,tb as runFocus,ub as runGet,$b as runGuide,Ya as runList,fb as runNext,ob as runPauseTask,cc as runReindex,Ab as runReopen,qb as runRestore,vb as runSearch,nb as runStartTask,Bb as runStats,yb as runTemplatesList,xb as runTemplatesSave,zb as runTemplatesShow,dc as runTestRunsList,fc as runTestRunsLogs,hc as runTestRunsResume,ec as runTestRunsStatus,gc as runTestRunsStop,mb as runUpdate,Md as runWithActiveExtensions,Xa as runWorkflowPolicyAction,G as scanItemFormatVersions,Ec as schema,Lc as schemaAddField,Jc as schemaAddStatus,Hc as schemaAddType,Pc as schemaApplyPreset,Qc as schemaInferTypes,Fc as schemaList,Nc as schemaListFields,Tc as schemaRemapStatus,Mc as schemaRemoveField,Kc as schemaRemoveStatus,Ic as schemaRemoveType,Sc as schemaRenameField,Rc as schemaRenameType,Gc as schemaShow,Oc as schemaShowField,Uc as schemaShowStatus,Da as scoreItemSimilarity,mc as search,Wb as selectImportAuthor,L as serializeItemDocument,K as splitFrontMatter,rd as startTask,qc as stats,Hb as toEstimatedMinutesValue,Mb as toImportBoolean,Qb as toImportConfidence,Lb as toImportInteger,Ub as toImportLinkedDocs,Tb as toImportLinkedFiles,Vb as toImportLinkedTests,Sb as toImportLogEntries,Rb as toImportNormalizedEnum,Pb as toImportNumberMap,Ib as toImportPriority,Kb as toImportStatus,Nb as toImportStringList,Ob as toImportStringMap,Jb as toImportTags,Gb as toNonEmptyImportString,Ca as tokenizeSimilarityText,hd as update,Jd as upgrade,_c as validate,Z as workflowApprovalFingerprint,_ as workflowPolicyApplies,Y as workflowPolicyFingerprint,c as writeFileAtomic};
|
|
2
2
|
//# sourceMappingURL=sdk-runtime.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{A as t,B as u,C as v,D as w,E as x,F as y,G as z,H as A,I as B,J as C,K as D,L as E,M as F,N as G,O as H,P as I,Q as J,R as K,S as L,T as M,U as N,V as O,W as P,X as Q,Y as R,f as c,g as d,l as e,m as f,n as g,o as h,p as i,q as j,r as k,s as l,t as m,u as n,v as o,w as p,x as q,y as r,z as s}from"./chunks/chunk-
|
|
1
|
+
import{A as t,B as u,C as v,D as w,E as x,F as y,G as z,H as A,I as B,J as C,K as D,L as E,M as F,N as G,O as H,P as I,Q as J,R as K,S as L,T as M,U as N,V as O,W as P,X as Q,Y as R,f as c,g as d,l as e,m as f,n as g,o as h,p as i,q as j,r as k,s as l,t as m,u as n,v as o,w as p,x as q,y as r,z as s}from"./chunks/chunk-5P5PYCZX.js";import"./chunks/chunk-BOZ4HVYL.js";import"./chunks/chunk-YMMLKKEP.js";import"./chunks/chunk-Y2P3DSSO.js";import"./chunks/chunk-WDF7PP4P.js";import{Aa as b,h as a}from"./chunks/chunk-3AHONKLL.js";import"./chunks/chunk-UKLOSZV6.js";import"./chunks/chunk-J4DRE3WN.js";export{e as activateExtensionForTest,M as assertExtensionBlueprint,L as assertExtensionCapabilityUsage,t as assertExtensionDeactivated,P as assertExtensionManifestCompatible,O as assertExtensionManifestMatchesBlueprint,Q as assertExtensionPreflight,u as assertPackageManifest,N as assertProjectProfile,v as assertRegisteredCommandContract,F as assertRegisteredCommandOverride,B as assertRegisteredExporter,w as assertRegisteredFlags,x as assertRegisteredHook,A as assertRegisteredImporter,C as assertRegisteredItemField,D as assertRegisteredItemType,K as assertRegisteredMigration,G as assertRegisteredParserOverride,H as assertRegisteredPreflightOverride,E as assertRegisteredProfile,I as assertRegisteredRendererOverride,y as assertRegisteredSearchProvider,J as assertRegisteredServiceOverride,z as assertRegisteredVectorStoreAdapter,R as createExtensionTestHarness,f as deactivateExtensionForTest,a as describeExtensionActivation,c as describeExtensionBlueprint,d as lintExtensionBlueprint,b as renderExtensionSurfaceMarkdown,g as runRegisteredCommandForTest,l as runRegisteredCommandOverrideForTest,s as runRegisteredExporterForTest,i as runRegisteredHookForTest,r as runRegisteredImporterForTest,q as runRegisteredMigrationForTest,h as runRegisteredMutationGuardForTest,j as runRegisteredParserOverrideForTest,k as runRegisteredPreflightOverrideForTest,m as runRegisteredRendererOverrideForTest,o as runRegisteredSearchProviderForTest,n as runRegisteredServiceOverrideForTest,p as runRegisteredVectorStoreAdapterForTest};
|
|
2
2
|
//# sourceMappingURL=sdk-testing.js.map
|
package/dist/cli-bundle/sdk.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{A as Fh,B as jh,C as GM,D as UM,E as BM,a as fs,b as _s,c as hs,d as gs,e as PM,f as MM,g as Oh,h as Ih,i as Rh,k as Ph,l as Mh,m as kh,n as xh,o as Nh,p as Lh,q as Dh,r as $h,s as kM,t as xM,u as NM,v as LM,w as DM,x as $M,y as FM,z as jM}from"./chunks/chunk-A2Q64TGR.js";import{A as Ik,B as Rk,C as Pk,D as Mk,E as kk,F as xk,G as Nk,H as Lk,I as Dk,J as $k,K as Fk,L as jk,M as Gk,N as Uk,O as Bk,P as qk,Q as zk,R as Vk,S as Hk,T as Kk,U as Wk,V as Xk,W as Yk,X as Jk,Y as Zk,a as rk,b as ok,c as nk,d as ik,e as sk,f as ak,g as ck,h as dk,i as lk,j as uk,k as pk,l as mk,m as fk,n as _k,o as hk,p as gk,q as yk,r as bk,s as Ck,t as Tk,u as Sk,v as wk,w as Ek,x as Ak,y as vk,z as Ok}from"./chunks/chunk-ZYRN2OG3.js";import{a as qM,b as zM,c as VM,d as HM}from"./chunks/chunk-GQMILIC5.js";import{a as KM,b as WM,c as XM,d as YM,e as JM,f as ZM,g as QM,h as ek,i as tk}from"./chunks/chunk-DBHQIS6Z.js";import{$ as nr,$a as o_,$b as oh,A as tO,Aa as Af,Ab as P_,B as rO,Ba as vf,Bb as M_,C as mu,Ca as Of,Cb as k_,D as kp,Da as If,Db as x_,E as xp,Ea as Rf,Eb as N_,F as Np,Fa as Pf,Fb as L_,G as Lp,Ga as Mf,Gb as D_,H as Dp,Ha as kf,Hb as $_,I as Ye,Ia as xf,Ib as F_,J as $p,Ja as Nf,Jb as j_,K as Fp,Ka as Lf,Kb as G_,L as jp,La as Df,Lb as U_,M as Gp,Ma as $f,Mb as B_,N as Up,Na as Ff,Nb as q_,O as Bp,Oa as jf,Ob as z_,P as tM,Pa as Gf,Pb as V_,Q as rM,Qa as Uf,Qb as H_,R as oM,Ra as dr,Rb as K_,S as Xt,Sa as he,Sb as W_,T as Yt,Ta as Xf,Tb as X_,U as Jt,Ua as Yf,Ub as Y_,V as Zt,Va as Jf,Vb as J_,W as Qt,Wa as Zf,Wb as Z_,X as er,Xa as Qf,Xb as Q_,Y as tr,Ya as e_,Yb as eh,Z as rr,Za as t_,Zb as th,_ as or,_a as r_,_b as rh,a as zc,aa as ir,ab as n_,ac as nh,b as Vc,ba as ym,bb as i_,bc as ih,c as Hc,ca as bm,cb as s_,cc as sh,d as Rv,da as Cm,db as a_,dc as ah,e as Pv,ea as Tm,eb as c_,ec as ch,f as Kc,fa as Sm,fb as d_,fc as dh,g as $v,ga as Je,gb as l_,gc as lh,h as Fv,ha as wm,hb as u_,hc as uh,i as jv,ia as Em,ib as p_,ic as ph,j as Gv,ja as Am,jb as m_,jc as mh,k as Uv,ka as vm,kb as f_,kc as fh,l as Bv,la as Om,lb as __,lc as _h,m as qv,ma as Im,mb as h_,mc as hh,n as zv,na as Rm,nb as g_,nc as gh,o as Vv,oa as Pm,ob as y_,oc as yh,p as Hv,pa as gM,pb as b_,pc as bh,q as Kv,qa as _f,qb as C_,qc as Ch,r as Wv,ra as hf,rb as T_,rc as Th,s as Xv,sa as gf,sb as S_,sc as Sh,t as Yv,ta as yf,tb as w_,tc as wh,u as Zc,ua as bf,ub as E_,uc as Eh,v as Qc,va as Cf,vb as A_,vc as Ah,w as Jv,wa as Tf,wb as v_,wc as vh,x as Zv,xa as Sf,xb as O_,y as Qv,ya as wf,yb as I_,z as eO,za as Ef,zb as R_}from"./chunks/chunk-B6W5LIXK.js";import{a as Wt,f as jP,g as GP,h as Vp,i as Hp}from"./chunks/chunk-NYE6EREL.js";import{A as HP,B as KP,C as WP,D as XP,E as YP,F as JP,G as ZP,H as QP,I as eM,J as om,K as nm,L as im,M as pM,N as Mm,O as mM,P as fM,Q as _M,R as hM,b as pu,c as RR,d as Mp,e as vP,f as OP,g as IP,h as RP,i as PP,j as MP,k as kP,l as xP,m as NP,n as LP,o as DP,p as qp,q as $P,r as Qp,s as em,t as tm,u as rm,v as UP,w as BP,x as qP,y as zP,z as VP}from"./chunks/chunk-BY3ID7QI.js";import{$a as cu,$b as Ep,$c as Fm,A as jO,Aa as Ll,Ab as fP,Ac as lm,Ad as Qm,B as GO,Ba as Dl,Bb as _P,Bc as um,Bd as ef,C as UO,Ca as $l,Cb as hP,Cc as pm,Cd as tf,D as BO,Da as Fl,Db as rp,Dc as mm,Dd as rf,E as ZO,Ea as jl,Eb as op,Ec as fm,Ed as of,Fa as Gl,Fc as _m,Fd as RM,Ga as Ul,Gb as np,Gc as hm,Gd as nf,Ha as Bl,Hb as ip,Hc as gm,Hd as sf,Ia as ql,Ib as gP,Ic as dM,Id as af,J as Yd,Ja as zl,Jb as sp,Jc as lM,Jd as cf,Ka as Vl,Kb as ap,Kc as uM,Kd as df,La as Hl,Lb as cp,Lc as yM,Ld as lf,Ma as Kl,Mb as dp,Mc as sr,Md as uf,Na as Wl,Nb as lp,Nc as bM,Nd as pf,Oa as Xl,Ob as up,Oc as Ze,Od as mf,Pa as Yl,Pb as pp,Pc as oe,Pd as ff,Qa as Jl,Qb as mp,Qc as km,Qd as Bf,Ra as Zl,Rb as fp,Rd as qf,Sa as Ql,Sb as _p,Sd as zf,Ta as eu,Tb as hp,Tc as Qe,Td as Vf,Ua as tu,Ub as gp,Uc as xm,Ud as Hf,Va as ru,Vb as yp,Vc as Nm,Vd as Kf,Wa as ou,Wb as bp,Wd as Wf,Xa as nu,Xb as Cp,Xc as _e,Ya as iu,Yb as Tp,Yc as Lm,Za as su,Zb as Sp,Zc as Dm,_a as au,_b as wp,_c as $m,a as mO,aa as QO,ab as du,ac as yP,ad as CM,b as fO,ba as eI,bb as lu,bc as bP,bd as TM,c as _O,ca as Jd,cb as SR,cc as Ap,cd as SM,d as hO,da as Zd,db as wR,dd as wM,e as gO,ea as Qd,eb as ER,ed as EM,f as yO,fa as el,fb as AR,fd as ar,g as bO,ga as tl,gb as vR,gc as vp,gd as AM,h as CO,ha as rl,hb as OR,hd as vM,i as TO,ia as ol,ib as IR,ic as Op,id as cr,j as SO,ja as NI,jb as fu,jc as Ip,jd as OM,k as wO,ka as LI,kb as _u,kc as Rp,kd as IM,l as EO,la as DI,lb as hu,lc as Pp,m as AO,ma as $I,mb as gu,mc as CP,md as jm,n as vO,na as FI,nb as yu,nc as TP,nd as Gm,o as OO,oa as jI,oc as SP,od as Um,p as IO,pa as GI,pb as bu,pc as Xe,pd as Bm,q as RO,qa as HI,qb as Cu,qc as wP,qd as qm,r as PO,ra as KI,rb as Tu,rc as Kt,rd as zm,s as MO,sa as Rl,sb as Su,sc as EP,sd as Vm,t as kO,ta as Pl,tb as wu,tc as AP,td as Hm,u as xO,ua as WI,ub as Zu,uc as FP,ud as Km,v as NO,va as XI,vb as Qu,vc as zp,vd as Wm,w as LO,wa as Ml,wb as ep,wc as sm,wd as Xm,x as DO,xa as kl,xb as tp,xc as am,xd as Ym,y as $O,ya as xl,yb as pP,yc as cm,yd as Jm,z as FO,za as Nl,zb as mP,zc as dm,zd as Zm}from"./chunks/chunk-XEV7BHH3.js";import{Aa as gl,Ba as yl,Ca as bl,H as lI,Ha as Cl,I as uI,Ia as Tl,Ja as Sl,K as pI,Ka as wl,L as mI,La as El,M as fI,Ma as Al,N as pl,Na as vl,O as ml,P as fl,Pa as Ol,Q as _l,Qa as Il,R as Gt,Ra as Kp,Sa as Wp,Ta as Xp,Va as Yp,Wa as Jp,Xa as Zp,a as Lv,b as Dv,c as Wc,d as Xc,f as Yc,g as Jc,h as tI,i as rI,j as oI,k as nI,l as iI,m as sI,n as aI,o as cI,p as nl,q as il,r as sl,s as al,t as cl,u as dI,ua as Ut,v as dl,va as Bt,w as ll,wa as qt,x as ul,xa as zt,ya as hl}from"./chunks/chunk-5JIJAWIF.js";import{$ as wd,$a as UI,$b as FR,$c as nM,A as XO,Ab as lR,Ac as Mu,B as YO,Bb as uR,Bc as ku,C as td,Ca as _I,Cb as pR,Cc as xu,D as rd,Da as hI,Db as mR,Dc as Vt,E as od,Ea as gI,Eb as fR,Ec as Nu,F as nd,Fa as yI,Fc as Lu,G as id,Ga as bI,Gc as Du,H as sd,Ha as CI,Hb as _R,Hc as $u,I as ad,Ia as TI,Ib as hR,Ic as Fu,J as cd,Ja as SI,Jb as gR,Jc as ju,K as dd,Ka as wI,Kb as yR,Kc as Gu,L as ld,La as EI,Lb as bR,Lc as Uu,M as ud,Ma as AI,Mb as CR,Mc as Bu,N as We,Na as vI,Nb as TR,Nc as qu,O as pd,Oa as OI,Ob as uu,Oc as zu,P as md,Pb as Eu,Pc as Vu,Q as fd,Qb as Au,Qc as Hu,R as _d,Rb as vu,Rc as Ku,S as JO,Sa as II,Sb as Ou,Sc as Wu,Tb as PR,Tc as Xu,U as hd,Ua as RI,Ub as MR,Uc as Ht,V as gd,Va as PI,Vb as kR,Vc as Yu,W as yd,Wb as xR,Wc as cP,X as bd,Xa as MI,Xb as NR,Xc as dP,Y as Cd,Ya as kI,Yb as LR,Yc as lP,Z as Td,Za as xI,Zb as DR,Zc as Ju,_ as Sd,_b as $R,_c as uP,aa as Ed,ab as BI,ac as jR,ad as iM,b as vv,ba as Ad,bb as qI,bc as GR,bd as sM,c as Ov,ca as vd,cb as zI,cc as UR,cd as aM,d as Iv,da as Od,db as VI,dc as BR,dd as cM,e as Mv,ea as Id,eb as YI,ec as qR,f as kv,fa as Rd,fb as JI,fc as zR,g as xv,ga as Pd,gb as ZI,gc as VR,h as Nv,ha as Md,hb as QI,hc as HR,i as oO,ia as kd,ib as eR,ic as KR,j as nO,ja as xd,jb as tR,jc as WR,k as iO,ka as Nd,kb as rR,kc as XR,l as sO,la as Ld,lb as oR,lc as YR,m as aO,ma as Dd,mb as nR,mc as JR,n as cO,na as $d,nb as iR,nc as ZR,o as dO,oa as Fd,ob as sR,oc as QR,p as lO,pa as jd,pb as aR,pc as eP,q as uO,qa as Gd,qb as cR,qc as tP,r as pO,ra as Ud,rc as rP,sa as Bd,sc as oP,t as ed,ta as qd,tc as nP,u as qO,ua as zd,uc as iP,v as zO,va as Vd,vc as sP,w as VO,wa as Hd,wc as aP,x as HO,xa as Kd,xc as Iu,y as KO,ya as Wd,yc as Ru,z as WO,za as Xd,zb as dR,zc as Pu}from"./chunks/chunk-D5AJQU7F.js";import{$b as jC,$c as pT,$d as wn,$e as Jn,$f as zS,$g as cw,$h as iE,$i as qE,$j as Ji,$k as ss,$l as Xs,$m as Na,$n as re,Aa as tn,Ab as PC,Ac as WC,Ad as MT,Ae as cS,Af as gS,Ag as bi,Ah as Lw,Ai as wE,Aj as oA,Ak as kA,Al as Ss,Am as ca,An as ac,Bb as MC,Bc as XC,Bd as kT,Be as dS,Bf as yS,Bg as Ci,Bh as Dw,Bi as EE,Bj as Lt,Bk as xA,Bl as ws,Bm as da,Bn as cc,Cb as kC,Ce as Ln,Cf as bS,Cg as Ti,Ch as $w,Ci as AE,Ck as NA,Cl as Es,Cm as la,Cn as dc,Dc as YC,Dd as xT,De as Dn,Df as CS,Dg as Si,Dh as Fw,Di as vE,Dj as nA,Dk as LA,Dl as As,Dm as ua,Dn as lc,E as Yb,Ea as rn,Ec as _n,Ed as NT,Ee as $,Ef as TS,Eg as wi,Eh as jw,Ei as OE,Ej as iA,Ek as DA,El as vs,Em as pa,En as uc,Fe as $n,Ff as SS,Fg as Ei,Fh as Gw,Fi as IE,Fj as sA,Fk as $A,Fl as Os,Fm as ma,Fn as pc,G as Jb,Ga as on,Gc as hn,Gd as LT,Gf as wS,Gg as Ai,Gh as Uw,Gi as RE,Gj as aA,Gk as FA,Gl as Is,Gn as mc,Ha as nn,Hc as gn,Hd as DT,Hf as ES,Hg as vi,Hh as Bw,Hi as PE,Hj as cA,Hk as jA,Hl as Rs,Hm as fa,Hn as fc,Ia as sn,Ib as xC,Id as $T,If as AS,Ig as Oi,Ih as qw,Ii as ME,Ik as Dt,Il as Ps,Im as _a,In as _c,J as Zb,Jb as Ue,Jd as FT,Jf as vS,Jg as Ii,Jh as zw,Ji as kE,Jk as GA,Jl as Ms,Jm as ha,Jn as hc,Kb as Pt,Kc as JC,Kd as jT,Kf as OS,Kg as Ri,Kh as Vw,Ki as xE,Kj as dA,Kl as ks,Km as ga,Kn as gc,Lb as NC,Lc as ZC,Ld as GT,Le as lS,Lf as IS,Lg as Pi,Lh as Hw,Li as NE,Ll as xs,Lm as ya,Ln as yc,Mb as LC,Mc as QC,Md as UT,Me as uS,Mf as RS,Mg as Mi,Mh as Kw,Mk as UA,Ml as Ns,Mm as ba,Mn as bc,N as Qb,Nb as DC,Nc as eT,Nd as BT,Ne as pS,Nf as PS,Ng as ki,Nh as Ww,Ni as qi,Nk as BA,Nl as Ls,Nm as Ca,Nn as Cc,O as D,Ob as $C,Oc as tT,Od as qT,Oe as Fn,Of as MS,Og as xi,Oh as Xw,Oi as zi,Oj as Ki,Ok as qA,Ol as Ds,Om as Ta,On as Tc,P as eC,Pb as H,Pc as rT,Pd as zT,Pe as jn,Pf as kS,Pg as Ni,Ph as Yw,Pi as Vi,Pj as lA,Pk as zA,Pl as $s,Pm as Sa,Pn as Sc,Q as b,Qb as FC,Qc as oT,Qd as VT,Qe as Gn,Qf as xS,Qg as Li,Qh as Jw,Qj as uA,Qk as VA,Ql as Fs,Qm as wa,Qn as wc,Rc as yn,Rd as HT,Re as Un,Rf as NS,Rg as Di,Ri as LE,Rj as pA,Rk as HA,Rl as js,Rm as Ea,Rn as Ec,S as tC,Sc as nT,Se as Bn,Sf as LS,Sg as $i,Sh as Zw,Si as DE,Sj as mA,Sk as KA,Sl as Gs,Sm as Aa,Sn as Ac,T as rC,Tc as iT,Te as qn,Tf as DS,Tg as Fi,Th as Qw,Ti as $E,Tk as WA,Tl as Us,Tm as va,Tn as vc,Uc as sT,Ue as zn,Uf as $S,Ug as ji,Ui as FE,Uj as fA,Uk as es,Ul as Bs,Um as Oa,Un as Oc,Vc as aT,Ve as Vn,Vf as FS,Vg as Gi,Vi as jE,Vj as _A,Vk as ts,Vl as qs,Vm as Ia,Vn as Ic,W as oC,Wc as cT,We as Hn,Wf as jS,Wg as ow,Wh as eE,Wj as hA,Wk as rs,Wl as zs,Wm as Ra,Wn as Rc,Xa as SC,Xc as dT,Xd as KT,Xe as Kn,Xf as GS,Xg as nw,Xh as tE,Xi as GE,Xj as gA,Xk as os,Xl as Vs,Xm as Pa,Xn as Pc,Ya as wC,Yc as lT,Ye as Wn,Yf as US,Yg as iw,Yh as rE,Yj as Wi,Yk as ns,Yl as Hs,Ym as Ma,Yn as Mc,Z as nC,Za as EC,Zc as uT,Zd as Sn,Ze as Xn,Zf as BS,Zg as sw,Zh as oE,Zi as UE,Zj as Xi,Zk as is,Zl as Ks,Zm as ka,_ as Ot,_c as bn,_d as WT,_e as Yn,_f as qS,_g as aw,_h as nE,_i as BE,_j as Yi,_l as Ws,_m as xa,_n as Ke,aa as It,ab as an,ac as mn,ad as Cn,af as Zn,ag as VS,ah as dw,ai as sE,aj as zE,ak as Zi,al as as,am as Ys,an as La,ao as kc,b as jo,ba as Jo,bb as AC,bc as fn,be as XT,bf as mS,bg as HS,bh as lw,bi as aE,bj as VE,bl as cs,bm as sv,bn as Da,c as Go,ca as Zo,cb as vC,cc as GC,cd as mT,ce as YT,cf as fS,cg as KS,ch as uw,ci as cE,ck as Qi,cl as ds,cm as av,cn as $a,co as gv,d as Uo,da as Rt,db as OC,dc as UC,dd as fT,de as JT,df as Be,dg as WS,dh as pw,di as dE,dk as yA,dl as ls,dm as Ve,dn as Fa,do as yv,e as Bo,eb as IC,ec as P,ed as _T,ee as En,ef as Qn,eg as XS,eh as mw,ei as lE,el as us,em as cv,en as ja,f as $e,fa as iC,fc as BC,fd as hT,fe as An,ff as _S,fg as YS,fh as fw,fi as uE,fk as bA,fl as ps,fm as dv,fn as Ga,g as qo,gb as cn,gc as Mt,gd as gT,ge as vn,gf as ei,gg as JS,gh as _w,gi as pE,gk as CA,gl as ms,gm as lv,gn as Ua,go as bv,h as L,ha as sC,hb as dn,hc as qC,hd as kt,he as On,hf as ti,hg as ZS,hh as hw,hk as TA,hl as XA,hm as Ft,hn as Ba,ho as Cv,i as Fe,ia as aC,ib as Ge,id as yT,ie as In,if as ri,ig as QS,ih as gw,ii as mE,il as YA,im as He,in as qa,io as Tv,j as zo,ja as cC,jb as RC,jc as zC,jd as bT,je as Rn,jf as oi,jg as ew,jh as yw,ji as Ui,jk as SA,jl as JA,jm as uv,jn as za,jo as Sv,k as Vo,ka as dC,kd as CT,ke as Pn,kg as tw,kh as bw,ki as Bi,kl as ZA,km as pv,kn as Va,ko as wv,l as Ho,la as lC,lb as ln,le as ZT,lg as rw,lh as Cw,ll as QA,lm as mv,ln as Ha,lo as Ev,m as Ko,ma as uC,mb as un,md as TT,me as QT,mg as ai,mh as Tw,mj as HE,mk as wA,ml as ev,mm as fv,mn as Ka,mo as Av,na as pC,nd as ST,ng as ci,nh as Sw,nj as KE,nl as tv,nm as _v,nn as Wa,no as xc,o as Wo,oa as mC,ob as pn,oe as Mn,og as di,oh as ww,oj as WE,ok as EA,ol as rv,om as hv,on as Xa,oo as Nc,p as vt,pa as fC,pe as kn,pg as li,ph as Ew,pi as fE,pj as XE,pm as Js,pn as Ya,po as Lc,q as fe,qa as _C,qd as Tn,qe as eS,qg as ui,qh as Aw,qi as _E,qj as YE,qm as Zs,qn as Ja,qo as Dc,r as Xo,rd as wT,re as xn,rg as pi,rh as vw,ri as hE,rj as JE,rm as Qs,rn as Za,ro as $c,s as je,sa as hC,sd as ET,se as Nn,sg as mi,sh as Ow,si as gE,sk as AA,sl as $t,sm as ea,sn as Qa,so as Fc,t as Yo,ta as gC,td as AT,te as tS,tf as xt,tg as qe,th as Iw,ti as yE,tk as vA,tl as ov,tm as ta,tn as ec,to as jc,ua as yC,ud as vT,ue as rS,uf as Nt,ug as ze,uh as Rw,ui as bE,uj as ZE,uk as OA,ul as nv,um as ra,un as tc,uo as Gc,v as Kb,va as bC,vd as OT,ve as oS,vf as ni,vg as fi,vh as Pw,vj as QE,vk as IA,vl as iv,vm as oa,vn as rc,vo as Uc,w as Wb,wa as CC,wc as VC,wd as IT,we as nS,wf as ii,wg as _i,wh as Mw,wi as CE,wj as Hi,wk as RA,wl as ys,wm as na,wn as oc,wo as Bc,x as Xb,xa as TC,xc as HC,xe as iS,xf as si,xg as hi,xh as kw,xj as eA,xl as bs,xm as ia,xn as nc,xo as qc,ya as Qo,yc as KC,yd as RT,ye as sS,yg as gi,yh as xw,yi as TE,yj as tA,yk as PA,yl as Cs,ym as sa,yn as ic,yo as jt,za as en,zd as PT,ze as aS,zf as hS,zg as yi,zh as Nw,zi as SE,zj as rA,zk as MA,zl as Ts,zm as aa,zn as sc}from"./chunks/chunk-33PER336.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="08485124-a2f1-5bb5-9316-533a3f7888bc")}catch{}})();var K="2026-07-28",Qk=["2025-11-25","2025-06-18"],et=[K],m={headerMismatch:-32020,missingRequiredClientCapability:-32021,unsupportedProtocolVersion:-32022,invalidParams:-32602},A={clientCapabilities:"io.modelcontextprotocol/clientCapabilities",clientInfo:"io.modelcontextprotocol/clientInfo",logLevel:"io.modelcontextprotocol/logLevel",protocolVersion:"io.modelcontextprotocol/protocolVersion",serverInfo:"io.modelcontextprotocol/serverInfo"},lr=["debug","info","notice","warning","error","critical","alert","emergency"],p=class extends Error{code;data;constructor(t,r,o={}){super(t),this.name="PmMcpProtocolError",this.code=r,this.data=o}};function _(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Gh(e){if(e===void 0)return;if(!_(e))throw new p("Invalid MCP clientInfo metadata",m.invalidParams,{field:A.clientInfo,expected:"object"});let t=typeof e.name=="string"?e.name.trim():"",r=typeof e.version=="string"?e.version.trim():"";if(t.length===0||r.length===0)throw new p("Invalid MCP clientInfo metadata",m.invalidParams,{field:A.clientInfo,required:["name","version"]});let o={name:t.slice(0,128),version:r.slice(0,128)};return typeof e.description=="string"&&e.description.trim()&&(o.description=e.description.trim().slice(0,1024)),typeof e.websiteUrl=="string"&&e.websiteUrl.trim()&&(o.websiteUrl=e.websiteUrl.trim().slice(0,2048)),o}function Uh(e){if(e!==void 0){if(typeof e!="string"||!lr.includes(e))throw new p("Invalid MCP logLevel metadata",m.invalidParams,{field:A.logLevel,allowed:[...lr]});return e}}function tt(e){let t=_(e)?e._meta:void 0;if(!_(t))throw new p("Missing required MCP request metadata",m.invalidParams,{required:[A.protocolVersion,A.clientCapabilities]});let r=t[A.protocolVersion];if(typeof r!="string"||!et.includes(r))throw new p("Unsupported protocol version",m.unsupportedProtocolVersion,{supported:[...et],requested:typeof r=="string"?r:null});let o=t[A.clientCapabilities];if(!_(o))throw new p("Invalid MCP client capabilities metadata",m.invalidParams,{field:A.clientCapabilities,expected:"object"});let n=Gh(t[A.clientInfo]),i=Uh(t[A.logLevel]);return{protocolVersion:K,clientCapabilities:o,...n?{clientInfo:n}:{},...i?{logLevel:i}:{}}}function e0(e,t){if(t!==e.protocolVersion)throw new p("MCP protocol header does not match request metadata",m.headerMismatch,{header:t??null,metadata:e.protocolVersion})}function t0(e,t){let r=t.filter(o=>!Object.prototype.hasOwnProperty.call(e.clientCapabilities,o));if(r.length>0)throw new p("Missing required client capability",m.missingRequiredClientCapability,{requiredCapabilities:Object.fromEntries(r.map(o=>[o,{}]))})}function r0(e,t){let r=e.clientCapabilities.extensions;return _(r)&&_(r[t])}function rt(e,t){let r=_(e._meta)?e._meta:{};return{...e,_meta:{...r,[A.serverInfo]:{...t}}}}function Bh(e,t){return rt({...e,resultType:"complete"},t)}function o0(e){let t=e.ttlMs??6e4;if(!Number.isFinite(t)||t<0)throw new p("Invalid MCP discovery cache TTL",m.invalidParams,{ttlMs:t});return Bh({supportedVersions:[...et],capabilities:structuredClone(e.capabilities),ttlMs:t,cacheScope:"public",...e.instructions?{instructions:e.instructions}:{}},e.serverInfo)}function n0(e,t){if(_(e)&&typeof e.resultType=="string")return e.resultType;if(t==="legacy")return"complete";throw new p("Modern MCP result is missing resultType",m.invalidParams,{required:"resultType"})}import{createHash as mr,createHmac as fr,timingSafeEqual as qh}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]="6505e714-d1f3-5794-88c8-51c1644acec9")}catch{}})();var zh=["elicitation/create","roots/list","sampling/createMessage"],ur=class extends Error{inputRequests;requestState;constructor(t){super("MCP operation requires additional input"),this.name="PmMcpInputRequiredError",this.inputRequests=t.inputRequests,this.requestState=t.requestState}},_r=/^[a-zA-Z][a-zA-Z0-9_.-]{0,63}$/u,ge=32,nt=64*1024,ye=16*1024,ot={maxBytes:256*1024,maxDepth:32,maxNodes:4096};function Vh(e){return e==="elicitation/create"?"elicitation":e==="sampling/createMessage"?"sampling":"roots"}function be(e,t,r){let o;try{o=JSON.stringify(e)}catch{throw new p(`Invalid ${r}: value is not JSON serializable`,m.invalidParams,{field:r})}if(Buffer.byteLength(o,"utf8")>t)throw new p(`Invalid ${r}: payload exceeds the protocol bound`,m.invalidParams,{field:r,maximumBytes:t})}function it(e,t){if(!_(e))throw new p("Invalid MCP inputRequests",m.invalidParams,{field:"inputRequests",expected:"object"});let r=Object.entries(e);if(r.length===0||r.length>ge)throw new p("Invalid MCP inputRequests count",m.invalidParams,{minimum:1,maximum:ge,observed:r.length});let o={};for(let[n,i]of r){if(!_r.test(n)||!_(i))throw new p("Invalid MCP input request entry",m.invalidParams,{field:`inputRequests.${n}`});let s=i.method;if(typeof s!="string"||!zh.includes(s))throw new p("Unsupported MCP input request method",m.invalidParams,{field:`inputRequests.${n}.method`,method:s??null});let a=Vh(s);if(!Object.prototype.hasOwnProperty.call(t.clientCapabilities,a))throw new p("Missing required client capability",m.missingRequiredClientCapability,{requiredCapabilities:{[a]:{}}});if(!_(i.params))throw new p("Invalid MCP input request parameters",m.invalidParams,{field:`inputRequests.${n}.params`,expected:"object"});o[n]={method:s,params:structuredClone(i.params)}}return be(o,nt,"inputRequests"),o}function hr(e){if(!_(e))throw new p("Invalid MCP inputResponses",m.invalidParams,{field:"inputResponses",expected:"object"});let t=Object.entries(e);if(t.length>ge)throw new p("Invalid MCP inputResponses count",m.invalidParams,{maximum:ge,observed:t.length});let r={};for(let[o,n]of t){if(!_r.test(o)||!_(n))throw new p("Invalid MCP input response entry",m.invalidParams,{field:`inputResponses.${o}`});r[o]=structuredClone(n)}return be(r,nt,"inputResponses"),r}function c0(e){let t=e.requestState?.trim();if(t&&Buffer.byteLength(t,"utf8")>ye)throw new p("Invalid MCP requestState: payload exceeds the protocol bound",m.invalidParams,{field:"requestState",maximumBytes:ye});let r=e.inputRequests===void 0?void 0:it(e.inputRequests,e.requestContext);if(r===void 0&&!t)throw new p("InputRequiredResult requires inputRequests or requestState",m.invalidParams,{requiredAnyOf:["inputRequests","requestState"]});return{resultType:"input_required",...r?{inputRequests:r}:{},...t?{requestState:t}:{},_meta:{[A.serverInfo]:{...e.serverInfo}}}}function gr(e){let t=Buffer.from(e);if(t.byteLength<32)throw new p("MCP requestState signing key must contain at least 32 bytes",m.invalidParams,{minimumBytes:32});return t}function d0(e,t){if(!Number.isSafeInteger(e.expiresAt)||e.expiresAt<=0||e.method.trim().length===0||e.parameterDigest.trim().length===0||e.principal.trim().length===0)throw new p("Invalid MCP requestState payload",m.invalidParams);let r=Buffer.from(JSON.stringify({version:1,...e}),"utf8");if(r.byteLength>ye/2)throw new p("MCP requestState payload exceeds the protocol bound",m.invalidParams,{maximumBytes:ye/2});let o=r.toString("base64url"),n=fr("sha256",gr(t)).update(o).digest("base64url");return`${o}.${n}`}function Hh(e){if(!_(e)||e.version!==1)throw new p("Invalid MCP requestState payload",m.invalidParams,{field:"requestState"});let{expiresAt:t,method:r,parameterDigest:o,principal:n,state:i}=e;if(typeof t!="number"||!Number.isSafeInteger(t))throw new p("Invalid MCP requestState payload",m.invalidParams,{field:"requestState"});if(typeof r!="string"||typeof o!="string"||typeof n!="string")throw new p("Invalid MCP requestState payload",m.invalidParams,{field:"requestState"});return{expiresAt:t,method:r,parameterDigest:o,principal:n,state:i}}function l0(e,t,r){let[o,n,i]=e.split(".");if(!o||!n||i!==void 0)throw new p("Invalid MCP requestState encoding",m.invalidParams,{field:"requestState"});let s=Buffer.from(n,"base64url"),a=fr("sha256",gr(t)).update(o).digest();if(s.byteLength!==a.byteLength||!qh(s,a))throw new p("Invalid MCP requestState signature",m.invalidParams,{field:"requestState"});let c;try{c=JSON.parse(Buffer.from(o,"base64url").toString("utf8"))}catch{c=null}let d=Hh(c),{expiresAt:l,method:u,parameterDigest:f,principal:g}=d;if(l<(r.nowMs??Date.now()))throw new p("Expired MCP requestState",m.invalidParams,{field:"requestState",expiredAt:l});if(u!==r.method||f!==r.parameterDigest||g!==r.principal)throw new p("MCP requestState binding mismatch",m.invalidParams,{field:"requestState"});return d}function u0(e){return be(e,nt,"request parameters"),mr("sha256").update(JSON.stringify(e)).digest("hex")}var pr=class{#e=new Set;#t;constructor(t=4096){if(!Number.isSafeInteger(t)||t<1)throw new p("Invalid MCP replay guard capacity",m.invalidParams,{maximumEntries:t});this.#t=t}consume(t){let r=mr("sha256").update(t).digest("hex");if(this.#e.has(r))throw new p("MCP requestState replay detected",m.invalidParams,{field:"requestState"});if(this.#e.size>=this.#t){let o=this.#e.values().next().value;this.#e.delete(o)}this.#e.add(r)}};function Kh(e){if(!Number.isSafeInteger(e.ttlMs)||e.ttlMs<0||e.cacheScope!=="public"&&e.cacheScope!=="private")throw new p("Invalid MCP cache policy",m.invalidParams,{ttlMs:e.ttlMs,cacheScope:e.cacheScope});return{ttlMs:e.ttlMs,cacheScope:e.cacheScope}}function p0(e,t){return{...e,...Kh(t)}}function Wh(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function Xh(e,t){if(t==="#")return e;if(!t.startsWith("#/"))return;let r=e;for(let o of t.slice(2).split("/").map(Wh)){if(!_(r)&&!Array.isArray(r)||!Object.prototype.hasOwnProperty.call(r,o))return;r=r[o]}return r}function Yh(e){let t=e.maxBytes??ot.maxBytes,r=e.maxDepth??ot.maxDepth,o=e.maxNodes??ot.maxNodes;if(!Number.isSafeInteger(t)||t<2)throw new p("Invalid MCP JSON Schema work bounds",m.invalidParams);if(!Number.isSafeInteger(r)||r<1)throw new p("Invalid MCP JSON Schema work bounds",m.invalidParams);if(!Number.isSafeInteger(o)||o<1)throw new p("Invalid MCP JSON Schema work bounds",m.invalidParams);return{maximumBytes:t,maximumDepth:r,maximumNodes:o}}function Jh(e,t){let r=Array.isArray(e.value)?e.value:_(e.value)?Object.values(e.value):[];for(let o of r)t.push({value:o,depth:e.depth+1})}function Zh(e,t){if(!_(t)||typeof t.$ref!="string")return;let r=t.$ref;if(r.startsWith("#")&&Xh(e,r)===void 0)throw new p("MCP JSON Schema contains an unresolved local reference",m.invalidParams,{reference:r})}function m0(e,t={}){let{maximumBytes:r,maximumDepth:o,maximumNodes:n}=Yh(t);if(typeof e!="boolean"&&!_(e))throw new p("Invalid MCP JSON Schema root",m.invalidParams,{expected:"object or boolean"});be(e,r,"JSON Schema");let i=[{value:e,depth:0}],s=0;for(;i.length>0;){let a=i.pop();if(s+=1,s>n||a.depth>o)throw new p("MCP JSON Schema exceeds validation work bounds",m.invalidParams,{maximumDepth:o,maximumNodes:n});Zh(e,a.value),Jh(a,i)}return structuredClone(e)}import{randomUUID as Qh}from"node:crypto";import{readFile as eg}from"node:fs/promises";import yr 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]="7f5b3ba6-07cf-5317-8f62-63e84f561232")}catch{}})();var T0="io.modelcontextprotocol/tasks",tg=["working","input_required","completed","failed","cancelled"],rg=/^mcp-task-[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/iu,og=3600*1e3,ng=1e3,Te=1024,ig=30,sg=2e3;function st(e){return new p(e,m.invalidParams,{code:"mcp_task_not_found_or_not_authorized"})}function Ce(e){let t=e.trim();if(!rg.test(t))throw st("Unknown MCP task");return t}function br(e,t){if(typeof e!="string"||!Number.isFinite(Date.parse(e)))throw new p("Corrupt MCP task record",m.invalidParams,{field:t});return e}function Cr(e){if(!_(e)||typeof e.code!="number"||!Number.isFinite(e.code)||typeof e.message!="string")throw new p("Corrupt MCP task error",m.invalidParams);return{code:e.code,message:e.message.slice(0,Te),..._(e.data)?{data:structuredClone(e.data)}:{}}}function ag(e){if(!tg.includes(e))throw new p("Corrupt MCP task record",m.invalidParams);return e}function cg(e){if(typeof e!="string"||e.length===0)throw new p("Corrupt MCP task record",m.invalidParams);return e}function dg(e){if(typeof e!="number"||!Number.isSafeInteger(e)||e<1)throw new p("Corrupt MCP task record",m.invalidParams);return e}function lg(e){if(e!==null&&(typeof e!="number"||!Number.isSafeInteger(e)||e<0))throw new p("Corrupt MCP task record",m.invalidParams);return e}function ug(e){if(e!==void 0){if(typeof e!="number"||!Number.isSafeInteger(e)||e<0)throw new p("Corrupt MCP task record",m.invalidParams);return e}}function pg(e){if(!Array.isArray(e)||e.some(t=>typeof t!="string"))throw new p("Corrupt MCP task record",m.invalidParams);return[...e]}function mg(e){if(!_(e)||e.version!==1)throw new p("Corrupt MCP task record",m.invalidParams);let t=typeof e.taskId=="string"?Ce(e.taskId):"",r=ag(e.status),o=cg(e.principal),n=dg(e.workerPid),i=lg(e.ttlMs),s=ug(e.pollIntervalMs),a={version:1,taskId:t,status:r,principal:o,workerPid:n,createdAt:br(e.createdAt,"createdAt"),lastUpdatedAt:br(e.lastUpdatedAt,"lastUpdatedAt"),ttlMs:i,consumedInputKeys:pg(e.consumedInputKeys),...typeof e.statusMessage=="string"?{statusMessage:e.statusMessage.slice(0,Te)}:{},...typeof s=="number"?{pollIntervalMs:s}:{}};if(_(e.inputRequests)&&(a.inputRequests=structuredClone(e.inputRequests)),_(e.inputResponses)&&(a.inputResponses=structuredClone(e.inputResponses)),_(e.result)&&(a.result=structuredClone(e.result)),e.error!==void 0&&(a.error=Cr(e.error)),a.status==="input_required"&&!a.inputRequests||a.status==="completed"&&!a.result||a.status==="failed"&&!a.error)throw new p("Corrupt MCP task status payload",m.invalidParams,{status:a.status});return a}function W(e){let t={taskId:e.taskId,status:e.status,createdAt:e.createdAt,lastUpdatedAt:e.lastUpdatedAt,ttlMs:e.ttlMs,...e.statusMessage?{statusMessage:e.statusMessage}:{},...e.pollIntervalMs===void 0?{}:{pollIntervalMs:e.pollIntervalMs}};return e.status==="input_required"?{...t,status:"input_required",inputRequests:structuredClone(e.inputRequests)}:e.status==="completed"?{...t,status:"completed",result:structuredClone(e.result)}:e.status==="failed"?{...t,status:"failed",error:structuredClone(e.error)}:e.status==="cancelled"?{...t,status:"cancelled"}:{...t,status:"working"}}function ne(e){return e==="completed"||e==="failed"||e==="cancelled"}function fg(e){try{return process.kill(e,0),!0}catch(t){return!(typeof t=="object"&&t!==null&&"code"in t&&t.code==="ESRCH")}}var at=class{#e;#t;#r;#o;#i;constructor(t){this.#e=yr.resolve(t.pmRoot),this.#t=t.owner?.trim()||"pm-mcp",this.#r=t.now??(()=>new Date),this.#o=t.taskIdFactory??(()=>`mcp-task-${Qh()}`),this.#i=t.workerPid??process.pid}#s(t){return yr.join(this.#e,"runtime","mcp-tasks","records",`${Ce(t)}.json`)}async#c(t){try{return mg(JSON.parse(await eg(this.#s(t),"utf8")))}catch(r){throw fe(r)||r instanceof SyntaxError?st("Unknown MCP task"):r}}async#a(t){await je(this.#s(t.taskId),`${JSON.stringify(t,null,2)}
|
|
1
|
+
import{A as Fh,B as jh,C as GM,D as UM,E as BM,a as fs,b as _s,c as hs,d as gs,e as PM,f as MM,g as Oh,h as Ih,i as Rh,k as Ph,l as Mh,m as kh,n as xh,o as Nh,p as Lh,q as Dh,r as $h,s as kM,t as xM,u as NM,v as LM,w as DM,x as $M,y as FM,z as jM}from"./chunks/chunk-WLJJ4MAU.js";import{A as Ik,B as Rk,C as Pk,D as Mk,E as kk,F as xk,G as Nk,H as Lk,I as Dk,J as $k,K as Fk,L as jk,M as Gk,N as Uk,O as Bk,P as qk,Q as zk,R as Vk,S as Hk,T as Kk,U as Wk,V as Xk,W as Yk,X as Jk,Y as Zk,a as rk,b as ok,c as nk,d as ik,e as sk,f as ak,g as ck,h as dk,i as lk,j as uk,k as pk,l as mk,m as fk,n as _k,o as hk,p as gk,q as yk,r as bk,s as Ck,t as Tk,u as Sk,v as wk,w as Ek,x as Ak,y as vk,z as Ok}from"./chunks/chunk-5P5PYCZX.js";import{a as qM,b as zM,c as VM,d as HM}from"./chunks/chunk-RKPUO75B.js";import{a as KM,b as WM,c as XM,d as YM,e as JM,f as ZM,g as QM,h as ek,i as tk}from"./chunks/chunk-3RB6Z7XE.js";import{$ as nr,$a as o_,$b as oh,A as tO,Aa as Af,Ab as P_,B as rO,Ba as vf,Bb as M_,C as mu,Ca as Of,Cb as k_,D as kp,Da as If,Db as x_,E as xp,Ea as Rf,Eb as N_,F as Np,Fa as Pf,Fb as L_,G as Lp,Ga as Mf,Gb as D_,H as Dp,Ha as kf,Hb as $_,I as Ye,Ia as xf,Ib as F_,J as $p,Ja as Nf,Jb as j_,K as Fp,Ka as Lf,Kb as G_,L as jp,La as Df,Lb as U_,M as Gp,Ma as $f,Mb as B_,N as Up,Na as Ff,Nb as q_,O as Bp,Oa as jf,Ob as z_,P as tM,Pa as Gf,Pb as V_,Q as rM,Qa as Uf,Qb as H_,R as oM,Ra as dr,Rb as K_,S as Xt,Sa as he,Sb as W_,T as Yt,Ta as Xf,Tb as X_,U as Jt,Ua as Yf,Ub as Y_,V as Zt,Va as Jf,Vb as J_,W as Qt,Wa as Zf,Wb as Z_,X as er,Xa as Qf,Xb as Q_,Y as tr,Ya as e_,Yb as eh,Z as rr,Za as t_,Zb as th,_ as or,_a as r_,_b as rh,a as zc,aa as ir,ab as n_,ac as nh,b as Vc,ba as ym,bb as i_,bc as ih,c as Hc,ca as bm,cb as s_,cc as sh,d as Rv,da as Cm,db as a_,dc as ah,e as Pv,ea as Tm,eb as c_,ec as ch,f as Kc,fa as Sm,fb as d_,fc as dh,g as $v,ga as Je,gb as l_,gc as lh,h as Fv,ha as wm,hb as u_,hc as uh,i as jv,ia as Em,ib as p_,ic as ph,j as Gv,ja as Am,jb as m_,jc as mh,k as Uv,ka as vm,kb as f_,kc as fh,l as Bv,la as Om,lb as __,lc as _h,m as qv,ma as Im,mb as h_,mc as hh,n as zv,na as Rm,nb as g_,nc as gh,o as Vv,oa as Pm,ob as y_,oc as yh,p as Hv,pa as gM,pb as b_,pc as bh,q as Kv,qa as _f,qb as C_,qc as Ch,r as Wv,ra as hf,rb as T_,rc as Th,s as Xv,sa as gf,sb as S_,sc as Sh,t as Yv,ta as yf,tb as w_,tc as wh,u as Zc,ua as bf,ub as E_,uc as Eh,v as Qc,va as Cf,vb as A_,vc as Ah,w as Jv,wa as Tf,wb as v_,wc as vh,x as Zv,xa as Sf,xb as O_,y as Qv,ya as wf,yb as I_,z as eO,za as Ef,zb as R_}from"./chunks/chunk-BOZ4HVYL.js";import{a as Wt,f as jP,g as GP,h as Vp,i as Hp}from"./chunks/chunk-YMMLKKEP.js";import{A as HP,B as KP,C as WP,D as XP,E as YP,F as JP,G as ZP,H as QP,I as eM,J as om,K as nm,L as im,M as pM,N as Mm,O as mM,P as fM,Q as _M,R as hM,b as pu,c as RR,d as Mp,e as vP,f as OP,g as IP,h as RP,i as PP,j as MP,k as kP,l as xP,m as NP,n as LP,o as DP,p as qp,q as $P,r as Qp,s as em,t as tm,u as rm,v as UP,w as BP,x as qP,y as zP,z as VP}from"./chunks/chunk-Y2P3DSSO.js";import{$a as cu,$b as Ep,$c as Fm,A as jO,Aa as Ll,Ab as fP,Ac as lm,Ad as Qm,B as GO,Ba as Dl,Bb as _P,Bc as um,Bd as ef,C as UO,Ca as $l,Cb as hP,Cc as pm,Cd as tf,D as BO,Da as Fl,Db as rp,Dc as mm,Dd as rf,E as ZO,Ea as jl,Eb as op,Ec as fm,Ed as of,Fa as Gl,Fc as _m,Fd as RM,Ga as Ul,Gb as np,Gc as hm,Gd as nf,Ha as Bl,Hb as ip,Hc as gm,Hd as sf,Ia as ql,Ib as gP,Ic as dM,Id as af,J as Yd,Ja as zl,Jb as sp,Jc as lM,Jd as cf,Ka as Vl,Kb as ap,Kc as uM,Kd as df,La as Hl,Lb as cp,Lc as yM,Ld as lf,Ma as Kl,Mb as dp,Mc as sr,Md as uf,Na as Wl,Nb as lp,Nc as bM,Nd as pf,Oa as Xl,Ob as up,Oc as Ze,Od as mf,Pa as Yl,Pb as pp,Pc as oe,Pd as ff,Qa as Jl,Qb as mp,Qc as km,Qd as Bf,Ra as Zl,Rb as fp,Rd as qf,Sa as Ql,Sb as _p,Sd as zf,Ta as eu,Tb as hp,Tc as Qe,Td as Vf,Ua as tu,Ub as gp,Uc as xm,Ud as Hf,Va as ru,Vb as yp,Vc as Nm,Vd as Kf,Wa as ou,Wb as bp,Wd as Wf,Xa as nu,Xb as Cp,Xc as _e,Ya as iu,Yb as Tp,Yc as Lm,Za as su,Zb as Sp,Zc as Dm,_a as au,_b as wp,_c as $m,a as mO,aa as QO,ab as du,ac as yP,ad as CM,b as fO,ba as eI,bb as lu,bc as bP,bd as TM,c as _O,ca as Jd,cb as SR,cc as Ap,cd as SM,d as hO,da as Zd,db as wR,dd as wM,e as gO,ea as Qd,eb as ER,ed as EM,f as yO,fa as el,fb as AR,fd as ar,g as bO,ga as tl,gb as vR,gc as vp,gd as AM,h as CO,ha as rl,hb as OR,hd as vM,i as TO,ia as ol,ib as IR,ic as Op,id as cr,j as SO,ja as NI,jb as fu,jc as Ip,jd as OM,k as wO,ka as LI,kb as _u,kc as Rp,kd as IM,l as EO,la as DI,lb as hu,lc as Pp,m as AO,ma as $I,mb as gu,mc as CP,md as jm,n as vO,na as FI,nb as yu,nc as TP,nd as Gm,o as OO,oa as jI,oc as SP,od as Um,p as IO,pa as GI,pb as bu,pc as Xe,pd as Bm,q as RO,qa as HI,qb as Cu,qc as wP,qd as qm,r as PO,ra as KI,rb as Tu,rc as Kt,rd as zm,s as MO,sa as Rl,sb as Su,sc as EP,sd as Vm,t as kO,ta as Pl,tb as wu,tc as AP,td as Hm,u as xO,ua as WI,ub as Zu,uc as FP,ud as Km,v as NO,va as XI,vb as Qu,vc as zp,vd as Wm,w as LO,wa as Ml,wb as ep,wc as sm,wd as Xm,x as DO,xa as kl,xb as tp,xc as am,xd as Ym,y as $O,ya as xl,yb as pP,yc as cm,yd as Jm,z as FO,za as Nl,zb as mP,zc as dm,zd as Zm}from"./chunks/chunk-WDF7PP4P.js";import{Aa as gl,Ba as yl,Ca as bl,H as lI,Ha as Cl,I as uI,Ia as Tl,Ja as Sl,K as pI,Ka as wl,L as mI,La as El,M as fI,Ma as Al,N as pl,Na as vl,O as ml,P as fl,Pa as Ol,Q as _l,Qa as Il,R as Gt,Ra as Kp,Sa as Wp,Ta as Xp,Va as Yp,Wa as Jp,Xa as Zp,a as Lv,b as Dv,c as Wc,d as Xc,f as Yc,g as Jc,h as tI,i as rI,j as oI,k as nI,l as iI,m as sI,n as aI,o as cI,p as nl,q as il,r as sl,s as al,t as cl,u as dI,ua as Ut,v as dl,va as Bt,w as ll,wa as qt,x as ul,xa as zt,ya as hl}from"./chunks/chunk-3AHONKLL.js";import{$ as wd,$a as UI,$b as FR,$c as nM,A as XO,Ab as lR,Ac as Mu,B as YO,Bb as uR,Bc as ku,C as td,Ca as _I,Cb as pR,Cc as xu,D as rd,Da as hI,Db as mR,Dc as Vt,E as od,Ea as gI,Eb as fR,Ec as Nu,F as nd,Fa as yI,Fc as Lu,G as id,Ga as bI,Gc as Du,H as sd,Ha as CI,Hb as _R,Hc as $u,I as ad,Ia as TI,Ib as hR,Ic as Fu,J as cd,Ja as SI,Jb as gR,Jc as ju,K as dd,Ka as wI,Kb as yR,Kc as Gu,L as ld,La as EI,Lb as bR,Lc as Uu,M as ud,Ma as AI,Mb as CR,Mc as Bu,N as We,Na as vI,Nb as TR,Nc as qu,O as pd,Oa as OI,Ob as uu,Oc as zu,P as md,Pb as Eu,Pc as Vu,Q as fd,Qb as Au,Qc as Hu,R as _d,Rb as vu,Rc as Ku,S as JO,Sa as II,Sb as Ou,Sc as Wu,Tb as PR,Tc as Xu,U as hd,Ua as RI,Ub as MR,Uc as Ht,V as gd,Va as PI,Vb as kR,Vc as Yu,W as yd,Wb as xR,Wc as cP,X as bd,Xa as MI,Xb as NR,Xc as dP,Y as Cd,Ya as kI,Yb as LR,Yc as lP,Z as Td,Za as xI,Zb as DR,Zc as Ju,_ as Sd,_b as $R,_c as uP,aa as Ed,ab as BI,ac as jR,ad as iM,b as vv,ba as Ad,bb as qI,bc as GR,bd as sM,c as Ov,ca as vd,cb as zI,cc as UR,cd as aM,d as Iv,da as Od,db as VI,dc as BR,dd as cM,e as Mv,ea as Id,eb as YI,ec as qR,f as kv,fa as Rd,fb as JI,fc as zR,g as xv,ga as Pd,gb as ZI,gc as VR,h as Nv,ha as Md,hb as QI,hc as HR,i as oO,ia as kd,ib as eR,ic as KR,j as nO,ja as xd,jb as tR,jc as WR,k as iO,ka as Nd,kb as rR,kc as XR,l as sO,la as Ld,lb as oR,lc as YR,m as aO,ma as Dd,mb as nR,mc as JR,n as cO,na as $d,nb as iR,nc as ZR,o as dO,oa as Fd,ob as sR,oc as QR,p as lO,pa as jd,pb as aR,pc as eP,q as uO,qa as Gd,qb as cR,qc as tP,r as pO,ra as Ud,rc as rP,sa as Bd,sc as oP,t as ed,ta as qd,tc as nP,u as qO,ua as zd,uc as iP,v as zO,va as Vd,vc as sP,w as VO,wa as Hd,wc as aP,x as HO,xa as Kd,xc as Iu,y as KO,ya as Wd,yc as Ru,z as WO,za as Xd,zb as dR,zc as Pu}from"./chunks/chunk-UKLOSZV6.js";import{$b as jC,$c as pT,$d as wn,$e as Jn,$f as zS,$g as cw,$h as iE,$i as qE,$j as Ji,$k as ss,$l as Xs,$m as Na,$n as re,Aa as tn,Ab as PC,Ac as WC,Ad as MT,Ae as cS,Af as gS,Ag as bi,Ah as Lw,Ai as wE,Aj as oA,Ak as kA,Al as Ss,Am as ca,An as ac,Bb as MC,Bc as XC,Bd as kT,Be as dS,Bf as yS,Bg as Ci,Bh as Dw,Bi as EE,Bj as Lt,Bk as xA,Bl as ws,Bm as da,Bn as cc,Cb as kC,Ce as Ln,Cf as bS,Cg as Ti,Ch as $w,Ci as AE,Ck as NA,Cl as Es,Cm as la,Cn as dc,Dc as YC,Dd as xT,De as Dn,Df as CS,Dg as Si,Dh as Fw,Di as vE,Dj as nA,Dk as LA,Dl as As,Dm as ua,Dn as lc,E as Yb,Ea as rn,Ec as _n,Ed as NT,Ee as $,Ef as TS,Eg as wi,Eh as jw,Ei as OE,Ej as iA,Ek as DA,El as vs,Em as pa,En as uc,Fe as $n,Ff as SS,Fg as Ei,Fh as Gw,Fi as IE,Fj as sA,Fk as $A,Fl as Os,Fm as ma,Fn as pc,G as Jb,Ga as on,Gc as hn,Gd as LT,Gf as wS,Gg as Ai,Gh as Uw,Gi as RE,Gj as aA,Gk as FA,Gl as Is,Gn as mc,Ha as nn,Hc as gn,Hd as DT,Hf as ES,Hg as vi,Hh as Bw,Hi as PE,Hj as cA,Hk as jA,Hl as Rs,Hm as fa,Hn as fc,Ia as sn,Ib as xC,Id as $T,If as AS,Ig as Oi,Ih as qw,Ii as ME,Ik as Dt,Il as Ps,Im as _a,In as _c,J as Zb,Jb as Ue,Jd as FT,Jf as vS,Jg as Ii,Jh as zw,Ji as kE,Jk as GA,Jl as Ms,Jm as ha,Jn as hc,Kb as Pt,Kc as JC,Kd as jT,Kf as OS,Kg as Ri,Kh as Vw,Ki as xE,Kj as dA,Kl as ks,Km as ga,Kn as gc,Lb as NC,Lc as ZC,Ld as GT,Le as lS,Lf as IS,Lg as Pi,Lh as Hw,Li as NE,Ll as xs,Lm as ya,Ln as yc,Mb as LC,Mc as QC,Md as UT,Me as uS,Mf as RS,Mg as Mi,Mh as Kw,Mk as UA,Ml as Ns,Mm as ba,Mn as bc,N as Qb,Nb as DC,Nc as eT,Nd as BT,Ne as pS,Nf as PS,Ng as ki,Nh as Ww,Ni as qi,Nk as BA,Nl as Ls,Nm as Ca,Nn as Cc,O as D,Ob as $C,Oc as tT,Od as qT,Oe as Fn,Of as MS,Og as xi,Oh as Xw,Oi as zi,Oj as Ki,Ok as qA,Ol as Ds,Om as Ta,On as Tc,P as eC,Pb as H,Pc as rT,Pd as zT,Pe as jn,Pf as kS,Pg as Ni,Ph as Yw,Pi as Vi,Pj as lA,Pk as zA,Pl as $s,Pm as Sa,Pn as Sc,Q as b,Qb as FC,Qc as oT,Qd as VT,Qe as Gn,Qf as xS,Qg as Li,Qh as Jw,Qj as uA,Qk as VA,Ql as Fs,Qm as wa,Qn as wc,Rc as yn,Rd as HT,Re as Un,Rf as NS,Rg as Di,Ri as LE,Rj as pA,Rk as HA,Rl as js,Rm as Ea,Rn as Ec,S as tC,Sc as nT,Se as Bn,Sf as LS,Sg as $i,Sh as Zw,Si as DE,Sj as mA,Sk as KA,Sl as Gs,Sm as Aa,Sn as Ac,T as rC,Tc as iT,Te as qn,Tf as DS,Tg as Fi,Th as Qw,Ti as $E,Tk as WA,Tl as Us,Tm as va,Tn as vc,Uc as sT,Ue as zn,Uf as $S,Ug as ji,Ui as FE,Uj as fA,Uk as es,Ul as Bs,Um as Oa,Un as Oc,Vc as aT,Ve as Vn,Vf as FS,Vg as Gi,Vi as jE,Vj as _A,Vk as ts,Vl as qs,Vm as Ia,Vn as Ic,W as oC,Wc as cT,We as Hn,Wf as jS,Wg as ow,Wh as eE,Wj as hA,Wk as rs,Wl as zs,Wm as Ra,Wn as Rc,Xa as SC,Xc as dT,Xd as KT,Xe as Kn,Xf as GS,Xg as nw,Xh as tE,Xi as GE,Xj as gA,Xk as os,Xl as Vs,Xm as Pa,Xn as Pc,Ya as wC,Yc as lT,Ye as Wn,Yf as US,Yg as iw,Yh as rE,Yj as Wi,Yk as ns,Yl as Hs,Ym as Ma,Yn as Mc,Z as nC,Za as EC,Zc as uT,Zd as Sn,Ze as Xn,Zf as BS,Zg as sw,Zh as oE,Zi as UE,Zj as Xi,Zk as is,Zl as Ks,Zm as ka,_ as Ot,_c as bn,_d as WT,_e as Yn,_f as qS,_g as aw,_h as nE,_i as BE,_j as Yi,_l as Ws,_m as xa,_n as Ke,aa as It,ab as an,ac as mn,ad as Cn,af as Zn,ag as VS,ah as dw,ai as sE,aj as zE,ak as Zi,al as as,am as Ys,an as La,ao as kc,b as jo,ba as Jo,bb as AC,bc as fn,be as XT,bf as mS,bg as HS,bh as lw,bi as aE,bj as VE,bl as cs,bm as sv,bn as Da,c as Go,ca as Zo,cb as vC,cc as GC,cd as mT,ce as YT,cf as fS,cg as KS,ch as uw,ci as cE,ck as Qi,cl as ds,cm as av,cn as $a,co as gv,d as Uo,da as Rt,db as OC,dc as UC,dd as fT,de as JT,df as Be,dg as WS,dh as pw,di as dE,dk as yA,dl as ls,dm as Ve,dn as Fa,do as yv,e as Bo,eb as IC,ec as P,ed as _T,ee as En,ef as Qn,eg as XS,eh as mw,ei as lE,el as us,em as cv,en as ja,f as $e,fa as iC,fc as BC,fd as hT,fe as An,ff as _S,fg as YS,fh as fw,fi as uE,fk as bA,fl as ps,fm as dv,fn as Ga,g as qo,gb as cn,gc as Mt,gd as gT,ge as vn,gf as ei,gg as JS,gh as _w,gi as pE,gk as CA,gl as ms,gm as lv,gn as Ua,go as bv,h as L,ha as sC,hb as dn,hc as qC,hd as kt,he as On,hf as ti,hg as ZS,hh as hw,hk as TA,hl as XA,hm as Ft,hn as Ba,ho as Cv,i as Fe,ia as aC,ib as Ge,id as yT,ie as In,if as ri,ig as QS,ih as gw,ii as mE,il as YA,im as He,in as qa,io as Tv,j as zo,ja as cC,jb as RC,jc as zC,jd as bT,je as Rn,jf as oi,jg as ew,jh as yw,ji as Ui,jk as SA,jl as JA,jm as uv,jn as za,jo as Sv,k as Vo,ka as dC,kd as CT,ke as Pn,kg as tw,kh as bw,ki as Bi,kl as ZA,km as pv,kn as Va,ko as wv,l as Ho,la as lC,lb as ln,le as ZT,lg as rw,lh as Cw,ll as QA,lm as mv,ln as Ha,lo as Ev,m as Ko,ma as uC,mb as un,md as TT,me as QT,mg as ai,mh as Tw,mj as HE,mk as wA,ml as ev,mm as fv,mn as Ka,mo as Av,na as pC,nd as ST,ng as ci,nh as Sw,nj as KE,nl as tv,nm as _v,nn as Wa,no as xc,o as Wo,oa as mC,ob as pn,oe as Mn,og as di,oh as ww,oj as WE,ok as EA,ol as rv,om as hv,on as Xa,oo as Nc,p as vt,pa as fC,pe as kn,pg as li,ph as Ew,pi as fE,pj as XE,pm as Js,pn as Ya,po as Lc,q as fe,qa as _C,qd as Tn,qe as eS,qg as ui,qh as Aw,qi as _E,qj as YE,qm as Zs,qn as Ja,qo as Dc,r as Xo,rd as wT,re as xn,rg as pi,rh as vw,ri as hE,rj as JE,rm as Qs,rn as Za,ro as $c,s as je,sa as hC,sd as ET,se as Nn,sg as mi,sh as Ow,si as gE,sk as AA,sl as $t,sm as ea,sn as Qa,so as Fc,t as Yo,ta as gC,td as AT,te as tS,tf as xt,tg as qe,th as Iw,ti as yE,tk as vA,tl as ov,tm as ta,tn as ec,to as jc,ua as yC,ud as vT,ue as rS,uf as Nt,ug as ze,uh as Rw,ui as bE,uj as ZE,uk as OA,ul as nv,um as ra,un as tc,uo as Gc,v as Kb,va as bC,vd as OT,ve as oS,vf as ni,vg as fi,vh as Pw,vj as QE,vk as IA,vl as iv,vm as oa,vn as rc,vo as Uc,w as Wb,wa as CC,wc as VC,wd as IT,we as nS,wf as ii,wg as _i,wh as Mw,wi as CE,wj as Hi,wk as RA,wl as ys,wm as na,wn as oc,wo as Bc,x as Xb,xa as TC,xc as HC,xe as iS,xf as si,xg as hi,xh as kw,xj as eA,xl as bs,xm as ia,xn as nc,xo as qc,ya as Qo,yc as KC,yd as RT,ye as sS,yg as gi,yh as xw,yi as TE,yj as tA,yk as PA,yl as Cs,ym as sa,yn as ic,yo as jt,za as en,zd as PT,ze as aS,zf as hS,zg as yi,zh as Nw,zi as SE,zj as rA,zk as MA,zl as Ts,zm as aa,zn as sc}from"./chunks/chunk-J4DRE3WN.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="08485124-a2f1-5bb5-9316-533a3f7888bc")}catch{}})();var K="2026-07-28",Qk=["2025-11-25","2025-06-18"],et=[K],m={headerMismatch:-32020,missingRequiredClientCapability:-32021,unsupportedProtocolVersion:-32022,invalidParams:-32602},A={clientCapabilities:"io.modelcontextprotocol/clientCapabilities",clientInfo:"io.modelcontextprotocol/clientInfo",logLevel:"io.modelcontextprotocol/logLevel",protocolVersion:"io.modelcontextprotocol/protocolVersion",serverInfo:"io.modelcontextprotocol/serverInfo"},lr=["debug","info","notice","warning","error","critical","alert","emergency"],p=class extends Error{code;data;constructor(t,r,o={}){super(t),this.name="PmMcpProtocolError",this.code=r,this.data=o}};function _(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Gh(e){if(e===void 0)return;if(!_(e))throw new p("Invalid MCP clientInfo metadata",m.invalidParams,{field:A.clientInfo,expected:"object"});let t=typeof e.name=="string"?e.name.trim():"",r=typeof e.version=="string"?e.version.trim():"";if(t.length===0||r.length===0)throw new p("Invalid MCP clientInfo metadata",m.invalidParams,{field:A.clientInfo,required:["name","version"]});let o={name:t.slice(0,128),version:r.slice(0,128)};return typeof e.description=="string"&&e.description.trim()&&(o.description=e.description.trim().slice(0,1024)),typeof e.websiteUrl=="string"&&e.websiteUrl.trim()&&(o.websiteUrl=e.websiteUrl.trim().slice(0,2048)),o}function Uh(e){if(e!==void 0){if(typeof e!="string"||!lr.includes(e))throw new p("Invalid MCP logLevel metadata",m.invalidParams,{field:A.logLevel,allowed:[...lr]});return e}}function tt(e){let t=_(e)?e._meta:void 0;if(!_(t))throw new p("Missing required MCP request metadata",m.invalidParams,{required:[A.protocolVersion,A.clientCapabilities]});let r=t[A.protocolVersion];if(typeof r!="string"||!et.includes(r))throw new p("Unsupported protocol version",m.unsupportedProtocolVersion,{supported:[...et],requested:typeof r=="string"?r:null});let o=t[A.clientCapabilities];if(!_(o))throw new p("Invalid MCP client capabilities metadata",m.invalidParams,{field:A.clientCapabilities,expected:"object"});let n=Gh(t[A.clientInfo]),i=Uh(t[A.logLevel]);return{protocolVersion:K,clientCapabilities:o,...n?{clientInfo:n}:{},...i?{logLevel:i}:{}}}function e0(e,t){if(t!==e.protocolVersion)throw new p("MCP protocol header does not match request metadata",m.headerMismatch,{header:t??null,metadata:e.protocolVersion})}function t0(e,t){let r=t.filter(o=>!Object.prototype.hasOwnProperty.call(e.clientCapabilities,o));if(r.length>0)throw new p("Missing required client capability",m.missingRequiredClientCapability,{requiredCapabilities:Object.fromEntries(r.map(o=>[o,{}]))})}function r0(e,t){let r=e.clientCapabilities.extensions;return _(r)&&_(r[t])}function rt(e,t){let r=_(e._meta)?e._meta:{};return{...e,_meta:{...r,[A.serverInfo]:{...t}}}}function Bh(e,t){return rt({...e,resultType:"complete"},t)}function o0(e){let t=e.ttlMs??6e4;if(!Number.isFinite(t)||t<0)throw new p("Invalid MCP discovery cache TTL",m.invalidParams,{ttlMs:t});return Bh({supportedVersions:[...et],capabilities:structuredClone(e.capabilities),ttlMs:t,cacheScope:"public",...e.instructions?{instructions:e.instructions}:{}},e.serverInfo)}function n0(e,t){if(_(e)&&typeof e.resultType=="string")return e.resultType;if(t==="legacy")return"complete";throw new p("Modern MCP result is missing resultType",m.invalidParams,{required:"resultType"})}import{createHash as mr,createHmac as fr,timingSafeEqual as qh}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]="6505e714-d1f3-5794-88c8-51c1644acec9")}catch{}})();var zh=["elicitation/create","roots/list","sampling/createMessage"],ur=class extends Error{inputRequests;requestState;constructor(t){super("MCP operation requires additional input"),this.name="PmMcpInputRequiredError",this.inputRequests=t.inputRequests,this.requestState=t.requestState}},_r=/^[a-zA-Z][a-zA-Z0-9_.-]{0,63}$/u,ge=32,nt=64*1024,ye=16*1024,ot={maxBytes:256*1024,maxDepth:32,maxNodes:4096};function Vh(e){return e==="elicitation/create"?"elicitation":e==="sampling/createMessage"?"sampling":"roots"}function be(e,t,r){let o;try{o=JSON.stringify(e)}catch{throw new p(`Invalid ${r}: value is not JSON serializable`,m.invalidParams,{field:r})}if(Buffer.byteLength(o,"utf8")>t)throw new p(`Invalid ${r}: payload exceeds the protocol bound`,m.invalidParams,{field:r,maximumBytes:t})}function it(e,t){if(!_(e))throw new p("Invalid MCP inputRequests",m.invalidParams,{field:"inputRequests",expected:"object"});let r=Object.entries(e);if(r.length===0||r.length>ge)throw new p("Invalid MCP inputRequests count",m.invalidParams,{minimum:1,maximum:ge,observed:r.length});let o={};for(let[n,i]of r){if(!_r.test(n)||!_(i))throw new p("Invalid MCP input request entry",m.invalidParams,{field:`inputRequests.${n}`});let s=i.method;if(typeof s!="string"||!zh.includes(s))throw new p("Unsupported MCP input request method",m.invalidParams,{field:`inputRequests.${n}.method`,method:s??null});let a=Vh(s);if(!Object.prototype.hasOwnProperty.call(t.clientCapabilities,a))throw new p("Missing required client capability",m.missingRequiredClientCapability,{requiredCapabilities:{[a]:{}}});if(!_(i.params))throw new p("Invalid MCP input request parameters",m.invalidParams,{field:`inputRequests.${n}.params`,expected:"object"});o[n]={method:s,params:structuredClone(i.params)}}return be(o,nt,"inputRequests"),o}function hr(e){if(!_(e))throw new p("Invalid MCP inputResponses",m.invalidParams,{field:"inputResponses",expected:"object"});let t=Object.entries(e);if(t.length>ge)throw new p("Invalid MCP inputResponses count",m.invalidParams,{maximum:ge,observed:t.length});let r={};for(let[o,n]of t){if(!_r.test(o)||!_(n))throw new p("Invalid MCP input response entry",m.invalidParams,{field:`inputResponses.${o}`});r[o]=structuredClone(n)}return be(r,nt,"inputResponses"),r}function c0(e){let t=e.requestState?.trim();if(t&&Buffer.byteLength(t,"utf8")>ye)throw new p("Invalid MCP requestState: payload exceeds the protocol bound",m.invalidParams,{field:"requestState",maximumBytes:ye});let r=e.inputRequests===void 0?void 0:it(e.inputRequests,e.requestContext);if(r===void 0&&!t)throw new p("InputRequiredResult requires inputRequests or requestState",m.invalidParams,{requiredAnyOf:["inputRequests","requestState"]});return{resultType:"input_required",...r?{inputRequests:r}:{},...t?{requestState:t}:{},_meta:{[A.serverInfo]:{...e.serverInfo}}}}function gr(e){let t=Buffer.from(e);if(t.byteLength<32)throw new p("MCP requestState signing key must contain at least 32 bytes",m.invalidParams,{minimumBytes:32});return t}function d0(e,t){if(!Number.isSafeInteger(e.expiresAt)||e.expiresAt<=0||e.method.trim().length===0||e.parameterDigest.trim().length===0||e.principal.trim().length===0)throw new p("Invalid MCP requestState payload",m.invalidParams);let r=Buffer.from(JSON.stringify({version:1,...e}),"utf8");if(r.byteLength>ye/2)throw new p("MCP requestState payload exceeds the protocol bound",m.invalidParams,{maximumBytes:ye/2});let o=r.toString("base64url"),n=fr("sha256",gr(t)).update(o).digest("base64url");return`${o}.${n}`}function Hh(e){if(!_(e)||e.version!==1)throw new p("Invalid MCP requestState payload",m.invalidParams,{field:"requestState"});let{expiresAt:t,method:r,parameterDigest:o,principal:n,state:i}=e;if(typeof t!="number"||!Number.isSafeInteger(t))throw new p("Invalid MCP requestState payload",m.invalidParams,{field:"requestState"});if(typeof r!="string"||typeof o!="string"||typeof n!="string")throw new p("Invalid MCP requestState payload",m.invalidParams,{field:"requestState"});return{expiresAt:t,method:r,parameterDigest:o,principal:n,state:i}}function l0(e,t,r){let[o,n,i]=e.split(".");if(!o||!n||i!==void 0)throw new p("Invalid MCP requestState encoding",m.invalidParams,{field:"requestState"});let s=Buffer.from(n,"base64url"),a=fr("sha256",gr(t)).update(o).digest();if(s.byteLength!==a.byteLength||!qh(s,a))throw new p("Invalid MCP requestState signature",m.invalidParams,{field:"requestState"});let c;try{c=JSON.parse(Buffer.from(o,"base64url").toString("utf8"))}catch{c=null}let d=Hh(c),{expiresAt:l,method:u,parameterDigest:f,principal:g}=d;if(l<(r.nowMs??Date.now()))throw new p("Expired MCP requestState",m.invalidParams,{field:"requestState",expiredAt:l});if(u!==r.method||f!==r.parameterDigest||g!==r.principal)throw new p("MCP requestState binding mismatch",m.invalidParams,{field:"requestState"});return d}function u0(e){return be(e,nt,"request parameters"),mr("sha256").update(JSON.stringify(e)).digest("hex")}var pr=class{#e=new Set;#t;constructor(t=4096){if(!Number.isSafeInteger(t)||t<1)throw new p("Invalid MCP replay guard capacity",m.invalidParams,{maximumEntries:t});this.#t=t}consume(t){let r=mr("sha256").update(t).digest("hex");if(this.#e.has(r))throw new p("MCP requestState replay detected",m.invalidParams,{field:"requestState"});if(this.#e.size>=this.#t){let o=this.#e.values().next().value;this.#e.delete(o)}this.#e.add(r)}};function Kh(e){if(!Number.isSafeInteger(e.ttlMs)||e.ttlMs<0||e.cacheScope!=="public"&&e.cacheScope!=="private")throw new p("Invalid MCP cache policy",m.invalidParams,{ttlMs:e.ttlMs,cacheScope:e.cacheScope});return{ttlMs:e.ttlMs,cacheScope:e.cacheScope}}function p0(e,t){return{...e,...Kh(t)}}function Wh(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function Xh(e,t){if(t==="#")return e;if(!t.startsWith("#/"))return;let r=e;for(let o of t.slice(2).split("/").map(Wh)){if(!_(r)&&!Array.isArray(r)||!Object.prototype.hasOwnProperty.call(r,o))return;r=r[o]}return r}function Yh(e){let t=e.maxBytes??ot.maxBytes,r=e.maxDepth??ot.maxDepth,o=e.maxNodes??ot.maxNodes;if(!Number.isSafeInteger(t)||t<2)throw new p("Invalid MCP JSON Schema work bounds",m.invalidParams);if(!Number.isSafeInteger(r)||r<1)throw new p("Invalid MCP JSON Schema work bounds",m.invalidParams);if(!Number.isSafeInteger(o)||o<1)throw new p("Invalid MCP JSON Schema work bounds",m.invalidParams);return{maximumBytes:t,maximumDepth:r,maximumNodes:o}}function Jh(e,t){let r=Array.isArray(e.value)?e.value:_(e.value)?Object.values(e.value):[];for(let o of r)t.push({value:o,depth:e.depth+1})}function Zh(e,t){if(!_(t)||typeof t.$ref!="string")return;let r=t.$ref;if(r.startsWith("#")&&Xh(e,r)===void 0)throw new p("MCP JSON Schema contains an unresolved local reference",m.invalidParams,{reference:r})}function m0(e,t={}){let{maximumBytes:r,maximumDepth:o,maximumNodes:n}=Yh(t);if(typeof e!="boolean"&&!_(e))throw new p("Invalid MCP JSON Schema root",m.invalidParams,{expected:"object or boolean"});be(e,r,"JSON Schema");let i=[{value:e,depth:0}],s=0;for(;i.length>0;){let a=i.pop();if(s+=1,s>n||a.depth>o)throw new p("MCP JSON Schema exceeds validation work bounds",m.invalidParams,{maximumDepth:o,maximumNodes:n});Zh(e,a.value),Jh(a,i)}return structuredClone(e)}import{randomUUID as Qh}from"node:crypto";import{readFile as eg}from"node:fs/promises";import yr 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]="7f5b3ba6-07cf-5317-8f62-63e84f561232")}catch{}})();var T0="io.modelcontextprotocol/tasks",tg=["working","input_required","completed","failed","cancelled"],rg=/^mcp-task-[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/iu,og=3600*1e3,ng=1e3,Te=1024,ig=30,sg=2e3;function st(e){return new p(e,m.invalidParams,{code:"mcp_task_not_found_or_not_authorized"})}function Ce(e){let t=e.trim();if(!rg.test(t))throw st("Unknown MCP task");return t}function br(e,t){if(typeof e!="string"||!Number.isFinite(Date.parse(e)))throw new p("Corrupt MCP task record",m.invalidParams,{field:t});return e}function Cr(e){if(!_(e)||typeof e.code!="number"||!Number.isFinite(e.code)||typeof e.message!="string")throw new p("Corrupt MCP task error",m.invalidParams);return{code:e.code,message:e.message.slice(0,Te),..._(e.data)?{data:structuredClone(e.data)}:{}}}function ag(e){if(!tg.includes(e))throw new p("Corrupt MCP task record",m.invalidParams);return e}function cg(e){if(typeof e!="string"||e.length===0)throw new p("Corrupt MCP task record",m.invalidParams);return e}function dg(e){if(typeof e!="number"||!Number.isSafeInteger(e)||e<1)throw new p("Corrupt MCP task record",m.invalidParams);return e}function lg(e){if(e!==null&&(typeof e!="number"||!Number.isSafeInteger(e)||e<0))throw new p("Corrupt MCP task record",m.invalidParams);return e}function ug(e){if(e!==void 0){if(typeof e!="number"||!Number.isSafeInteger(e)||e<0)throw new p("Corrupt MCP task record",m.invalidParams);return e}}function pg(e){if(!Array.isArray(e)||e.some(t=>typeof t!="string"))throw new p("Corrupt MCP task record",m.invalidParams);return[...e]}function mg(e){if(!_(e)||e.version!==1)throw new p("Corrupt MCP task record",m.invalidParams);let t=typeof e.taskId=="string"?Ce(e.taskId):"",r=ag(e.status),o=cg(e.principal),n=dg(e.workerPid),i=lg(e.ttlMs),s=ug(e.pollIntervalMs),a={version:1,taskId:t,status:r,principal:o,workerPid:n,createdAt:br(e.createdAt,"createdAt"),lastUpdatedAt:br(e.lastUpdatedAt,"lastUpdatedAt"),ttlMs:i,consumedInputKeys:pg(e.consumedInputKeys),...typeof e.statusMessage=="string"?{statusMessage:e.statusMessage.slice(0,Te)}:{},...typeof s=="number"?{pollIntervalMs:s}:{}};if(_(e.inputRequests)&&(a.inputRequests=structuredClone(e.inputRequests)),_(e.inputResponses)&&(a.inputResponses=structuredClone(e.inputResponses)),_(e.result)&&(a.result=structuredClone(e.result)),e.error!==void 0&&(a.error=Cr(e.error)),a.status==="input_required"&&!a.inputRequests||a.status==="completed"&&!a.result||a.status==="failed"&&!a.error)throw new p("Corrupt MCP task status payload",m.invalidParams,{status:a.status});return a}function W(e){let t={taskId:e.taskId,status:e.status,createdAt:e.createdAt,lastUpdatedAt:e.lastUpdatedAt,ttlMs:e.ttlMs,...e.statusMessage?{statusMessage:e.statusMessage}:{},...e.pollIntervalMs===void 0?{}:{pollIntervalMs:e.pollIntervalMs}};return e.status==="input_required"?{...t,status:"input_required",inputRequests:structuredClone(e.inputRequests)}:e.status==="completed"?{...t,status:"completed",result:structuredClone(e.result)}:e.status==="failed"?{...t,status:"failed",error:structuredClone(e.error)}:e.status==="cancelled"?{...t,status:"cancelled"}:{...t,status:"working"}}function ne(e){return e==="completed"||e==="failed"||e==="cancelled"}function fg(e){try{return process.kill(e,0),!0}catch(t){return!(typeof t=="object"&&t!==null&&"code"in t&&t.code==="ESRCH")}}var at=class{#e;#t;#r;#o;#i;constructor(t){this.#e=yr.resolve(t.pmRoot),this.#t=t.owner?.trim()||"pm-mcp",this.#r=t.now??(()=>new Date),this.#o=t.taskIdFactory??(()=>`mcp-task-${Qh()}`),this.#i=t.workerPid??process.pid}#s(t){return yr.join(this.#e,"runtime","mcp-tasks","records",`${Ce(t)}.json`)}async#c(t){try{return mg(JSON.parse(await eg(this.#s(t),"utf8")))}catch(r){throw fe(r)||r instanceof SyntaxError?st("Unknown MCP task"):r}}async#a(t){await je(this.#s(t.taskId),`${JSON.stringify(t,null,2)}
|
|
2
2
|
`)}async#n(t,r,o){let n=Ce(t),i=await Be(this.#e,n,ig,this.#t,!1,!1,sg);try{let s=await this.#c(n);if(s.principal!==r)throw st("Unknown MCP task");let a=o(s);return await this.#a(a),a}finally{await i()}}async create(t){let r=Ce(this.#o()),o=t.principal.trim(),n=t.ttlMs===void 0?og:t.ttlMs,i=t.pollIntervalMs??ng;if(o.length===0||n!==null&&(!Number.isSafeInteger(n)||n<0)||!Number.isSafeInteger(i)||i<0)throw new p("Invalid MCP task creation options",m.invalidParams);let s=this.#r().toISOString(),a={version:1,taskId:r,status:"working",createdAt:s,lastUpdatedAt:s,ttlMs:n,pollIntervalMs:i,principal:o,workerPid:this.#i,consumedInputKeys:[],...t.statusMessage?.trim()?{statusMessage:t.statusMessage.trim().slice(0,Te)}:{}};return await this.#a(a),{...W(a),resultType:"task"}}async get(t,r){return W(await this.#n(t,r,o=>{if(ne(o.status))return o;let n=this.#r().getTime(),i=o.ttlMs!==null&&Date.parse(o.createdAt)+o.ttlMs<=n,s=o.workerPid!==this.#i&&!fg(o.workerPid);return!i&&!s?o:{...o,status:"failed",statusMessage:i?"Task retention expired before completion.":"Task worker ended before recording a terminal result.",lastUpdatedAt:this.#r().toISOString(),error:{code:-32603,message:i?"MCP task expired":"MCP task worker unavailable after restart",data:{recoverable:!1,createNewTask:!0}},inputRequests:void 0}}))}async requireInput(t){let r=it(t.inputRequests,t.requestContext);return W(await this.#n(t.taskId,t.principal,o=>{if(ne(o.status))return o;let n=Object.keys(r).filter(i=>o.consumedInputKeys.includes(i));if(n.length>0)throw new p("MCP task input request keys must be unique for the task lifetime",m.invalidParams,{reused:n});return{...o,status:"input_required",statusMessage:t.statusMessage?.trim().slice(0,Te),lastUpdatedAt:this.#r().toISOString(),inputRequests:r}}))}async update(t,r,o){let n=hr(o),i=[],s=[];return await this.#n(t,r,a=>{if(a.status!=="input_required"||!a.inputRequests)return a;let c={...a.inputRequests},d=a.inputResponses?{...a.inputResponses}:{};for(let[l,u]of Object.entries(n))Object.prototype.hasOwnProperty.call(c,l)&&(d[l]=u,delete c[l],i.push(l));return s=Object.keys(c).sort(),i.length===0?a:{...a,status:s.length===0?"working":"input_required",lastUpdatedAt:this.#r().toISOString(),inputRequests:s.length===0?void 0:c,inputResponses:d,consumedInputKeys:[...new Set([...a.consumedInputKeys,...i])].sort()}}),{acceptedKeys:i.sort(),remainingKeys:s}}async takeInputResponses(t,r){let o={};return await this.#n(t,r,n=>(o=structuredClone(n.inputResponses??{}),Object.keys(o).length===0?n:{...n,inputResponses:void 0})),o}async complete(t,r,o){return W(await this.#n(t,r,n=>ne(n.status)?n:{...n,status:"completed",statusMessage:"Task completed.",lastUpdatedAt:this.#r().toISOString(),result:structuredClone(o),inputRequests:void 0,error:void 0}))}async fail(t,r,o){let n=Cr(o);return W(await this.#n(t,r,i=>ne(i.status)?i:{...i,status:"failed",statusMessage:n.message,lastUpdatedAt:this.#r().toISOString(),error:n,inputRequests:void 0,result:void 0}))}async cancel(t,r){return W(await this.#n(t,r,o=>ne(o.status)?o:{...o,status:"cancelled",statusMessage:"Task cancelled by the client.",lastUpdatedAt:this.#r().toISOString(),inputRequests:void 0,result:void 0,error:void 0}))}};function S0(e){return new at(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]="f87864d3-e499-57f7-b1e3-4ea3f30b7725")}catch{}})();var Se="io.modelcontextprotocol/subscriptionId",Tr=256,Sr=2048,_g=5e3;function hg(e,t){return new Promise((r,o)=>{let n=setTimeout(()=>o(new Error("MCP subscription sink write timed out")),_g);n.unref(),Promise.resolve().then(()=>e(t)).then(()=>{clearTimeout(n),r()},i=>{clearTimeout(n),o(i instanceof Error?i:new Error(String(i)))})})}function ct(e,t){if(e!==void 0){if(typeof e!="boolean")throw new p("Invalid MCP subscription filter",m.invalidParams,{field:`notifications.${t}`,expected:"boolean"});return e||void 0}}function gg(e){if(!_(e))throw new p("Invalid MCP subscription filter",m.invalidParams,{field:"notifications",expected:"object"});let t=ct(e.toolsListChanged,"toolsListChanged"),r=ct(e.promptsListChanged,"promptsListChanged"),o=ct(e.resourcesListChanged,"resourcesListChanged"),n;if(e.resourceSubscriptions!==void 0){if(!Array.isArray(e.resourceSubscriptions)||e.resourceSubscriptions.length>Tr)throw new p("Invalid MCP resource subscriptions",m.invalidParams,{field:"notifications.resourceSubscriptions",maximum:Tr});let i=new Set;for(let s of e.resourceSubscriptions){if(typeof s!="string"||s.trim().length===0||Buffer.byteLength(s,"utf8")>Sr)throw new p("Invalid MCP resource subscription URI",m.invalidParams,{field:"notifications.resourceSubscriptions",maximumBytes:Sr});i.add(s)}i.size>0&&(n=[...i].sort())}return{...t?{toolsListChanged:t}:{},...r?{promptsListChanged:r}:{},...o?{resourcesListChanged:o}:{},...n?{resourceSubscriptions:n}:{}}}function yg(e,t){return{...e.toolsListChanged&&t.tools?.listChanged?{toolsListChanged:!0}:{},...e.promptsListChanged&&t.prompts?.listChanged?{promptsListChanged:!0}:{},...e.resourcesListChanged&&t.resources?.listChanged?{resourcesListChanged:!0}:{},...e.resourceSubscriptions&&t.resources?.subscribe?{resourceSubscriptions:[...e.resourceSubscriptions]}:{}}}var wr=class{#e;#t=new Map;#r;constructor(t){this.#e=structuredClone(t.capabilities),this.#r={...t.serverInfo}}get size(){return this.#t.size}async open(t){if(this.#t.has(t.id))throw new p("MCP subscription id is already active",m.invalidParams,{subscriptionId:t.id});let r=yg(gg(t.notifications),this.#e),o={filter:r,sink:t.sink,writeQueue:Promise.resolve()};this.#t.set(t.id,o);try{await this.#o(t.id,o,{jsonrpc:"2.0",method:"notifications/subscriptions/acknowledged",params:{_meta:{[Se]:t.id},notifications:structuredClone(r)}},!0)}catch(n){throw this.#t.delete(t.id),n}return structuredClone(r)}async emitListChanged(t){let r=`${t}ListChanged`,o=`notifications/${t}/list_changed`,n=[];for(let[i,s]of this.#t)s.filter[r]===!0&&n.push(this.#o(i,s,{jsonrpc:"2.0",method:o,params:{_meta:{[Se]:i}}}));return(await Promise.all(n)).filter(Boolean).length}async emitResourceUpdated(t){let r=[];for(let[o,n]of this.#t)n.filter.resourceSubscriptions?.includes(t)&&r.push(this.#o(o,n,{jsonrpc:"2.0",method:"notifications/resources/updated",params:{_meta:{[Se]:o},uri:t}}));return(await Promise.all(r)).filter(Boolean).length}async#o(t,r,o,n=!1){let i=r.writeQueue.then(async()=>{if(this.#t.get(t)!==r)return!1;try{return await hg(r.sink,o),!0}catch(s){if(this.#t.get(t)===r&&this.#t.delete(t),n)throw s;return!1}});return r.writeQueue=i.then(()=>{},()=>{}),i}close(t){if(this.#t.delete(t))return{...rt({resultType:"complete",_meta:{[Se]:t}},this.#r)}}closeAll(){let t=[];for(let r of this.#t.keys()){let o=this.close(r);t.push({id:r,result:o})}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]="7d591d0b-f009-519c-8024-c6fa18effb8e")}catch{}})();var Er=/^=\?base64\?([A-Za-z0-9+/]*={0,2})\?=$/u,bg=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/u,Ar=/^[\t\x20-\x7E]*$/u,vr=new Set(["prompts/get","resources/read","tools/call"]);function Cg(e){let t=new Map;for(let[r,o]of Object.entries(e)){if(o===void 0)continue;let n=typeof o=="string"?o:o.join(", ");t.set(r.toLowerCase(),n)}return t}function v(e,t){throw new p(e,m.headerMismatch,{header:t})}function Or(e){let t=typeof e=="boolean"?String(e).toLowerCase():String(e);return t.length>0&&t.trim()===t&&Ar.test(t)&&!Er.test(t)?t:`=?base64?${Buffer.from(t,"utf8").toString("base64")}?=`}function Ir(e,t){let r=Er.exec(e);if(r){let o=r[1],n=Buffer.from(o,"base64");return n.toString("base64")!==o||n.length===0?v("Malformed MCP Base64 header value",t):n.toString("utf8")}return e.length===0||e.trim()!==e||!Ar.test(e)?v("Malformed MCP header value",t):e}function we(e){return Array.isArray(e)?e.some(we):_(e)?Object.prototype.hasOwnProperty.call(e,"x-mcp-header")||Object.values(e).some(we):!1}function Tg(e,t,r){let o=e["x-mcp-header"];if(o===void 0)return;let n=e.type;if(typeof o!="string"||!bg.test(o)||!["boolean","integer","string"].includes(String(n))||r.has(o.toLowerCase()))throw new p("Invalid MCP x-mcp-header annotation",m.invalidParams,{field:t.join("."),annotation:o});return r.add(o.toLowerCase()),{name:o,path:t,type:n}}function Rr(e){if(!_(e))throw new p("Invalid MCP tool schema",m.invalidParams,{field:"inputSchema",expected:"object"});let t=[],r=new Set,o=(n,i)=>{let s=n.properties;if(s!==void 0){if(!_(s))throw new p("Invalid MCP tool schema properties",m.invalidParams,{field:"inputSchema.properties"});for(let[a,c]of Object.entries(s)){if(!_(c))continue;let d=[...i,a],l=Tg(c,d,r);l&&t.push(l);for(let[u,f]of Object.entries(c))if(u!=="properties"&&u!=="x-mcp-header"&&we(f))throw new p("MCP x-mcp-header is not statically reachable",m.invalidParams,{field:d.join("."),keyword:u});o(c,d)}}};for(let[n,i]of Object.entries(e))if(n!=="properties"&&we(i))throw new p("MCP x-mcp-header is not statically reachable",m.invalidParams,{field:"inputSchema",keyword:n});return o(e,[]),t}function Pr(e,t){let r=e;for(let o of t){if(!_(r))return;r=r[o]}return r}function Mr(e,t){let r=e==="resources/read"?t.uri:t.name;return typeof r=="string"?r:void 0}function Sg(e,t){let r=_(e.arguments)?e.arguments:{},o={};for(let n of Rr(t)){let i=Pr(r,n.path);if(i==null)continue;if(!(n.type==="integer"&&typeof i=="number"&&Number.isSafeInteger(i)||n.type==="boolean"&&typeof i=="boolean"||n.type==="string"&&typeof i=="string"))throw new p("Invalid MCP custom header argument",m.invalidParams,{field:n.path.join("."),expected:n.type});o[`Mcp-Param-${n.name}`]=Or(i)}return o}function O0(e){let t=_(e.request.params)?e.request.params:void 0,r=tt(t),o=e.request.method;if(typeof o!="string"||o.length===0)return v("Missing MCP request method","Mcp-Method");let n={Accept:"application/json, text/event-stream","Content-Type":"application/json","MCP-Protocol-Version":r.protocolVersion,"Mcp-Method":o},i=Mr(o,t);if(vr.has(o)){if(i===void 0)return v("Missing MCP request name","Mcp-Name");n["Mcp-Name"]=Or(i)}return o==="tools/call"&&e.toolSchema!==void 0&&Object.assign(n,Sg(t,e.toolSchema)),n}function wg(e,t){let r=t.method;(typeof r!="string"||r.length===0)&&v("Missing MCP request method","Mcp-Method");let o=_(t.params)?t.params:void 0,n=tt(o).protocolVersion;if(e.get("mcp-protocol-version")!==n&&v("MCP protocol header does not match request metadata","MCP-Protocol-Version"),e.get("mcp-method")!==r&&v("MCP method header does not match request body","Mcp-Method"),vr.has(r)){let i=e.get("mcp-name"),s=Mr(r,o);(i===void 0||s===void 0||Ir(i,"Mcp-Name")!==s)&&v("MCP name header does not match request body","Mcp-Name")}e.has("last-event-id")&&v("MCP SSE resumability is not supported","Last-Event-ID")}function Eg(e,t,r){return e.type==="integer"?typeof t=="number"&&Number.isSafeInteger(t)&&Number(r)===t:e.type==="boolean"?typeof t=="boolean"&&r===String(t):typeof t=="string"&&r===t}function Ag(e){let t=_(e.params.arguments)?e.params.arguments:{};for(let r of Rr(e.toolSchema)){let o=Pr(t,r.path),n=`Mcp-Param-${r.name}`,i=e.headers.get(n.toLowerCase());if(o==null){i!==void 0&&v("Unexpected MCP parameter header",n);continue}i===void 0&&v("Missing MCP parameter header",n),Eg(r,o,Ir(i,n))||v("MCP parameter header does not match request body",n)}}function I0(e){let t=Cg(e.headers),r=typeof e.request.method=="string"?e.request.method:"";wg(t,e.request),!(r!=="tools/call"||e.toolSchema===void 0)&&Ag({headers:t,params:e.request.params,toolSchema:e.toolSchema})}var R0=K;import{AsyncLocalStorage as vg}from"node:async_hooks";import{createHash as kr,timingSafeEqual as Og}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]="6a5310f6-3add-5108-b39f-61607918dc9f")}catch{}})();var y=class extends Error{httpStatus;challenge;constructor(t,r,o){super(t),this.name="PmMcpAuthorizationError",this.httpStatus=r,this.challenge=o}},Ig=/^00-([0-9a-f]{32})-([0-9a-f]{16})-([0-9a-f]{2})$/u,Rg=/^[a-z][a-z0-9_*/-]{0,255}$/u,Pg=/^(?:[a-z0-9][a-z0-9_*/-]{0,240})@[a-z][a-z0-9_*/-]{0,13}$/u,Mg=/^[\x20-\x2B\x2D-\x3C\x3E-\x7E]{0,255}[\x21-\x2B\x2D-\x3C\x3E-\x7E]$/u,Nr=/^[\x21\x23-\x5B\x5D-\x7E]+$/u,Lr=/^[A-Za-z0-9!#$%&'*+.^_`|~-]+$/u,kg=/^[\x21\x23-\x2B\x2D-\x3A\x3C-\x5B\x5D-\x7E]*$/u,xg=/%(?![0-9A-Fa-f]{2})/u,Ng=512,Lg=32,Dg=180,$g=8192,Fg=8192,Dr=new vg;function E(e,t,r=!1){if(new RegExp("\\p{Cc}","u").test(e))throw new y(`Invalid ${t}`,401);let o;try{o=new URL(e)}catch{throw new y(`Invalid ${t}`,401)}let n=o.hostname==="127.0.0.1"||o.hostname==="localhost";if(o.hash.length>0||o.protocol!=="https:"&&!(r&&n&&o.protocol==="http:"))throw new y(`Invalid ${t}`,401);return o}function jg(e,t){let r=t.toLowerCase();for(let[o,n]of Object.entries(e))if(!(o.toLowerCase()!==r||n===void 0))return typeof n=="string"?n:n.join(", ")}function N0(e){let t=E(e.resource,"protected resource URI",!0).href.replace(/\/$/u,"");if(e.authorizationServers.length===0)throw new y("Protected resource metadata requires an authorization server",401);let r=e.authorizationServers.map(n=>E(n,"authorization server issuer").href.replace(/\/$/u,"")),o=[...new Set(e.scopes??[])];if(o.some(n=>!Nr.test(n)))throw new y("Invalid authorization scope",401);return{resource:t,authorization_servers:r,...o.length>0?{scopes_supported:o.sort()}:{}}}function L0(e){let t=E(e,"authorization server issuer"),r=t.pathname.replace(/^\/+|\/+$/gu,""),o=t.origin;return r?[`${o}/.well-known/oauth-authorization-server/${r}`,`${o}/.well-known/openid-configuration/${r}`,`${o}/${r}/.well-known/openid-configuration`]:[`${o}/.well-known/oauth-authorization-server`,`${o}/.well-known/openid-configuration`]}function D0(e,t){if(!_(e)||typeof e.issuer!="string")throw new y("Invalid authorization server metadata",401);let r=E(t,"expected issuer").href.replace(/\/$/u,"");if(E(e.issuer,"metadata issuer").href.replace(/\/$/u,"")!==r)throw new y("Authorization server issuer mismatch",401);if(!Array.isArray(e.code_challenge_methods_supported)||!e.code_challenge_methods_supported.includes("S256"))throw new y("Authorization server does not support required S256 PKCE",401);let n=d=>{let l=e[d];if(typeof l!="string")throw new y(`Authorization server metadata requires ${d}`,401);return E(l,d).href},i=d=>{let l=e[d];return typeof l=="string"?E(l,d).href:void 0},s=n("authorization_endpoint"),a=n("token_endpoint"),c=i("registration_endpoint");return{issuer:r,authorization_endpoint:s,token_endpoint:a,code_challenge_methods_supported:[...new Set(e.code_challenge_methods_supported.filter(d=>typeof d=="string"))],...e.client_id_metadata_document_supported===!0?{client_id_metadata_document_supported:!0}:{},...c?{registration_endpoint:c}:{}}}function $0(e){return e.hasPreRegisteredClient?"pre_registered":e.metadata.client_id_metadata_document_supported?"client_id_metadata_document":e.metadata.registration_endpoint?"dynamic":"user_supplied"}function F0(e){if(e.responseIssuer===void 0){if(e.issuerParameterSupported)throw new y("Authorization response omitted the advertised issuer",401);return}if(e.responseIssuer!==e.expectedIssuer)throw new y("Authorization response issuer mismatch",401)}function j0(e,t){let r=E(t,"client metadata document URL");if(r.pathname==="/"||!_(e)||e.client_id!==r.href||typeof e.client_name!="string"||e.client_name.trim().length===0||!Array.isArray(e.redirect_uris)||e.redirect_uris.length===0)throw new y("Invalid Client ID Metadata Document",401);for(let o of e.redirect_uris){if(typeof o!="string")throw new y("Invalid client redirect URI",401);E(o,"client redirect URI",!0)}return structuredClone(e)}function G0(e){if(e.redirectUris.length===0||e.clientName.trim().length===0)throw new y("Invalid dynamic client registration metadata",401);let t=e.redirectUris.map(r=>E(r,"redirect URI",!0).href);return{application_type:e.applicationType,client_name:e.clientName.trim().slice(0,128),redirect_uris:t,grant_types:["authorization_code","refresh_token"],response_types:["code"],token_endpoint_auth_method:"none"}}var xr=class{#e=new Map;set(t,r){let o=E(t,"credential issuer").href;this.#e.set(o,structuredClone(r))}get(t){let r=E(t,"credential issuer").href,o=this.#e.get(r);return o?structuredClone(o):void 0}delete(t){let r=E(t,"credential issuer").href;return this.#e.delete(r)}};function Gg(e){let t=e.traceparent,r=e.tracestate;if(t!==void 0){let o=typeof t=="string"?Ig.exec(t):null;if(!o)throw new y("Invalid MCP traceparent",403);let n=o[1],i=o[2];if(/^0+$/u.test(n)||/^0+$/u.test(i))throw new y("Invalid MCP traceparent",403)}if(r!==void 0&&(typeof r!="string"||!Bg(r)))throw new y("Invalid MCP tracestate",403);return{...typeof t=="string"?{traceparent:t}:{},...typeof r=="string"?{tracestate:r}:{}}}function F(e){return e.replace(/^[ \t]*|[ \t]*$/gu,"")}function Ug(e){return Rg.test(e)||Pg.test(e)}function Bg(e){if(Buffer.byteLength(e,"utf8")>Ng)return!1;let t=e.split(",");if(t.length>Lg)return!1;let r=new Set;for(let o of t){let n=F(o);if(n.length===0)continue;let i=n.indexOf("="),s=i>0?n.slice(0,i):"",a=i>0?n.slice(i+1):"";if(!Ug(s)||!Mg.test(a)||r.has(s))return!1;r.add(s)}return!0}function $r(e){return kg.test(e)&&!xg.test(e)}function qg(e){let t=F(e),r=t.indexOf("="),o=F(r>=0?t.slice(0,r):t),n=r>=0?F(t.slice(r+1)):void 0;return Lr.test(o)&&(n===void 0||$r(n))}function zg(e){let t=F(e),r=t.split(";"),o=r[0],n=r.slice(1),i=o.indexOf("="),s=F(i>0?o.slice(0,i):""),a=i>0?F(o.slice(i+1)):"";if(!(!Lr.test(s)||!$r(a)||!n.every(qg)))return{key:s,serialized:t}}function Vg(e,t){if(e===void 0)return;if(typeof e!="string"||Buffer.byteLength(e,"utf8")>$g)throw new y("Invalid MCP baggage",403);let r=new Set(t),o=e.split(",");if(o.length>Dg)throw new y("Invalid MCP baggage",403);let n=[];for(let i of o){let s=zg(i);if(!s)throw new y("Invalid MCP baggage",403);r.has(s.key)&&n.push(s.serialized)}return n.length>0?n.join(","):void 0}function U0(e,t={}){let r=_(e)&&_(e._meta)?e._meta:{},o=Vg(r.baggage,t.baggageAllowlist??[]);return{...Gg(r),...o?{baggage:o}:{}}}function B0(e,t){return Dr.run(structuredClone(e),t)}function q0(){let e=Dr.getStore();return e?{...e}:void 0}async function z0(e){let t=E(e.policy.resourceMetadataUrl,"protected resource metadata URL",!0).href,r=[...new Set(e.policy.requiredScopes??[])];if(r.some(u=>!Nr.test(u)))throw new y("Invalid authorization scope",401);let o=`Bearer resource_metadata="${t}"`;if(new URL(e.requestUrl,e.policy.resource).searchParams.has("access_token"))throw new y("Access tokens must not appear in URI query parameters",401,o);let s=jg(e.headers,"authorization")?.match(/^Bearer ([^\s]+)$/iu);if(!s)throw new y("Missing or malformed bearer token",401,o);let a=s[1];if(Buffer.byteLength(a,"utf8")>Fg)throw new y("Missing or malformed bearer token",401,o);let c;try{c=await e.policy.verifyAccessToken(a)}catch{throw new y("Invalid bearer token",401,o)}let d=Array.isArray(c.audience)?c.audience:[c.audience];if(c.issuer!==e.policy.issuer||!d.includes(e.policy.resource))throw new y("Bearer token issuer or audience mismatch",401,o);let l=r.filter(u=>!c.scopes.includes(u));if(l.length>0)throw new y("Bearer token has insufficient scope",403,`${o}, scope="${l.join(" ")}"`);return{...c,audience:[...d],scopes:[...c.scopes]}}function V0(e){let t=kr("sha256").update(e.token).digest();return r=>{let o=kr("sha256").update(r).digest();if(!Og(t,o))throw new y("Invalid bearer token",401);return structuredClone(e.claims)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4f17095e-2dba-530c-935c-1803ed359510")}catch{}})();var dt="io.modelcontextprotocol/ui",Ee="2026-01-26",Gr="text/html;profile=mcp-app",Fr=Object.freeze({specVersion:Ee,mimeTypes:[Gr]});function W0(e){let t=e.clientCapabilities.extensions;if(!_(t))return!1;let r=t[dt];if(r===void 0)return!1;if(!_(r))throw new p("Invalid MCP Apps client capability",m.missingRequiredClientCapability,{requiredCapabilities:{extensions:{[dt]:Fr}}});let o=r.mimeTypes,n=r.specVersion;if(!Array.isArray(o)||!o.includes(Gr)||n!==void 0&&n!==Ee)throw new p("Unsupported MCP Apps client capability",m.missingRequiredClientCapability,{requiredCapabilities:{extensions:{[dt]:Fr}}});return!0}var Hg={csp:{connectDomains:[],resourceDomains:[],frameDomains:[]},permissions:{},prefersBorder:!0},Ur=Object.freeze([{id:"context",name:"Context explorer",description:"Inspect bounded project context, provenance, omissions, and token accounting.",toolName:"pm_context",uri:"ui://pm/context.html"},{id:"graph",name:"Relationship graph",description:"Explore typed relationships, explaining paths, and graph-governance evidence.",toolName:"pm_graph",uri:"ui://pm/graph.html"},{id:"plan",name:"Plan and milestone view",description:"Review durable plan steps, dependencies, decisions, discoveries, and validation state.",toolName:"pm_plan",uri:"ui://pm/plan.html"},{id:"assurance",name:"Assurance dashboard",description:"Inspect validation verdicts, evidence, omissions, and actionable recovery paths.",toolName:"pm_validate",uri:"ui://pm/assurance.html"},{id:"operations",name:"Long-operation view",description:"Inspect durable test and operation results without creating a second task store.",toolName:"pm_test",uri:"ui://pm/operations.html"}].map(e=>({...e,toolMeta:{resourceUri:e.uri,visibility:["model","app"]},resourceMeta:Hg})));function X0(e){return Ur.find(t=>t.uri===e)}function Y0(e){let t=new Map(Ur.map(r=>[r.toolName,r]));return e.map(r=>{let o=t.get(r.name);return o?{...r,_meta:{...r._meta,ui:o.toolMeta}}:{...r}})}function jr(e){return e.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'")}function J0(e){let t=jr(e.name),r=jr(e.description),o=JSON.stringify({name:`pm-${e.id}-view`,version:Ee}),n=JSON.stringify(Ee);return`<!doctype html>
|
|
3
3
|
<html lang="en">
|
|
4
4
|
<head>
|
|
@@ -38,6 +38,13 @@ export declare function resetActiveExtensionRuntimeState(): void;
|
|
|
38
38
|
export declare function setActiveCommandContext(context: Omit<CommandOverrideContext, "result"> | null): void;
|
|
39
39
|
/** Return a defensive snapshot of the current invocation's command context. */
|
|
40
40
|
export declare function getActiveCommandContext(): Omit<CommandOverrideContext, "result"> | null;
|
|
41
|
+
/**
|
|
42
|
+
* Prove that the active command has no extension execution surface. Unrelated
|
|
43
|
+
* command registrations are harmless; hooks, services, renderers, migrations,
|
|
44
|
+
* and matching handlers/parsers make ownership uncertain and fail closed.
|
|
45
|
+
* Snapshot this predicate before entering an isolated infrastructure context.
|
|
46
|
+
*/
|
|
47
|
+
export declare function isActiveCommandUnextended(command: string): boolean;
|
|
41
48
|
/** Implements set active command result for the public runtime surface of this module. */
|
|
42
49
|
export declare function setActiveCommandResult(result: unknown): void;
|
|
43
50
|
/** Implements get active command result for the public runtime surface of this module. */
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="0989270e-6969-5059-b3df-06411211f701")}catch(e2){}})();import{existsSync}from"node:fs";import{AsyncLocalStorage}from"node:async_hooks";import path from"node:path";import{runCommandHandler,runBeforeMutationHooks,runCommandOverride,runOnIndexHooks,runParserOverride,runPreflightOverride,runOnReadHooks,runRendererOverride,runServiceOverride,runServiceOverrideSync,runOnWriteHooks}from"./loader.js";let activeExtensionHooks=null;let activeExtensionCommands=null;let activeExtensionParsers=null;let activeExtensionPreflight=null;let activeExtensionServices=null;let activeExtensionRenderers=null;let activeExtensionRegistrations=null;let activeCommandContext=null;let activeCommandResult=void 0;let activeAfterCommandAffectedItems=[];const isolatedExtensionRuntime=new AsyncLocalStorage;function runtimeState(){return isolatedExtensionRuntime.getStore()}function runWithIsolatedExtensionRuntime(run){return isolatedExtensionRuntime.run({hooks:null,commands:null,parsers:null,preflight:null,services:null,renderers:null,registrations:null,commandContext:null,commandResult:void 0,affectedItems:[]},run)}const AFTER_COMMAND_SNAPSHOT_OMITTED_FIELDS=new Set(["body","comments","dependencies","docs","events","files","learnings","notes","reminders","test_runs","tests"]);function findSourceRepositoryRoot(candidate){let cursor=path.resolve(candidate);while(true){if(existsSync(path.join(cursor,".git"))){return cursor}const parent=path.dirname(cursor);if(parent===cursor){return void 0}cursor=parent}}function resolvePortableWorkspaceContext(pmRoot){const sourceCandidate=process.env.PM_SOURCE_WORKSPACE_ROOT?.trim()||process.cwd();const sourceWorkspaceRoot=findSourceRepositoryRoot(sourceCandidate)??path.resolve(sourceCandidate);const repoRoot=findSourceRepositoryRoot(sourceWorkspaceRoot);if(!pmRoot){return{source_workspace_root:sourceWorkspaceRoot,...repoRoot?{repo_root:repoRoot}:{}}}const relativePmRoot=path.relative(sourceWorkspaceRoot,path.resolve(pmRoot));const contained=relativePmRoot.length>0&&!relativePmRoot.startsWith(`..${path.sep}`)&&relativePmRoot!==".."&&!path.isAbsolute(relativePmRoot);return{source_workspace_root:sourceWorkspaceRoot,...repoRoot?{repo_root:repoRoot}:{},...contained?{pm_root_rel:relativePmRoot.split(path.sep).join("/")}:{}}}function setActiveExtensionHooks(hooks){const state=runtimeState();if(state){state.hooks=hooks;return}activeExtensionHooks=hooks}function setActiveExtensionCommands(commands){const state=runtimeState();if(state){state.commands=commands;return}activeExtensionCommands=commands}function setActiveExtensionParsers(parsers){const state=runtimeState();if(state){state.parsers=parsers;return}activeExtensionParsers=parsers}function setActiveExtensionPreflight(preflight){const state=runtimeState();if(state){state.preflight=preflight;return}activeExtensionPreflight=preflight}function setActiveExtensionServices(services){const state=runtimeState();if(state){state.services=services;return}activeExtensionServices=services}function setActiveExtensionRenderers(renderers){const state=runtimeState();if(state){state.renderers=renderers;return}activeExtensionRenderers=renderers}function setActiveExtensionRegistrations(registrations){const state=runtimeState();if(state){state.registrations=registrations;return}activeExtensionRegistrations=registrations}function getActiveExtensionRegistrations(){const state=runtimeState();return state?state.registrations:activeExtensionRegistrations}function resetActiveExtensionRuntimeState(){const state=runtimeState();if(state){state.hooks=null;state.commands=null;state.parsers=null;state.preflight=null;state.services=null;state.renderers=null;state.registrations=null;state.commandContext=null;state.commandResult=null;state.affectedItems=[];return}activeExtensionHooks=null;activeExtensionCommands=null;activeExtensionParsers=null;activeExtensionPreflight=null;activeExtensionServices=null;activeExtensionRenderers=null;activeExtensionRegistrations=null;activeCommandContext=null;activeCommandResult=null}function setActiveCommandContext(context){const resolved=context?{...context,...resolvePortableWorkspaceContext(context.pm_root)}:null;const state=runtimeState();if(state){state.commandContext=resolved;return}activeCommandContext=resolved}function getActiveCommandContext(){const state=runtimeState();const context=state?state.commandContext:activeCommandContext;return context?{...context,args:[...context.args],options:context.options?{...context.options}:{},global:context.global?{...context.global}:void 0}:null}function setActiveCommandResult(result){const state=runtimeState();if(state){state.commandResult=result;return}activeCommandResult=result}function getActiveCommandResult(){const state=runtimeState();return state?state.commandResult:activeCommandResult}function recordAfterCommandAffectedItem(item){if(!item){return}const state=runtimeState();if(state){state.affectedItems.push(item)}else{activeAfterCommandAffectedItems.push(item)}}function projectAfterCommandItemSnapshot(metadata,changedFields){if(!metadata||!metadata.id){return{}}const snapshot={id:metadata.id,type:metadata.type,status:metadata.status};if(!Array.isArray(changedFields)){return snapshot}const source=metadata;for(const field of changedFields){if(typeof field!=="string"){continue}const actualField=field.startsWith("unset:")?field.slice("unset:".length):field;if(actualField==="id"||actualField==="type"||actualField==="status"||AFTER_COMMAND_SNAPSHOT_OMITTED_FIELDS.has(actualField)){continue}if(Object.hasOwn(source,actualField)&&source[actualField]!==void 0){snapshot[actualField]=source[actualField]}}return snapshot}function consumeAfterCommandAffectedItems(){const state=runtimeState();const affectedItems=state?.affectedItems??activeAfterCommandAffectedItems;if(affectedItems.length===0){return void 0}const affected=affectedItems;if(state){state.affectedItems=[]}else{activeAfterCommandAffectedItems=[]}return affected}function clearActiveExtensionHooks(){const state=runtimeState();if(state){state.hooks=null;state.commands=null;state.parsers=null;state.preflight=null;state.services=null;state.renderers=null;state.registrations=null;state.commandContext=null;state.commandResult=void 0;state.affectedItems=[];return}activeExtensionHooks=null;activeExtensionCommands=null;activeExtensionParsers=null;activeExtensionPreflight=null;activeExtensionServices=null;activeExtensionRenderers=null;activeExtensionRegistrations=null;activeCommandContext=null;activeCommandResult=void 0;activeAfterCommandAffectedItems=[]}async function runActiveOnWriteHooks(context){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;if(!hooks){return[]}return runOnWriteHooks(hooks,context)}async function runActiveBeforeMutationHooks(context){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;if(!hooks)return;await runBeforeMutationHooks(hooks,context)}async function runActiveOnReadHooks(context){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;if(!hooks){return[]}return runOnReadHooks(hooks,context)}function hasActiveOnReadHooks(){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;return(hooks?.onRead?.length??0)>0}async function runActiveOnIndexHooks(context){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;if(!hooks){return[]}return runOnIndexHooks(hooks,context)}function runActiveCommandOverride(result){const state=runtimeState();const commands=state?state.commands:activeExtensionCommands;const commandContext=state?state.commandContext:activeCommandContext;if(!commands||!commandContext){return{overridden:false,result,warnings:[]}}return runCommandOverride(commands,{command:commandContext.command,args:[...commandContext.args],options:commandContext.options?{...commandContext.options}:{},global:commandContext.global?{...commandContext.global}:void 0,pm_root:commandContext.pm_root,source_workspace_root:commandContext.source_workspace_root,repo_root:commandContext.repo_root,pm_root_rel:commandContext.pm_root_rel,result})}async function runActiveCommandHandler(context){const state=runtimeState();const commands=state?state.commands:activeExtensionCommands;if(!commands){return{handled:false,result:null,warnings:[]}}return runCommandHandler(commands,{...context,...resolvePortableWorkspaceContext(context.pm_root)})}async function runActiveParserOverride(context){const state=runtimeState();const parsers=state?state.parsers:activeExtensionParsers;if(!parsers){return{overridden:false,context:{command:context.command,args:[...context.args],options:{...context.options},global:{...context.global},pm_root:context.pm_root},warnings:[]}}return runParserOverride(parsers,{...context,...resolvePortableWorkspaceContext(context.pm_root)})}async function runActivePreflightOverride(context){const state=runtimeState();const preflight=state?state.preflight:activeExtensionPreflight;if(!preflight){return{overridden:false,context:{command:context.command,args:[...context.args],options:{...context.options},global:{...context.global},pm_root:context.pm_root},decision:{...context.decision},warnings:[]}}return runPreflightOverride(preflight,{...context,...resolvePortableWorkspaceContext(context.pm_root)})}function runActiveRendererOverride(format,result){const state=runtimeState();const renderers=state?state.renderers:activeExtensionRenderers;const commandContext=state?state.commandContext:activeCommandContext;if(!renderers){return{overridden:false,rendered:null,warnings:[]}}return runRendererOverride(renderers,{format,command:commandContext?.command,args:commandContext?[...commandContext.args]:[],options:commandContext?.options?{...commandContext.options}:{},global:commandContext?.global?{...commandContext.global}:void 0,pm_root:commandContext?.pm_root,source_workspace_root:commandContext?.source_workspace_root,repo_root:commandContext?.repo_root,pm_root_rel:commandContext?.pm_root_rel,result})}function buildServiceContext(service,payload){const state=runtimeState();const commandContext=state?state.commandContext:activeCommandContext;return{service,command:commandContext?.command,args:commandContext?[...commandContext.args]:[],options:commandContext?.options?{...commandContext.options}:{},global:commandContext?.global?{...commandContext.global}:void 0,pm_root:commandContext?.pm_root,source_workspace_root:commandContext?.source_workspace_root,repo_root:commandContext?.repo_root,pm_root_rel:commandContext?.pm_root_rel,payload}}async function runActiveServiceOverride(service,payload){const state=runtimeState();const services=state?state.services:activeExtensionServices;if(!services){return{handled:false,result:payload,warnings:[]}}return runServiceOverride(services,buildServiceContext(service,payload))}function runActiveServiceOverrideSync(service,payload){const state=runtimeState();const services=state?state.services:activeExtensionServices;if(!services){return{handled:false,result:payload,warnings:[]}}return runServiceOverrideSync(services,buildServiceContext(service,payload))}export*from"./loader.js";export*from"./command-hook-context.js";import{createSerialQueue}from"../shared/serial-queue.js";import{EXTENSION_CAPABILITY_REGISTRATION_SURFACES,collectUsedExtensionCapabilities,reconcileExtensionCapabilityUsage}from"./capability-usage.js";export{EXTENSION_CAPABILITY_REGISTRATION_SURFACES,clearActiveExtensionHooks,collectUsedExtensionCapabilities,consumeAfterCommandAffectedItems,createSerialQueue,getActiveCommandContext,getActiveCommandResult,getActiveExtensionRegistrations,hasActiveOnReadHooks,projectAfterCommandItemSnapshot,reconcileExtensionCapabilityUsage,recordAfterCommandAffectedItem,resetActiveExtensionRuntimeState,resolvePortableWorkspaceContext,runActiveBeforeMutationHooks,runActiveCommandHandler,runActiveCommandOverride,runActiveOnIndexHooks,runActiveOnReadHooks,runActiveOnWriteHooks,runActiveParserOverride,runActivePreflightOverride,runActiveRendererOverride,runActiveServiceOverride,runActiveServiceOverrideSync,runWithIsolatedExtensionRuntime,setActiveCommandContext,setActiveCommandResult,setActiveExtensionCommands,setActiveExtensionHooks,setActiveExtensionParsers,setActiveExtensionPreflight,setActiveExtensionRegistrations,setActiveExtensionRenderers,setActiveExtensionServices};
|
|
1
|
+
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="40b169fc-3c5f-5b2a-8fed-a9388b07d9f7")}catch(e2){}})();import{existsSync}from"node:fs";import{AsyncLocalStorage}from"node:async_hooks";import path from"node:path";import{runCommandHandler,runBeforeMutationHooks,runCommandOverride,runOnIndexHooks,runParserOverride,runPreflightOverride,runOnReadHooks,runRendererOverride,runServiceOverride,runServiceOverrideSync,runOnWriteHooks}from"./loader.js";let activeExtensionHooks=null;let activeExtensionCommands=null;let activeExtensionParsers=null;let activeExtensionPreflight=null;let activeExtensionServices=null;let activeExtensionRenderers=null;let activeExtensionRegistrations=null;let activeCommandContext=null;let activeCommandResult=void 0;let activeAfterCommandAffectedItems=[];const isolatedExtensionRuntime=new AsyncLocalStorage;function runtimeState(){return isolatedExtensionRuntime.getStore()}function runWithIsolatedExtensionRuntime(run){return isolatedExtensionRuntime.run({hooks:null,commands:null,parsers:null,preflight:null,services:null,renderers:null,registrations:null,commandContext:null,commandResult:void 0,affectedItems:[]},run)}const AFTER_COMMAND_SNAPSHOT_OMITTED_FIELDS=new Set(["body","comments","dependencies","docs","events","files","learnings","notes","reminders","test_runs","tests"]);function findSourceRepositoryRoot(candidate){let cursor=path.resolve(candidate);while(true){if(existsSync(path.join(cursor,".git"))){return cursor}const parent=path.dirname(cursor);if(parent===cursor){return void 0}cursor=parent}}function resolvePortableWorkspaceContext(pmRoot){const sourceCandidate=process.env.PM_SOURCE_WORKSPACE_ROOT?.trim()||process.cwd();const sourceWorkspaceRoot=findSourceRepositoryRoot(sourceCandidate)??path.resolve(sourceCandidate);const repoRoot=findSourceRepositoryRoot(sourceWorkspaceRoot);if(!pmRoot){return{source_workspace_root:sourceWorkspaceRoot,...repoRoot?{repo_root:repoRoot}:{}}}const relativePmRoot=path.relative(sourceWorkspaceRoot,path.resolve(pmRoot));const contained=relativePmRoot.length>0&&!relativePmRoot.startsWith(`..${path.sep}`)&&relativePmRoot!==".."&&!path.isAbsolute(relativePmRoot);return{source_workspace_root:sourceWorkspaceRoot,...repoRoot?{repo_root:repoRoot}:{},...contained?{pm_root_rel:relativePmRoot.split(path.sep).join("/")}:{}}}function setActiveExtensionHooks(hooks){const state=runtimeState();if(state){state.hooks=hooks;return}activeExtensionHooks=hooks}function setActiveExtensionCommands(commands){const state=runtimeState();if(state){state.commands=commands;return}activeExtensionCommands=commands}function setActiveExtensionParsers(parsers){const state=runtimeState();if(state){state.parsers=parsers;return}activeExtensionParsers=parsers}function setActiveExtensionPreflight(preflight){const state=runtimeState();if(state){state.preflight=preflight;return}activeExtensionPreflight=preflight}function setActiveExtensionServices(services){const state=runtimeState();if(state){state.services=services;return}activeExtensionServices=services}function setActiveExtensionRenderers(renderers){const state=runtimeState();if(state){state.renderers=renderers;return}activeExtensionRenderers=renderers}function setActiveExtensionRegistrations(registrations){const state=runtimeState();if(state){state.registrations=registrations;return}activeExtensionRegistrations=registrations}function getActiveExtensionRegistrations(){const state=runtimeState();return state?state.registrations:activeExtensionRegistrations}function resetActiveExtensionRuntimeState(){const state=runtimeState();if(state){state.hooks=null;state.commands=null;state.parsers=null;state.preflight=null;state.services=null;state.renderers=null;state.registrations=null;state.commandContext=null;state.commandResult=null;state.affectedItems=[];return}activeExtensionHooks=null;activeExtensionCommands=null;activeExtensionParsers=null;activeExtensionPreflight=null;activeExtensionServices=null;activeExtensionRenderers=null;activeExtensionRegistrations=null;activeCommandContext=null;activeCommandResult=null}function setActiveCommandContext(context){const resolved=context?{...context,...resolvePortableWorkspaceContext(context.pm_root)}:null;const state=runtimeState();if(state){state.commandContext=resolved;return}activeCommandContext=resolved}function getActiveCommandContext(){const state=runtimeState();const context=state?state.commandContext:activeCommandContext;return context?{...context,args:[...context.args],options:context.options?{...context.options}:{},global:context.global?{...context.global}:void 0}:null}function isActiveCommandUnextended(command){const state=runtimeState()??{commandContext:activeCommandContext,hooks:activeExtensionHooks,commands:activeExtensionCommands,parsers:activeExtensionParsers,preflight:activeExtensionPreflight,services:activeExtensionServices,renderers:activeExtensionRenderers,registrations:activeExtensionRegistrations};if(state.commandContext?.command!==command)return false;const broadInterceptors=[state.hooks,state.preflight,state.services,state.renderers];if(broadInterceptors.some(registry=>Object.values(registry??{}).some(entries=>entries.length>0)))return false;const commandInterceptors=[state.commands,state.parsers];if(commandInterceptors.some(registry=>Object.values(registry??{}).some(entries=>entries.some(entry=>entry.command===command))))return false;return!Object.entries(state.registrations??{}).some(([key,entries])=>["migrations","search_providers","vector_store_adapters","assurance_providers"].includes(key)&&entries.length>0)}function setActiveCommandResult(result){const state=runtimeState();if(state){state.commandResult=result;return}activeCommandResult=result}function getActiveCommandResult(){const state=runtimeState();return state?state.commandResult:activeCommandResult}function recordAfterCommandAffectedItem(item){if(!item){return}const state=runtimeState();if(state){state.affectedItems.push(item)}else{activeAfterCommandAffectedItems.push(item)}}function projectAfterCommandItemSnapshot(metadata,changedFields){if(!metadata||!metadata.id){return{}}const snapshot={id:metadata.id,type:metadata.type,status:metadata.status};if(!Array.isArray(changedFields)){return snapshot}const source=metadata;for(const field of changedFields){if(typeof field!=="string"){continue}const actualField=field.startsWith("unset:")?field.slice("unset:".length):field;if(actualField==="id"||actualField==="type"||actualField==="status"||AFTER_COMMAND_SNAPSHOT_OMITTED_FIELDS.has(actualField)){continue}if(Object.hasOwn(source,actualField)&&source[actualField]!==void 0){snapshot[actualField]=source[actualField]}}return snapshot}function consumeAfterCommandAffectedItems(){const state=runtimeState();const affectedItems=state?.affectedItems??activeAfterCommandAffectedItems;if(affectedItems.length===0){return void 0}const affected=affectedItems;if(state){state.affectedItems=[]}else{activeAfterCommandAffectedItems=[]}return affected}function clearActiveExtensionHooks(){const state=runtimeState();if(state){state.hooks=null;state.commands=null;state.parsers=null;state.preflight=null;state.services=null;state.renderers=null;state.registrations=null;state.commandContext=null;state.commandResult=void 0;state.affectedItems=[];return}activeExtensionHooks=null;activeExtensionCommands=null;activeExtensionParsers=null;activeExtensionPreflight=null;activeExtensionServices=null;activeExtensionRenderers=null;activeExtensionRegistrations=null;activeCommandContext=null;activeCommandResult=void 0;activeAfterCommandAffectedItems=[]}async function runActiveOnWriteHooks(context){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;if(!hooks){return[]}return runOnWriteHooks(hooks,context)}async function runActiveBeforeMutationHooks(context){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;if(!hooks)return;await runBeforeMutationHooks(hooks,context)}async function runActiveOnReadHooks(context){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;if(!hooks){return[]}return runOnReadHooks(hooks,context)}function hasActiveOnReadHooks(){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;return(hooks?.onRead?.length??0)>0}async function runActiveOnIndexHooks(context){const state=runtimeState();const hooks=state?state.hooks:activeExtensionHooks;if(!hooks){return[]}return runOnIndexHooks(hooks,context)}function runActiveCommandOverride(result){const state=runtimeState();const commands=state?state.commands:activeExtensionCommands;const commandContext=state?state.commandContext:activeCommandContext;if(!commands||!commandContext){return{overridden:false,result,warnings:[]}}return runCommandOverride(commands,{command:commandContext.command,args:[...commandContext.args],options:commandContext.options?{...commandContext.options}:{},global:commandContext.global?{...commandContext.global}:void 0,pm_root:commandContext.pm_root,source_workspace_root:commandContext.source_workspace_root,repo_root:commandContext.repo_root,pm_root_rel:commandContext.pm_root_rel,result})}async function runActiveCommandHandler(context){const state=runtimeState();const commands=state?state.commands:activeExtensionCommands;if(!commands){return{handled:false,result:null,warnings:[]}}return runCommandHandler(commands,{...context,...resolvePortableWorkspaceContext(context.pm_root)})}async function runActiveParserOverride(context){const state=runtimeState();const parsers=state?state.parsers:activeExtensionParsers;if(!parsers){return{overridden:false,context:{command:context.command,args:[...context.args],options:{...context.options},global:{...context.global},pm_root:context.pm_root},warnings:[]}}return runParserOverride(parsers,{...context,...resolvePortableWorkspaceContext(context.pm_root)})}async function runActivePreflightOverride(context){const state=runtimeState();const preflight=state?state.preflight:activeExtensionPreflight;if(!preflight){return{overridden:false,context:{command:context.command,args:[...context.args],options:{...context.options},global:{...context.global},pm_root:context.pm_root},decision:{...context.decision},warnings:[]}}return runPreflightOverride(preflight,{...context,...resolvePortableWorkspaceContext(context.pm_root)})}function runActiveRendererOverride(format,result){const state=runtimeState();const renderers=state?state.renderers:activeExtensionRenderers;const commandContext=state?state.commandContext:activeCommandContext;if(!renderers){return{overridden:false,rendered:null,warnings:[]}}return runRendererOverride(renderers,{format,command:commandContext?.command,args:commandContext?[...commandContext.args]:[],options:commandContext?.options?{...commandContext.options}:{},global:commandContext?.global?{...commandContext.global}:void 0,pm_root:commandContext?.pm_root,source_workspace_root:commandContext?.source_workspace_root,repo_root:commandContext?.repo_root,pm_root_rel:commandContext?.pm_root_rel,result})}function buildServiceContext(service,payload){const state=runtimeState();const commandContext=state?state.commandContext:activeCommandContext;return{service,command:commandContext?.command,args:commandContext?[...commandContext.args]:[],options:commandContext?.options?{...commandContext.options}:{},global:commandContext?.global?{...commandContext.global}:void 0,pm_root:commandContext?.pm_root,source_workspace_root:commandContext?.source_workspace_root,repo_root:commandContext?.repo_root,pm_root_rel:commandContext?.pm_root_rel,payload}}async function runActiveServiceOverride(service,payload){const state=runtimeState();const services=state?state.services:activeExtensionServices;if(!services){return{handled:false,result:payload,warnings:[]}}return runServiceOverride(services,buildServiceContext(service,payload))}function runActiveServiceOverrideSync(service,payload){const state=runtimeState();const services=state?state.services:activeExtensionServices;if(!services){return{handled:false,result:payload,warnings:[]}}return runServiceOverrideSync(services,buildServiceContext(service,payload))}export*from"./loader.js";export*from"./command-hook-context.js";import{createSerialQueue}from"../shared/serial-queue.js";import{EXTENSION_CAPABILITY_REGISTRATION_SURFACES,collectUsedExtensionCapabilities,reconcileExtensionCapabilityUsage}from"./capability-usage.js";export{EXTENSION_CAPABILITY_REGISTRATION_SURFACES,clearActiveExtensionHooks,collectUsedExtensionCapabilities,consumeAfterCommandAffectedItems,createSerialQueue,getActiveCommandContext,getActiveCommandResult,getActiveExtensionRegistrations,hasActiveOnReadHooks,isActiveCommandUnextended,projectAfterCommandItemSnapshot,reconcileExtensionCapabilityUsage,recordAfterCommandAffectedItem,resetActiveExtensionRuntimeState,resolvePortableWorkspaceContext,runActiveBeforeMutationHooks,runActiveCommandHandler,runActiveCommandOverride,runActiveOnIndexHooks,runActiveOnReadHooks,runActiveOnWriteHooks,runActiveParserOverride,runActivePreflightOverride,runActiveRendererOverride,runActiveServiceOverride,runActiveServiceOverrideSync,runWithIsolatedExtensionRuntime,setActiveCommandContext,setActiveCommandResult,setActiveExtensionCommands,setActiveExtensionHooks,setActiveExtensionParsers,setActiveExtensionPreflight,setActiveExtensionRegistrations,setActiveExtensionRenderers,setActiveExtensionServices};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/core/lock/lock.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
-
`,"utf8")}finally{await handle.close()}await emitLockWriteHook(lockPath,"lock:create")}async function unlinkLockWithHook(lockPath,op){try{await fs.unlink(lockPath);await emitLockWriteHook(lockPath,op);return true}catch{return false}}async function releaseOwnedLock(lockPath,id,owner,token){const startedAtMs=Date.now();let backoffMs=LOCK_WAIT_INITIAL_DELAY_MS;for(;;){const releaseCleanupGate=await acquireStaleCleanupGate(lockPath,id);if(releaseCleanupGate!==null){try{const current2=await readLockInfo(lockPath,false);if(isOwnedLock(current2.info,id,owner,token)){await unlinkLockWithHook(lockPath,"lock:release")}}finally{await releaseCleanupGate()}return}const current=await readLockInfo(lockPath,false);if(!isOwnedLock(current.info,id,owner,token)){return}const elapsedMs=Date.now()-startedAtMs;if(elapsedMs>=LOCK_RELEASE_GATE_WAIT_MS){return}await sleepWithJitter(Math.min(backoffMs,LOCK_RELEASE_GATE_WAIT_MS-elapsedMs));backoffMs=Math.min(backoffMs*2,LOCK_WAIT_MAX_DELAY_MS)}}function isOwnedLock(info,id,owner,token){return info?.id===id&&info.pid===process.pid&&info.owner===owner&&info.token===token}function isStaleLock(info,ttlSeconds){const createdAtMs=info?.created_at?Date.parse(info.created_at):Number.NaN;const ageMs=Number.isFinite(createdAtMs)?Date.now()-createdAtMs:Number.POSITIVE_INFINITY;return ageMs>ttlSeconds*1e3}function lockOwnerSuffix(info){return info?.owner?` (owner ${info.owner})`:""}const LOCK_WAIT_INITIAL_DELAY_MS=25;const LOCK_WAIT_MAX_DELAY_MS=200;const LOCK_CONFLICT_RETRY_HINT_MS=250;const MAX_STALE_LOCK_REMOVALS=3;const STALE_CLEANUP_GATE_SUFFIX=".stale-cleanup";const STALE_CLEANUP_GATE_OWNER_FILE="owner.json";const STALE_CLEANUP_GATE_STALE_MS=1e4;const LOCK_RELEASE_GATE_WAIT_MS=STALE_CLEANUP_GATE_STALE_MS+LOCK_WAIT_MAX_DELAY_MS;const STALE_CLEANUP_GATE_MAX_UNVERIFIED_MS=60*6e4;function parseNonNegativeIntegerWaitMs(value){if(typeof value==="string"){const trimmed=value.trim();if(!/^\d+$/.test(trimmed)){return void 0}const parsed=Number(trimmed);return Number.isSafeInteger(parsed)?parsed:void 0}if(typeof value==="number"&&Number.isFinite(value)&&value>=0){return Math.trunc(value)}return void 0}function resolveLockWaitMs(waitMs){const envRaw=process.env.PM_LOCK_WAIT_MS;const envParsed=parseNonNegativeIntegerWaitMs(envRaw);if(envParsed!==void 0){return envParsed}const callerParsed=parseNonNegativeIntegerWaitMs(waitMs);if(callerParsed!==void 0){return callerParsed}return 0}function sleepWithJitter(baseDelayMs){const jitteredMs=Math.max(1,Math.round(baseDelayMs*(.5+Math.random())));return new Promise(resolve=>setTimeout(resolve,jitteredMs))}function buildLockConflictError(id,info,waitedMs){const waitedSuffix=waitedMs>0?` after waiting ${waitedMs}ms`:"";return new PmCliError(`Item ${id} is locked${lockOwnerSuffix(info)}${waitedSuffix}`,EXIT_CODE.CONFLICT,{code:"lock_conflict",recovery:{retry_after_ms:LOCK_CONFLICT_RETRY_HINT_MS}})}function resolveLockOverrideRelease(result){if(typeof result==="function"){return result}if(typeof result==="object"&&result!==null&&"release"in result){const release=result.release;return typeof release==="function"?release:null}return null}function throwIfStaleLockNeedsForce(id,lockInfo,force,forceRequired){if(!force&&forceRequired){const warningSuffix=lockInfo.warnings.length>0?` (${lockInfo.warnings.join(",")})`:"";throw new PmCliError(`Item ${id} lock is stale${warningSuffix}; rerun with --force when supported for this command`,EXIT_CODE.CONFLICT)}}function parseStaleCleanupGateOwner(raw){let parsed;try{parsed=JSON.parse(raw)}catch{return null}if(typeof parsed!=="object"||parsed===null||Array.isArray(parsed)){return null}const candidate=parsed;const pid=candidate.pid;const token=candidate.token;const processStartIdentity=candidate.process_start_identity;if(typeof pid!=="number"||!Number.isInteger(pid)||pid<=0||typeof token!=="string"||token.length===0||processStartIdentity!==void 0&&(typeof processStartIdentity!=="string"||!/^\d+$/u.test(processStartIdentity))){return null}return{pid,token,...typeof processStartIdentity==="string"?{process_start_identity:processStartIdentity}:{}}}async function readStaleCleanupGateOwner(gatePath){try{return parseStaleCleanupGateOwner(await fs.readFile(path.join(gatePath,STALE_CLEANUP_GATE_OWNER_FILE),"utf8"))}catch{return null}}function isProcessAlive(pid){if(!Number.isSafeInteger(pid)||pid<=0)return false;try{process.kill(pid,0);return true}catch(error){if(isErrno(error,"ESRCH")){return false}return true}}function parseLinuxProcessStartIdentity(raw){const closeParenIndex=raw.lastIndexOf(")");if(closeParenIndex<0)return null;const startTime=raw.slice(closeParenIndex+2).trim().split(/\s+/u)[19];return startTime!==void 0&&/^\d+$/u.test(startTime)?startTime:null}async function readProcessStartIdentity(pid){try{return parseLinuxProcessStartIdentity(await fs.readFile(`/proc/${pid}/stat`,"utf8"))}catch{return null}}async function captureProcessIdentity(pid=process.pid){const processStartIdentity=await readProcessStartIdentity(pid);return{pid,...processStartIdentity===null?{}:{process_start_identity:processStartIdentity}}}async function isProcessIdentityAlive(identity,unverifiedAgeMs,maxUnverifiedAgeMs){if(!isProcessAlive(identity.pid))return false;const currentStartIdentity=await readProcessStartIdentity(identity.pid);if(identity.process_start_identity!==void 0&¤tStartIdentity!==null){return currentStartIdentity===identity.process_start_identity}return unverifiedAgeMs<=maxUnverifiedAgeMs}async function removeStaleCleanupGateDirectory(gatePath){try{await fs.rm(gatePath,{recursive:true,force:true});return true}catch{return false}}async function releaseStaleCleanupGate(gatePath,token){const owner=await readStaleCleanupGateOwner(gatePath);if(owner===null||owner.token!==token){return}await removeStaleCleanupGateDirectory(gatePath)}async function tryCreateStaleCleanupGate(gatePath){try{await fs.mkdir(gatePath)}catch(error){if(isErrno(error,"EEXIST")){return null}return null}const owner={...await captureProcessIdentity(),token:randomUUID()};try{await fs.writeFile(path.join(gatePath,STALE_CLEANUP_GATE_OWNER_FILE),`${JSON.stringify(owner)}
|
|
1
|
+
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="f0484213-41f9-583e-bd0f-f85e507682b2")}catch(e2){}})();import{isFileMissingError}from"../fs/fs-utils.js";import{constants as fsConstants}from"node:fs";import fs from"node:fs/promises";import path from"node:path";import{randomUUID}from"node:crypto";import{runActiveOnReadHooks,runActiveOnWriteHooks,runActiveServiceOverride}from"../extensions/index.js";import{EXIT_CODE}from"../shared/constants.js";import{PmCliError}from"../shared/errors.js";import{toErrorMessage}from"../shared/primitives.js";import{getLockPath}from"../store/paths.js";import{nowIso}from"../shared/time.js";function parseLockInfo(raw){let parsed;try{parsed=JSON.parse(raw)}catch{return{info:null,warnings:["lock_info_invalid_json"]}}if(typeof parsed!=="object"||parsed===null||Array.isArray(parsed)){return{info:null,warnings:["lock_info_invalid_shape"]}}const candidate=parsed;const id=candidate.id;const pid=candidate.pid;const owner=candidate.owner;const token=candidate.token;const createdAt=candidate.created_at;const ttlSeconds=candidate.ttl_seconds;if(typeof id!=="string"||typeof pid!=="number"||!Number.isFinite(pid)||typeof owner!=="string"||token!==void 0&&(typeof token!=="string"||token.trim().length===0)||typeof createdAt!=="string"||typeof ttlSeconds!=="number"||!Number.isFinite(ttlSeconds)){return{info:null,warnings:["lock_info_invalid_shape"]}}return{info:{id,pid,owner,...typeof token==="string"?{token}:{},created_at:createdAt,ttl_seconds:ttlSeconds},warnings:[]}}async function readLockInfo(lockPath,emitReadHook=true){try{const raw=await fs.readFile(lockPath,"utf8");if(emitReadHook){await runActiveOnReadHooks({path:lockPath,scope:"project"})}return parseLockInfo(raw)}catch(error){if(isFileMissingError(error)){return{info:null,warnings:[]}}return{info:null,warnings:["lock_info_read_failed"]}}}function isErrno(error,code){return typeof error==="object"&&error!==null&&"code"in error&&error.code===code}async function isLockCreateContention(error,lockPath,platform=process.platform){if(isErrno(error,"EEXIST"))return true;if(!isErrno(error,"EPERM")&&!isErrno(error,"EACCES")&&!isErrno(error,"EBUSY")){return false}try{await fs.lstat(lockPath);return true}catch(probeError){if(platform!=="win32"||!isFileMissingError(probeError)&&!isErrno(probeError,"EPERM")&&!isErrno(probeError,"EACCES")&&!isErrno(probeError,"EBUSY")){return false}}try{await fs.access(path.dirname(lockPath),fsConstants.W_OK);return true}catch{return false}}async function emitLockWriteHook(lockPath,op){await runActiveOnWriteHooks({path:lockPath,scope:"project",op})}function buildLockPayload(id,owner,ttlSeconds,token=randomUUID()){return{id,pid:process.pid,owner,token,created_at:nowIso(),ttl_seconds:ttlSeconds}}async function createLockFile(lockPath,id,owner,ttlSeconds,token){await fs.mkdir(path.dirname(lockPath),{recursive:true});const releaseCleanupGate=await acquireStaleCleanupGate(lockPath,id);if(releaseCleanupGate===null){throw Object.assign(new Error("Lock initialization is contended"),{code:"EEXIST"})}try{const handle=await fs.open(lockPath,"wx");try{try{await handle.writeFile(`${JSON.stringify(buildLockPayload(id,owner,ttlSeconds,token),null,2)}
|
|
2
|
+
`,"utf8")}finally{await handle.close()}}catch(error){await unlinkLockWithHook(lockPath,"lock:release");throw error}}finally{await releaseCleanupGate()}await emitLockWriteHook(lockPath,"lock:create")}async function unlinkLockWithHook(lockPath,op){try{await fs.unlink(lockPath);await emitLockWriteHook(lockPath,op);return true}catch{return false}}async function releaseOwnedLock(lockPath,id,owner,token){const startedAtMs=Date.now();let backoffMs=LOCK_WAIT_INITIAL_DELAY_MS;for(;;){const releaseCleanupGate=await acquireStaleCleanupGate(lockPath,id);if(releaseCleanupGate!==null){try{const current2=await readLockInfo(lockPath,false);if(isOwnedLock(current2.info,id,owner,token)){await unlinkLockWithHook(lockPath,"lock:release")}}finally{await releaseCleanupGate()}return}const current=await readLockInfo(lockPath,false);if(!isOwnedLock(current.info,id,owner,token)){return}const elapsedMs=Date.now()-startedAtMs;if(elapsedMs>=LOCK_RELEASE_GATE_WAIT_MS){return}await sleepWithJitter(Math.min(backoffMs,LOCK_RELEASE_GATE_WAIT_MS-elapsedMs));backoffMs=Math.min(backoffMs*2,LOCK_WAIT_MAX_DELAY_MS)}}function isOwnedLock(info,id,owner,token){return info?.id===id&&info.pid===process.pid&&info.owner===owner&&info.token===token}function isStaleLock(info,ttlSeconds){const createdAtMs=info?.created_at?Date.parse(info.created_at):Number.NaN;const ageMs=Number.isFinite(createdAtMs)?Date.now()-createdAtMs:Number.POSITIVE_INFINITY;return ageMs>ttlSeconds*1e3}function lockOwnerSuffix(info){return info?.owner?` (owner ${info.owner})`:""}const LOCK_WAIT_INITIAL_DELAY_MS=25;const LOCK_WAIT_MAX_DELAY_MS=200;const LOCK_CONFLICT_RETRY_HINT_MS=250;const MAX_STALE_LOCK_REMOVALS=3;const STALE_CLEANUP_GATE_SUFFIX=".stale-cleanup";const STALE_CLEANUP_GATE_OWNER_FILE="owner.json";const STALE_CLEANUP_GATE_STALE_MS=1e4;const LOCK_RELEASE_GATE_WAIT_MS=STALE_CLEANUP_GATE_STALE_MS+LOCK_WAIT_MAX_DELAY_MS;const STALE_CLEANUP_GATE_MAX_UNVERIFIED_MS=60*6e4;function parseNonNegativeIntegerWaitMs(value){if(typeof value==="string"){const trimmed=value.trim();if(!/^\d+$/.test(trimmed)){return void 0}const parsed=Number(trimmed);return Number.isSafeInteger(parsed)?parsed:void 0}if(typeof value==="number"&&Number.isFinite(value)&&value>=0){return Math.trunc(value)}return void 0}function resolveLockWaitMs(waitMs){const envRaw=process.env.PM_LOCK_WAIT_MS;const envParsed=parseNonNegativeIntegerWaitMs(envRaw);if(envParsed!==void 0){return envParsed}const callerParsed=parseNonNegativeIntegerWaitMs(waitMs);if(callerParsed!==void 0){return callerParsed}return 0}function sleepWithJitter(baseDelayMs){const jitteredMs=Math.max(1,Math.round(baseDelayMs*(.5+Math.random())));return new Promise(resolve=>setTimeout(resolve,jitteredMs))}function buildLockConflictError(id,info,waitedMs){const waitedSuffix=waitedMs>0?` after waiting ${waitedMs}ms`:"";return new PmCliError(`Item ${id} is locked${lockOwnerSuffix(info)}${waitedSuffix}`,EXIT_CODE.CONFLICT,{code:"lock_conflict",recovery:{retry_after_ms:LOCK_CONFLICT_RETRY_HINT_MS}})}function resolveLockOverrideRelease(result){if(typeof result==="function"){return result}if(typeof result==="object"&&result!==null&&"release"in result){const release=result.release;return typeof release==="function"?release:null}return null}function throwIfStaleLockNeedsForce(id,lockInfo,force,forceRequired){if(!force&&forceRequired){const warningSuffix=lockInfo.warnings.length>0?` (${lockInfo.warnings.join(",")})`:"";throw new PmCliError(`Item ${id} lock is stale${warningSuffix}; rerun with --force when supported for this command`,EXIT_CODE.CONFLICT)}}function parseStaleCleanupGateOwner(raw){let parsed;try{parsed=JSON.parse(raw)}catch{return null}if(typeof parsed!=="object"||parsed===null||Array.isArray(parsed)){return null}const candidate=parsed;const pid=candidate.pid;const token=candidate.token;const processStartIdentity=candidate.process_start_identity;if(typeof pid!=="number"||!Number.isInteger(pid)||pid<=0||typeof token!=="string"||token.length===0||processStartIdentity!==void 0&&(typeof processStartIdentity!=="string"||!/^\d+$/u.test(processStartIdentity))){return null}return{pid,token,...typeof processStartIdentity==="string"?{process_start_identity:processStartIdentity}:{}}}async function readStaleCleanupGateOwner(gatePath){try{return parseStaleCleanupGateOwner(await fs.readFile(path.join(gatePath,STALE_CLEANUP_GATE_OWNER_FILE),"utf8"))}catch{return null}}function isProcessAlive(pid){if(!Number.isSafeInteger(pid)||pid<=0)return false;try{process.kill(pid,0);return true}catch(error){if(isErrno(error,"ESRCH")){return false}return true}}function parseLinuxProcessStartIdentity(raw){const closeParenIndex=raw.lastIndexOf(")");if(closeParenIndex<0)return null;const startTime=raw.slice(closeParenIndex+2).trim().split(/\s+/u)[19];return startTime!==void 0&&/^\d+$/u.test(startTime)?startTime:null}async function readProcessStartIdentity(pid){try{return parseLinuxProcessStartIdentity(await fs.readFile(`/proc/${pid}/stat`,"utf8"))}catch{return null}}async function captureProcessIdentity(pid=process.pid){const processStartIdentity=await readProcessStartIdentity(pid);return{pid,...processStartIdentity===null?{}:{process_start_identity:processStartIdentity}}}async function isProcessIdentityAlive(identity,unverifiedAgeMs,maxUnverifiedAgeMs){if(!isProcessAlive(identity.pid))return false;const currentStartIdentity=await readProcessStartIdentity(identity.pid);if(identity.process_start_identity!==void 0&¤tStartIdentity!==null){return currentStartIdentity===identity.process_start_identity}return unverifiedAgeMs<=maxUnverifiedAgeMs}async function removeStaleCleanupGateDirectory(gatePath){try{await fs.rm(gatePath,{recursive:true,force:true});return true}catch{return false}}async function releaseStaleCleanupGate(gatePath,token){const owner=await readStaleCleanupGateOwner(gatePath);if(owner===null||owner.token!==token){return}await removeStaleCleanupGateDirectory(gatePath)}async function tryCreateStaleCleanupGate(gatePath){try{await fs.mkdir(gatePath)}catch(error){if(isErrno(error,"EEXIST")){return null}return null}const owner={...await captureProcessIdentity(),token:randomUUID()};try{await fs.writeFile(path.join(gatePath,STALE_CLEANUP_GATE_OWNER_FILE),`${JSON.stringify(owner)}
|
|
3
3
|
`,"utf8")}catch{await removeStaleCleanupGateDirectory(gatePath);return null}return owner}async function removeExpiredStaleCleanupGate(gatePath){let gateAgeMs;try{const stats=await fs.stat(gatePath);gateAgeMs=Date.now()-stats.mtimeMs;if(gateAgeMs<=STALE_CLEANUP_GATE_STALE_MS){return false}}catch(error){return isFileMissingError(error)}const owner=await readStaleCleanupGateOwner(gatePath);if(owner!==null&&await isProcessIdentityAlive(owner,gateAgeMs,STALE_CLEANUP_GATE_MAX_UNVERIFIED_MS)){return false}return removeStaleCleanupGateDirectory(gatePath)}async function acquireStaleCleanupGate(lockPath,_id){const gatePath=`${lockPath}${STALE_CLEANUP_GATE_SUFFIX}`;const owner=await tryCreateStaleCleanupGate(gatePath);if(owner!==null){return async()=>releaseStaleCleanupGate(gatePath,owner.token)}if(!await removeExpiredStaleCleanupGate(gatePath)){return null}const recoveredOwner=await tryCreateStaleCleanupGate(gatePath);if(recoveredOwner===null){return null}return async()=>releaseStaleCleanupGate(gatePath,recoveredOwner.token)}async function removeConfirmedStaleLock(params){const releaseCleanupGate=await acquireStaleCleanupGate(params.lockPath,params.id);if(releaseCleanupGate===null){return{lockInfo:params.fallbackLockInfo,shouldRetryCreate:false,staleRemovalCounted:false}}try{const currentLockInfo=await readLockInfo(params.lockPath);if(currentLockInfo.info===null&¤tLockInfo.warnings.length===0){return{lockInfo:currentLockInfo,shouldRetryCreate:true,staleRemovalCounted:false}}if(!isStaleLock(currentLockInfo.info,params.ttlSeconds)){return{lockInfo:currentLockInfo,shouldRetryCreate:false,staleRemovalCounted:false}}throwIfStaleLockNeedsForce(params.id,currentLockInfo,params.force,params.forceRequiredForStaleLock);if(params.staleRemovals>=MAX_STALE_LOCK_REMOVALS){throw buildLockConflictError(params.id,currentLockInfo.info,Date.now()-params.startedAtMs)}return{lockInfo:currentLockInfo,shouldRetryCreate:await unlinkLockWithHook(params.lockPath,"lock:stale_remove"),staleRemovalCounted:true}}finally{await releaseCleanupGate()}}const _testOnly={parseLockInfo,readLockInfo,isErrno,isLockCreateContention,buildLockPayload,isStaleLock,lockOwnerSuffix,resolveLockWaitMs,parseLinuxProcessStartIdentity,readProcessStartIdentity,acquireStaleCleanupGate,removeConfirmedStaleLock};async function acquireLock(pmRoot,id,ttlSeconds,owner,force=false,forceRequiredForStaleLock=true,waitMs){const lockOverride=await runActiveServiceOverride("lock_acquire",{pm_root:pmRoot,id,ttl_seconds:ttlSeconds,owner,force,force_required_for_stale_lock:forceRequiredForStaleLock});if(lockOverride.handled){const release=resolveLockOverrideRelease(lockOverride.result);if(release){return async()=>{await Promise.resolve(release());await runActiveServiceOverride("lock_release",{pm_root:pmRoot,id,owner})}}}const lockPath=getLockPath(pmRoot,id);const waitBudgetMs=resolveLockWaitMs(waitMs);const startedAtMs=Date.now();let staleRemovals=0;let backoffMs=LOCK_WAIT_INITIAL_DELAY_MS;const token=randomUUID();for(;;){try{await createLockFile(lockPath,id,owner,ttlSeconds,token);return async()=>{await releaseOwnedLock(lockPath,id,owner,token);await runActiveServiceOverride("lock_release",{pm_root:pmRoot,id,owner})}}catch(error){if(!await isLockCreateContention(error,lockPath)){throw new PmCliError(`Failed to acquire lock for ${id}: ${toErrorMessage(error)}`,EXIT_CODE.GENERIC_FAILURE)}let lockInfo=await readLockInfo(lockPath);if(isStaleLock(lockInfo.info,ttlSeconds)){const staleRemoval=await removeConfirmedStaleLock({lockPath,id,ttlSeconds,force,forceRequiredForStaleLock,staleRemovals,waitBudgetMs,startedAtMs,fallbackLockInfo:lockInfo});lockInfo=staleRemoval.lockInfo;if(staleRemoval.staleRemovalCounted){staleRemovals+=1}if(staleRemoval.shouldRetryCreate){continue}}const elapsedMs=Date.now()-startedAtMs;if(waitBudgetMs===0||elapsedMs>=waitBudgetMs){throw buildLockConflictError(id,lockInfo.info,waitBudgetMs===0?0:elapsedMs)}await sleepWithJitter(Math.min(backoffMs,waitBudgetMs-elapsedMs));backoffMs=Math.min(backoffMs*2,LOCK_WAIT_MAX_DELAY_MS)}}}export{_testOnly,acquireLock,captureProcessIdentity,isProcessIdentityAlive,readProcessStartIdentity};
|
|
4
4
|
//# sourceMappingURL=lock.js.map
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/** Supported explicit classifications for intentional telemetry delivery. */
|
|
2
2
|
export declare const PM_TELEMETRY_SOURCE_CONTEXT_VALUES: readonly ["user", "automation", "test", "dogfood"];
|
|
3
|
+
/** Fixed core reads eligible only after runtime ownership has been established. */
|
|
4
|
+
export declare const TELEMETRY_SAMPLEABLE_READS: ReadonlySet<string>;
|
|
3
5
|
/** Resolve explicit read sampling only for core-only invocations with no write-capable extensions. */
|
|
4
6
|
export declare function resolveTelemetryReadSampleRate(command: string, noExtensions: boolean, env?: Readonly<Record<string, string | undefined>>): number;
|
|
5
7
|
/** Explain process opt-outs without reading settings or creating installation identity. */
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
1
|
+
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c4fba032-7cda-53a2-b518-fa13a60a76d5")}catch(e2){}})();const TRUE_VALUES=new Set(["1","true","yes","on"]);const PM_TELEMETRY_SOURCE_CONTEXT_VALUES=["user","automation","test","dogfood"];const SOURCE_CONTEXTS=new Set(PM_TELEMETRY_SOURCE_CONTEXT_VALUES);const TELEMETRY_SAMPLEABLE_READS=new Set(["stats","ops stats","list","get","next","context","activity","aggregate"]);function resolveTelemetryReadSampleRate(command,noExtensions,env=process.env){const raw=env.PM_TELEMETRY_READ_SAMPLE_RATE?.trim();if(!raw||!noExtensions||!TELEMETRY_SAMPLEABLE_READS.has(command))return 1;const rate=Number(raw);return Number.isFinite(rate)&&rate>0&&rate<=1?rate:1}function telemetryEnvironmentFlag(key,env){return TRUE_VALUES.has((env[key]??"").trim().toLowerCase())}function resolveTelemetryEnvironmentPolicy(env=process.env){const doNotTrack=telemetryEnvironmentFlag("DO_NOT_TRACK",env);const override=(env.PM_TELEMETRY_SOURCE_CONTEXT??"").trim().toLowerCase();const inferredTest=typeof env.VITEST==="string"||typeof env.VITEST_WORKER_ID==="string"||(env.NODE_ENV??"").trim().toLowerCase()==="test";const testSuppressed=inferredTest&&!SOURCE_CONTEXTS.has(override)&&!telemetryEnvironmentFlag("PM_TELEMETRY_SEND_TEST_EVENTS",env);return{telemetry_disabled:doNotTrack||testSuppressed||telemetryEnvironmentFlag("PM_TELEMETRY_DISABLED",env)||telemetryEnvironmentFlag("PM_NO_TELEMETRY",env),do_not_track:doNotTrack,test_suppressed:testSuppressed}}export{PM_TELEMETRY_SOURCE_CONTEXT_VALUES,TELEMETRY_SAMPLEABLE_READS,resolveTelemetryEnvironmentPolicy,resolveTelemetryReadSampleRate};
|
|
2
2
|
//# sourceMappingURL=policy.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retain the first ten reads of each command per UTC minute, then sample the
|
|
3
|
+
* nth read at (10/n)^2. Expected retained successes stay below twenty per
|
|
4
|
+
* command per minute; this is a statistical bound, not a hard delivery cap.
|
|
5
|
+
* Explicit rates bypass automatic state. Corrupt or inaccessible state retains
|
|
6
|
+
* the invocation. Failures must override the returned probability at finish.
|
|
7
|
+
*/
|
|
8
|
+
export declare function resolveAutomaticReadSampleRate(globalPmRoot: string, command: string, coreReadOwned: boolean, env?: Readonly<Record<string, string | undefined>>, now?: number): Promise<number>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="9d949852-abfe-5fbd-88c5-5da0cfbaf7de")}catch(e2){}})();import path from"node:path";import{readFileIfExists,writeFileAtomic}from"../fs/fs-utils.js";import{resolveTelemetryReadSampleRate,TELEMETRY_SAMPLEABLE_READS}from"./policy.js";async function resolveAutomaticReadSampleRate(globalPmRoot,command,coreReadOwned,env=process.env,now=Date.now()){if(!coreReadOwned||!TELEMETRY_SAMPLEABLE_READS.has(command))return 1;if(env.PM_TELEMETRY_READ_SAMPLE_RATE!==void 0){return resolveTelemetryReadSampleRate(command,true,env)}try{const statePath=path.join(globalPmRoot,"runtime","telemetry","read-sampling.json");const minute=Math.floor(now/6e4);const counts=parseReadCounts(await readFileIfExists(statePath),minute);const ordinal=Math.min(Number.MAX_SAFE_INTEGER,(counts[command]??0)+1);counts[command]=ordinal;await writeFileAtomic(statePath,`${JSON.stringify({minute,counts})}
|
|
2
|
+
`);return Math.min(1,(10/ordinal)**2)}catch{return 1}}function parseReadCounts(raw,minute){const counts={};let previous;try{previous=JSON.parse(raw??"null")}catch{return counts}if(typeof previous!=="object"||previous===null||!("minute"in previous)||previous.minute!==minute||!("counts"in previous)||typeof previous.counts!=="object"||previous.counts===null)return counts;for(const[key,value]of Object.entries(previous.counts)){if(TELEMETRY_SAMPLEABLE_READS.has(key)&&typeof value==="number"&&Number.isSafeInteger(value)&&value>=0)counts[key]=value}return counts}export{resolveAutomaticReadSampleRate};
|
|
3
|
+
//# sourceMappingURL=read-sampling.js.map
|