@github/copilot-language-server 1.555.5 → 1.555.6
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/dist/main.js +2 -2
- package/package.json +8 -8
package/dist/main.js
CHANGED
|
@@ -1913,7 +1913,7 @@ ${r}+- `:"";return e+this.description+o}}},$0=class{constructor(e,r,n,o){this.la
|
|
|
1913
1913
|
(using_declaration)
|
|
1914
1914
|
(alias_declaration)
|
|
1915
1915
|
(static_assert_declaration)
|
|
1916
|
-
] @statement`}};var xB=class{constructor(e,r,n){this.languageId=e;this.prefix=r;this.completion=n}static{a(this,"BlockTrimmer")}static isSupported(e){return $0.isSupported(e)}static isTrimmedByDefault(e){return $0.isTrimmedByDefault(e)}async withParsedStatementTree(e){var n=[];try{let r=DNt(n,$0.create(this.languageId,this.prefix+this.completion,this.prefix.length,this.prefix.length+this.completion.length));await r.build();return await e(r)}catch(o){var s=o,c=!0}finally{MNt(n,s,c)}}trimmedCompletion(e){return e===void 0?this.completion:this.completion.substring(0,e)}getStatementAtCursor(e){return e.statementAt(Math.max(this.prefix.length-1,0))??e.statements[0]}getContainingBlockOffset(e){let r;if(e&&this.isCompoundStatement(e))r=e;else if(e){let n=e.parent;for(;n&&!this.isCompoundStatement(n);)n=n.parent;r=n}if(r){let n=this.asCompletionOffset(r.node.endIndex);if(n&&this.completion.substring(n).trim()!=="")return n}}hasNonStatementContentAfter(e){if(!e||!e.nextSibling)return!1;let r=this.asCompletionOffset(e.node.endIndex),n=this.asCompletionOffset(e.nextSibling.node.startIndex);return this.completion.substring(Math.max(0,r??0),Math.max(0,n??0)).trim()!==""}asCompletionOffset(e){return e===void 0?void 0:e-this.prefix.length}isCompoundStatement(e){return e.isCompoundStatementType||e.children.length>0}};var XWe=class extends xB{constructor(r,n,o,s=3,c=7){super(r,n,o);this.lineLimit=s;this.lookAhead=c;let l=[...this.completion.matchAll(/\n/g)],u=this.lineLimit+this.lookAhead;l.length>=this.lineLimit&&this.lineLimit>0&&(this.limitOffset=l[this.lineLimit-1].index),l.length>=u&&u>0&&(this.lookAheadOffset=l[u-1].index)}static{a(this,"TerseBlockTrimmer")}async getCompletionTrimOffset(){return await this.withParsedStatementTree(r=>{let n=r.statementAt(this.stmtStartPos()),o=this.getContainingBlockOffset(n);return o=this.trimAtFirstBlankLine(o),n&&(o=this.trimAtStatementChange(n,o)),this.limitOffset&&this.lookAheadOffset&&(o===void 0||o>this.lookAheadOffset)?this.limitOffset:o})}stmtStartPos(){let r=this.completion.match(/\S/);return r&&r.index!==void 0?this.prefix.length+r.index:Math.max(this.prefix.length-1,0)}trimAtFirstBlankLine(r){let n=[...this.trimmedCompletion(r).matchAll(/\r?\n\s*\r?\n/g)];for(;n.length>0&&(r===void 0||r>n[0].index);){let o=n.shift();if(this.completion.substring(0,o.index).trim()!=="")return o.index}return r}trimAtStatementChange(r,n){let o=this.prefix.length,s=this.prefix.length+(n??this.completion.length);if(r.node.endIndex>o&&this.isCompoundStatement(r))return r.nextSibling&&r.node.endIndex<s?this.asCompletionOffset(r.node.endIndex):n;let c=r,l=r.nextSibling;for(;l&&l.node.endIndex<=s&&!this.hasNonStatementContentAfter(c)&&!this.isCompoundStatement(l);)c=l,l=l.nextSibling;return l&&c.node.endIndex>o&&c.node.endIndex<s?this.asCompletionOffset(c.node.endIndex):n}};async function DEn(t,e){var l=[];try{let r=t.getText();let n=t.offsetAt(e);let o=DNt(l,$0.create(t.detectedLanguageId,r,0,r.length));await o.build();let s=o.statementAt(n);if(!s)return"non-block";if(!s.isCompoundStatementType&&s.children.length===0)return s.parent&&!s.nextSibling&&s.node.endPosition.row<=e.line?"block-end":s.parent?"mid-block":"non-block";if(s.children.length===0)return"empty-block";let c=s.children[s.children.length-1];if(n<c.node.startIndex)return"mid-block";return"block-end"}catch(u){var d=u,f=!0}finally{MNt(l,d,f)}}a(DEn,"getBlockPositionType");p();function ZVo(t){return t.HTTPS_PROXY||t.https_proxy||t.HTTP_PROXY||t.http_proxy}a(ZVo,"getProxyFromEnvironment");function XVo(t){return t.NODE_TLS_REJECT_UNAUTHORIZED!=="0"}a(XVo,"getRejectUnauthorizedFromEnvironment");var MEn=b.Object({proxy:b.Optional(b.String()),proxyStrictSSL:b.Optional(b.Boolean()),proxyAuthorization:b.Optional(b.String()),proxyKerberosServicePrincipal:b.Optional(b.String()),noProxy:b.Optional(b.Array(b.String()))});function NEn(t){let e=ZVo(t),r=$xe({proxy:e,proxyStrictSSL:XVo(t)}),n=t.GH_COPILOT_KERBEROS_SERVICE_PRINCIPAL??t.GITHUB_COPILOT_KERBEROS_SERVICE_PRINCIPAL??t.AGENT_KERBEROS_SERVICE_PRINCIPAL;return n&&(r.proxyKerberosServicePrincipal=n),r}a(NEn,"getHttpSettingsFromEnvironment");function $xe(t){if(!t.proxy)return{...t,proxy:""};try{let{protocol:e,host:r,username:n,password:o,pathname:s,search:c,hash:l}=new URL(t.proxy);return{...t,proxy:`${e}//${r}${s}${c}${l}`,proxyAuthorization:t.proxyAuthorization||ezo(n,o),noProxy:t.noProxy||[]}}catch{return{...t,proxy:""}}}a($xe,"normalizeHttpSettings");function ezo(t,e){return!t||!e?"":`${decodeURIComponent(t)}:${decodeURIComponent(e)}`}a(ezo,"getAuth");var Vxe={};zi(Vxe,{anthropicClaude:()=>czo,build:()=>ozo,buildType:()=>szo,default:()=>hzo,dependencies:()=>dzo,description:()=>nzo,devDependencies:()=>uzo,displayName:()=>rzo,engines:()=>azo,name:()=>tzo,overrides:()=>fzo,overridesComments:()=>pzo,scripts:()=>lzo,version:()=>izo});var tzo="copilot",rzo="GitHub Copilot",nzo="Your AI pair programmer",izo="1.555.5",ozo="187",szo="prod",azo={node:">=22.13.0",npm:">=11.6.0 <12.0.0"},czo={cliPackageVersion:"2.1.159"},lzo={build:"tsx esbuild.ts",clean:"./script/build/clean.sh",compress:"tsx ./script/compressTokenizer.ts",generate_languages:"tsx script/generateLanguages.ts && prettier --write lib/src/language/generatedLanguages.ts",get_token:"tsx script/deviceFlow.ts --save-as-test-token",lint:'run-p --aggregate-output "lint:*"',"lint:deps":"depcruise -c .dependency-cruiser.js .","lint:eslint":"eslint -f visualstudio --quiet --cache .","lint:gdpr":"tsx script/checkGdprComments.ts","lint:overrides":"tsx script/checkOverridesDocumented.ts","lint:prettier":"prettier --check . 2>&1","lint:types":"tsc --noEmit",manage_auth_db:"tsx script/manageAuthDb.ts",prebuild:"npm install",pretest:"npm run build","pretest:headless":"npm run build","pretest:agent-e2e-full":"npm run build","pretest:agent-e2e":"npm run build","pretest:lsp-client":"npm run build","pretest:lib-e2e":"npm run build",prewatch:"npm run build","prewatch:esbuild":"npm run build",start:"npm run watch",test:'npm-run-all "test:headless --ignore-scripts" lint',"test:headless":'npm-run-all test:lib test:agent "test:lib-e2e --ignore-scripts" test:prompt "test:lsp-client --ignore-scripts" lint',"test:agent":'mocha "agent/src/**/*.test.{ts,tsx}"',"test:agent-e2e":'mocha "agent/e2e/**/*.test.{ts,tsx}" --exclude "agent/e2e/**/*.daily.test.{ts,tsx}"',"test:agent-e2e-full":'mocha "agent/e2e/**/*.test.{ts,tsx}"',"test:workflow":"node --test .github/workflows/scripts/release-merge-back/release-merge-back.test.mjs","test:lib":'mocha "lib/src/**/*.test.{ts,tsx}" "script/**/*.test.{ts,tsx}" --exclude "lib/src/**/*.int.test.ts"',"test:lib-int":'mocha "lib/src/**/*.int.test.ts"',"test:lib-e2e":'mocha "lib/e2e/src/**/*.test.{ts,tsx}" --exclude "lib/e2e/src/prompt/**/*.test.ts"',"test:lib-e2e-no-ci":'mocha "lib/e2e/no-ci/**/*.test.{ts,tsx}"',"test:lib-prompt-e2e":'mocha "lib/e2e/src/prompt/prompt.test.ts"',"test:lib-prompt-e2e-perf":"INCLUDE_PERFORMANCE=true npm run test:lib-prompt-e2e","test:lsp-client":'mocha "lsp-client/test/*.test.{ts,tsx}"',"test:pkg-runtime":"tsx script/smokeCopilotRuntimePkg.ts","test:prompt":'mocha "prompt/test/**/*.test.{ts,tsx}"',"test:prepare-msbench":"tsx script/setupMsbench.ts","test:run-msbench":"tsx lsp-client/test/msbench/agent/index.ts",watch:'run-p "watch:esbuild --ignore-scripts" "watch:types -- --preserveWatchOutput"',"watch:esbuild":"tsx esbuild.ts --watch","watch:types":"tsc --noEmit --watch"},uzo={"@azure/identity":"^4.13.2","@azure/keyvault-secrets":"^4.11.2","@github/prettier-config":"0.0.6","@limegrass/eslint-plugin-import-alias":"^1.6.1","@microsoft/agent-host-protocol":"^1.0.0","@types/crypto-js":"^4.2.2","@types/diff":"^8.0.0","@types/git-url-parse":"^16.0.2","@types/js-yaml":"^4.0.6","@types/kerberos":"^1.1.2","@types/markdown-it":"^14.2.0","@types/mocha":"^10.0.10","@types/node":"~22.13.0","@types/semver":"^7.8.0","@types/sinon":"^22.0.0","@types/toposort":"^2.0.7","@types/vscode":"1.137.0","@types/which":"^3.0.0","@types/yargs":"^17.0.35","@vscode/tree-sitter-wasm":"0.0.5-php.2","@yao-pkg/pkg":"^6.22.0",boxen:"^8.0.1",chalk:"^5.6.2","dependency-cruiser":"^18.2.0",esbuild:"^0.28.2","esbuild-plugin-copy":"^2.1.1",eslint:"^9.39.5","eslint-formatter-visualstudio":"^9.0.1","eslint-plugin-mocha":"^10.5.0",globals:"^17.12.0","js-yaml":"^4.2.0",mocha:"^11.8.0","mocha-junit-reporter":"^2.2.1","mocha-multi-reporters":"^1.5.2","npm-run-all":"^4.1.5",openai:"^7.15.0",prettier:"^3.5.3","prettier-plugin-organize-imports":"^4.2.0","simple-git":"^3.36.0",sinon:"^22.1.0","tree-sitter-bash":"^0.23.0","tree-sitter-powershell":"0.25.9","ts-dedent":"^2.3.0",tsx:"^4.23.12",typescript:"^5.9.3","typescript-eslint":"^8.39.1","vscode-dts":"^0.3.3"},dzo={"@adobe/helix-fetch":"github:devm33/helix-fetch#2a08fa939591a0e14f34f611adcc3ed767579e9a","@agentclientprotocol/sdk":"^1.4.0","@anthropic-ai/claude-agent-sdk":"0.3.159","@anthropic-ai/sdk":"^0.98.0","@github/copilot":"1.0.96","@github/copilot-sdk":"1.0.20","@github/keytar":"7.10.6","@github/memoize":"1.1.5","@microsoft/1ds-core-js":"^4.4.3","@microsoft/1ds-post-js":"^4.4.3","@microsoft/applicationinsights-core-js":"^3.4.3","@microsoft/applicationinsights-web-basic":"^3.4.3","@modelcontextprotocol/sdk":"^1.30.0","@octokit/graphql":"^9.0.5","@octokit/rest":"^22.0.1","@parcel/watcher":"^2.6.0","@sinclair/typebox":"^0.34.52","@vscode/chat-lib":"0.60.0","@vscode/codicons":"^0.0.45","@vscode/deviceid":"github:ghc-jetbrains/vscode-deviceid#f0e5738cd362ef20a09aeb30c3a8be99a9a710f5","@vscode/policy-watcher":"^1.4.0","@vscode/prompt-tsx":"^0.4.0-alpha.9","@vscode/webview-ui-toolkit":"^1.3.1","crypto-js":"^4.2.0",diff:"^9.0.0",dldr:"^0.0.10",events:"^3.3.0","git-url-parse":"^16.1.0",glob:"^11.1.0","jsonc-parser":"^3.3.1",kerberos:"^2.2.0","mac-ca":"^3.1.3","markdown-it":"^15.0.2",minimatch:"^10.2.6",open:"^11.0.3",semver:"^7.8.5",shiki:"~1.15.0","source-map-support":"^0.5.21",toposort:"^2.0.2",undici:"^7.29.1",uuid:"^14.0.0","vscode-languageclient":"^9.0.0","vscode-languageserver":"^9.0.0","vscode-languageserver-protocol":"^3.17","vscode-languageserver-textdocument":"~1.0.14","vscode-uri":"^3.2.0","web-tree-sitter":"^0.23.0",which:"^7.0.0","windows-ca-certs":"^0.2.2",ws:"^8.21.3",yargs:"^18.1.0"},fzo={"@yao-pkg/pkg-fetch":"https://github.com/ghc-jetbrains/pkg-fetch/releases/download/v3.6-node22.23.4-r2/yao-pkg-pkg-fetch-3.6.6-node22.23.4.2.tgz",fsevents:"<0","@github/copilot-linuxmusl-arm64":"<0","@github/copilot-linuxmusl-x64":"<0",bindings:"npm:bundled-bindings@^1.5.0",jws:"^3.2.3",tar:"7.5.21","serialize-javascript":"^7.0.5",uuid:"^14.0.0","ip-address":"^10.1.1","fast-uri":"^3.1.7"},pzo={"//":"Rationale for each entry in `overrides`. Required by `npm run lint:overrides` (script/checkOverridesDocumented.ts). Each value should cover: why (CVE/GHSA or build-hack reason), which direct dep pulls in the vulnerable transitive, and the remove-when condition.","@yao-pkg/pkg-fetch":"Node.js October 2026 security release: @yao-pkg/pkg 6.22.0 pins pkg-fetch 3.6.5, and even pkg 6.23.0/pkg-fetch 3.6.6 still select Node 22.23.2. This compiled fork tarball selects Node 22.23.4 and verifies all eleven mirrored upstream runtimes against committed SHA256 values, including Linux static fabricators needed for cross-architecture packaging. Drop when the official pkg dependency selects Node >= 22.23.4 on the Node 22 line.",fsevents:"Build hack: macOS-only optional native dep; '<0' is an impossible semver that force-skips install on Linux/Windows pkg builds. Permanent \u2014 keep until @yao-pkg/pkg handles macOS-only optionalDependencies natively. See commit d635096c.","@github/copilot-linuxmusl-arm64":"Build hack: @github/copilot declares a Linux musl optional runtime package, but CLS does not support musl. '<0' prevents npm from installing the unsupported runtime. Drop only if CLS adds musl support.","@github/copilot-linuxmusl-x64":"Build hack: @github/copilot declares a Linux musl optional runtime package, but CLS does not support musl. '<0' prevents npm from installing the unsupported runtime. Drop only if CLS adds musl support.",bindings:"Build hack: alias to bundled-bindings fork that resolves .node native addon paths after pkg/esbuild bundling. Required by kerberos. Drop when upstream `bindings` adopts platform-specific path resolution. See commits c4461665 and b55ece83.",jws:"CVE GHSA-869p-cjfg-cm3x (Improperly Verifies HMAC Signature). Pulled in by jsonwebtoken-family deps. Drop when all transitive consumers pin jws >= 3.2.3. See commit 2b5dc766.",tar:"CVE GHSA-9ppj-qmqm-q256 + GHSA-qffp-2rhf-9h96 (Symlink/Hardlink Path Traversal via Drive-Relative Linkpath), plus the 7.5.12..7.5.20 advisory run: GHSA-23hp-3jrh-7fpw / CVE-2026-59873 (critical, decompression DoS via unlimited input), GHSA-8x88-c5mf-7j5w / CVE-2026-59874 (infinite loop on negative entry size), GHSA-w8wr-v893-vjvp / CVE-2026-59871 (PAX numeric path type confusion), GHSA-gvwx-54wh-qm9j / CVE-2026-59875 (NUL byte in PAX path records), GHSA-vmf3-w455-68vh / CVE-2026-53655 (GNU long-name PAX size override file smuggling), GHSA-r292-9mhp-454m (uncontrolled recursion in mapHas/filesFilter). Pulled in by @yao-pkg/pkg (tar ^7.5.7) and node-gyp / native-build deps. Drop when transitive consumers bump tar >= 7.5.21. Dependabot alerts #170, #169, #179, #171, #168, #146. See commit e2dff0f3.","serialize-javascript":"CVE GHSA-5c6j-r48x-rmvq (RCE via RegExp.flags / Date.toISOString) + GHSA-qj8w-gfj5-8c6v (ReDoS). Pulled in by mocha 11.x (^6.0.2). Dev-only. Drop when mocha bumps to a release that carries serialize-javascript >= 7.0.3. See commit d49f75fd.",uuid:"CVE GHSA-w5hq-g745-h8pq (missing buffer bounds checks in v3/v5/v6). Pulled in by msal-node and @vscode/deviceid as uuid 8.x/9.x. Drop when both upgrade to uuid >= 14. Dependabot alert #128. See commit 6315f3f8.","ip-address":"CVE GHSA-v2v4-37r5-5v8g (XSS in Address6 HTML-emitting methods: group/link/spanAll and AddressError.parseMessage). Pulled in by @modelcontextprotocol/sdk -> express-rate-limit. Not exploitable here (we don't render HTML or call the affected methods), but the override clears the alert. Drop when express-rate-limit bumps to a release carrying ip-address >= 10.1.1. Dependabot alert #129. See PR #854.","fast-uri":"CVE-2026-6321 GHSA-q3j6-qgpj-74h6 (host confusion via percent-encoded authority delimiters) + CVE-2026-6322 GHSA-v39h-62p7-jpjc (path traversal via percent-encoded dot segments). Pulled in by @modelcontextprotocol/sdk -> ajv -> fast-uri. Drop when ajv bumps to a release carrying fast-uri >= 3.1.2. Dependabot alerts #132, #133."},hzo={name:tzo,displayName:rzo,description:nzo,version:izo,build:ozo,buildType:szo,engines:azo,anthropicClaude:czo,scripts:lzo,devDependencies:uzo,dependencies:dzo,overrides:fzo,overridesComments:pzo};var Ne={Enable:"enable",EnableQuotaThresholdWarning:"quota.enableThresholdWarning",McpGatewayAutoStart:"mcpGateway.autoStart",ShowEditorCompletions:"editor.showEditorCompletions",EnableAutoCompletions:"editor.enableAutoCompletions",DelayCompletions:"editor.delayCompletions",FilterCompletions:"editor.filterCompletions",FetchStrategy:"fetchStrategy",EnableBuiltInGitHubMcpServer:"enableBuiltInGitHubMcpServer",ToolConfirmAutoApprove:"agent.toolConfirmAutoApprove",AutoApproveUnmatchedTerminal:"agent.autoApproveUnmatchedTerminal",AutoApproveUnmatchedFileOp:"agent.autoApproveUnmatchedFileOp",TrustToolAnnotations:"agent.trustToolAnnotations",AutoApproveYoloMode:"agent.autoApproveYoloMode",EditorHandlesAllConfirmation:"agent.editorHandlesAllConfirmation",MaxToolCallingLoop:"agent.maxToolCallingLoop",AutoCompress:"agent.autoCompress",AnthropicThinkingBudgetToken:"agent.anthropicThinkingBudgetToken",EnableSkills:"agent.enableSkills",EnableOrgSkills:"agent.enableOrgSkills",EnableHooks:"agent.enableHooks",SystemHookTools:"agent.systemHookTools",EnableSandbox:"agent.sandbox.enabled",SandboxAddCurrentWorkingDirectory:"agent.sandbox.addCurrentWorkingDirectory",SandboxAuth:"agent.sandbox.auth",SandboxAllowDevToolAccess:"agent.sandbox.allowDevToolAccess",SandboxAllowBypass:"agent.sandbox.allowBypass",SandboxMcpServers:"agent.sandbox.sandboxMcpServers",SandboxLspServers:"agent.sandbox.sandboxLspServers",SandboxUserPolicy:"agent.sandbox.userPolicy",EnablePlugins:"agent.enablePlugins",EnableEnsemble:"agent.enableEnsemble",EnableCustomAgents:"agent.enableCustomAgents",EnableOrgCustomAgents:"agent.enableOrgCustomAgents",EnableOrgCustomInstructions:"agent.enableOrgCustomInstructions",UseSessionModelForBuiltinSubagents:"agent.useSessionModelForBuiltinSubagents",UseAgentsMd:"agent.useAgentsMdFile",UseNestedAgentsMd:"agent.useNestedAgentsMdFiles",UseClaudeMd:"agent.useClaudeMdFile",UseNestedClaudeMd:"agent.useNestedClaudeMdFiles",CompletionsDelay:"completionsDelay",CompletionsDebounce:"completionsDebounce",EnableThinking:"agent.enableThinking",TranscriptDirectory:"agent.transcriptDirectory",AgentDebugLogsDirectory:"agent.agentDebugLogsDirectory",ClaudeCliPath:"agent.claude.cliPath",CodexCliPath:"agent.codex.cliPath",OtelEnabled:"agent.otel.enabled",OtelEndpoint:"agent.otel.otlpEndpoint",OtelCaptureContent:"agent.otel.captureContent",OtelExporterType:"agent.otel.exporterType",OtelProtocol:"agent.otel.protocol",OtelOutfile:"agent.otel.outfile",OtelServiceName:"agent.otel.serviceName",OtelResourceAttributes:"agent.otel.resourceAttributes",NESExtendedRange:"nextEditSuggestions.extendedRange",NESEagerness:"nextEditSuggestions.eagerness",RelatedFilesVSCodeCSharp:"advanced.relatedFilesVSCodeCSharp",RelatedFilesVSCodeTypeScript:"advanced.relatedFilesVSCodeTypeScript",RelatedFilesVSCode:"advanced.relatedFilesVSCode",ContextProviders:"advanced.contextProviders",DebugOverrideLogLevels:"advanced.debug.overrideLogLevels",DebugFilterLogCategories:"advanced.debug.filterLogCategories",DebugSnippyOverrideUrl:"advanced.debug.codeRefOverrideUrl",DebugUseElectronFetcher:"advanced.debug.useElectronFetcher",DebugUseEditorFetcher:"advanced.debug.useEditorFetcher",UseSubsetMatching:"advanced.useSubsetMatching",ContextProviderTimeBudget:"advanced.contextProviderTimeBudget",DebugOverrideCapiUrl:"internal.capiUrl",DebugOverrideCapiUrlLegacy:"advanced.debug.overrideCapiUrl",DebugTestOverrideCapiUrl:"internal.capiTestUrl",DebugTestOverrideCapiUrlLegacy:"advanced.debug.testOverrideCapiUrl",DebugOverrideProxyUrl:"internal.completionsUrl",DebugOverrideProxyUrlLegacy:"advanced.debug.overrideProxyUrl",DebugTestOverrideProxyUrl:"internal.completionsTestUrl",DebugTestOverrideProxyUrlLegacy:"advanced.debug.testOverrideProxyUrl",DebugOverrideEngine:"internal.completionModel",DebugOverrideEngineLegacy:"advanced.debug.overrideEngine",AlwaysRequestMultiline:"internal.alwaysRequestMultiline",ModelAlwaysTerminatesSingleline:"internal.modelAlwaysTerminatesSingleline",TrimCompletionsAggressively:"internal.trimCompletionsAggressively",UseWorkspaceContextCoordinator:"internal.useWorkspaceContextCoordinator",ShowWorkspaceContextDebugger:"internal.showWorkspaceContextDebugger",IncludeNeighboringFiles:"internal.includeNeighboringFiles",ExcludeRelatedFiles:"internal.excludeRelatedFiles",DebugOverrideCppHeadersEnableSwitch:"internal.cppHeadersEnableSwitch",NESXTab:"internal.useXTab",NESUseExplicitRejection:"internal.nesUseExplicitRejection",NESModelConfiguration:"internal.nesModelConfiguration",UseSplitContextPrompt:"internal.useSplitContextPrompt",UseCompletionsComparisonPanel:"internal.useCompletionsComparisonPanel",ComparisonPanelModelIds:"internal.comparisonPanelModelIds",ComparisonPanelRandomizedMode:"internal.comparisonPanelRandomizedMode",UseFetchFetcher:"internal.useFetchFetcher",UseChatLibCompletions:"internal.useChatLibCompletions",HookErrorOccurredStackTrace:"internal.hookErrorOccurredStackTrace",AppendPromptTokenCache:"internal.appendPromptTokenCache",PromptPersistBasePath:"internal.promptPersistBasePath",AnthropicMessagesEndpoint:"internal.anthropic.messagesEndpoint",UseHelixFetcher:"internal.useHelixFetcher",EnableMapCodeFallback:"internal.enableMapCodeFallback",SearchAgent:"internal.searchAgent",EnsembleEnabledOverride:"internal.ensembleEnabledOverride",PerfEnabled:"internal.perf.enabled",AuthTokenEncryption:"internal.auth.tokenEncryption",EnableWorkspaceIndex:"workspaceIndex.enabled"};function OEn(t){return["server","parsingandserver"].includes(t)}a(OEn,"shouldDoServerTrimming");var XD=class{static{a(this,"BlockModeConfig")}},Hue=class extends XD{static{a(this,"ConfigBlockModeConfig")}forLanguage(e,r,n){let o=e.get(sr).overrideBlockMode(n);if(o)return MQt(o,r);let s=e.get(sr).enableProgressiveReveal(n);return(Et(e,Ne.AlwaysRequestMultiline)??s)||xB.isTrimmedByDefault(r)?MQt("moremultiline",r):r=="ruby"?"parsing":XI(r)?"parsingandserver":"server"}};function mzo(t){return["parsing","parsingandserver","moremultiline"].includes(t)}a(mzo,"blockModeRequiresTreeSitter");function MQt(t,e){return t==="moremultiline"&&$0.isSupported(e)?t:mzo(t)&&!XI(e)?"server":t}a(MQt,"toApplicableBlockMode");var Fn=class{static{a(this,"ConfigProvider")}getRawConfig(e){return this.getExplicitlySetConfigs().get(e)}requireReady(){return Promise.resolve()}},jue=class extends Fn{constructor(){super(...arguments);this.onDidChangeCopilotSettings=a(()=>({dispose:a(()=>{},"dispose")}),"onDidChangeCopilotSettings");this.onDidChangeHttpSettings=this.onDidChangeCopilotSettings}static{a(this,"DefaultsOnlyConfigProvider")}getConfig(r){return gzo(r)}getOptionalConfig(r){return Azo(r)}dumpForTelemetry(){return{}}getExplicitlySetConfigs(){return new Map}getHttpSettings(){return{proxy:""}}},fJ=class extends Fn{constructor(r,n){super();this.baseConfigProvider=r;this.overrides=n;this.copilotEmitter=new no;this.onDidChangeCopilotSettings=this.copilotEmitter.event;this.didChangeHttpSettingsEmitter=new no;this.onDidChangeHttpSettings=this.didChangeHttpSettingsEmitter.event;this.httpSettings=this.baseConfigProvider.getHttpSettings()}static{a(this,"InMemoryConfigProvider")}getOptionalOverride(r){return this.overrides.get(r)}getConfig(r){return this.getOptionalOverride(r)??this.baseConfigProvider.getConfig(r)}getOptionalConfig(r){return this.getOptionalOverride(r)??this.baseConfigProvider.getOptionalConfig(r)}getRawConfig(r){return this.overrides.has(r)?this.overrides.get(r):this.baseConfigProvider.getRawConfig(r)}setConfig(r,n){this.setCopilotSettings({[r]:n})}setCopilotSettings(r){for(let[n,o]of Object.entries(r))o!==void 0?this.overrides.set(n,o):this.overrides.delete(n);this.copilotEmitter.fire(this)}getExplicitlySetConfigs(){let r=new Map(this.baseConfigProvider.getExplicitlySetConfigs());for(let[n,o]of this.overrides)r.set(n,o);return r}getHttpSettings(){return this.httpSettings}setHttpSettings(r){let n=$xe(r);this.httpSettings=n,this.didChangeHttpSettingsEmitter.fire(this.getHttpSettings())}dumpForTelemetry(){let r=this.baseConfigProvider.dumpForTelemetry();for(let n of[Ne.ShowEditorCompletions,Ne.EnableAutoCompletions,Ne.DelayCompletions,Ne.FilterCompletions]){let o=this.overrides.get(n);o!==void 0&&(r[n]=JSON.stringify(o))}return r}};function BEn(t,e){let r=t,n=[];for(let o of e.split(".")){let s=[...n,o].join(".");r&&typeof r=="object"&&s in r?(r=r[s],n.length=0):n.push(o)}if(!(r===void 0||n.length>0))return r}a(BEn,"getConfigKeyRecursively");function gzo(t){if(eYe.has(t))return eYe.get(t);throw new Error(`Missing config default value: ${NNt}.${t}`)}a(gzo,"getConfigDefaultForKey");function Azo(t){return eYe.get(t)}a(Azo,"getOptionalConfigDefaultForKey");function zxe(t){return t.get(Fn).getExplicitlySetConfigs()}a(zxe,"getExplicitlySetConfigs");var yzo={[Ne.DebugOverrideCppHeadersEnableSwitch]:!1,[Ne.RelatedFilesVSCodeCSharp]:!1,[Ne.RelatedFilesVSCodeTypeScript]:!1,[Ne.RelatedFilesVSCode]:!1,[Ne.IncludeNeighboringFiles]:!1,[Ne.ExcludeRelatedFiles]:!1,[Ne.ContextProviders]:[],[Ne.DebugUseEditorFetcher]:null,[Ne.DebugUseElectronFetcher]:null,[Ne.DebugOverrideLogLevels]:{},[Ne.DebugSnippyOverrideUrl]:"",[Ne.AgentDebugLogsDirectory]:void 0,[Ne.ClaudeCliPath]:void 0,[Ne.CodexCliPath]:void 0,[Ne.OtelEnabled]:!1,[Ne.OtelEndpoint]:void 0,[Ne.OtelCaptureContent]:!1,[Ne.OtelExporterType]:"otlp-http",[Ne.OtelProtocol]:"",[Ne.OtelOutfile]:"",[Ne.OtelServiceName]:"",[Ne.OtelResourceAttributes]:{},[Ne.FetchStrategy]:"auto",[Ne.EnableBuiltInGitHubMcpServer]:!1,[Ne.ToolConfirmAutoApprove]:!1,[Ne.AutoApproveUnmatchedTerminal]:void 0,[Ne.AutoApproveUnmatchedFileOp]:void 0,[Ne.TrustToolAnnotations]:!1,[Ne.AutoApproveYoloMode]:!1,[Ne.EditorHandlesAllConfirmation]:!1,[Ne.MaxToolCallingLoop]:25,[Ne.AutoCompress]:!1,[Ne.AnthropicThinkingBudgetToken]:1024,[Ne.EnableSkills]:!1,[Ne.EnableOrgSkills]:!0,[Ne.EnableHooks]:!1,[Ne.SystemHookTools]:void 0,[Ne.EnableSandbox]:!1,[Ne.SandboxAddCurrentWorkingDirectory]:void 0,[Ne.SandboxAuth]:void 0,[Ne.SandboxAllowDevToolAccess]:void 0,[Ne.SandboxAllowBypass]:void 0,[Ne.SandboxMcpServers]:void 0,[Ne.SandboxLspServers]:void 0,[Ne.SandboxUserPolicy]:void 0,[Ne.EnablePlugins]:!1,[Ne.EnableEnsemble]:!0,[Ne.EnableCustomAgents]:!0,[Ne.EnableOrgCustomAgents]:!0,[Ne.EnableOrgCustomInstructions]:!0,[Ne.UseSessionModelForBuiltinSubagents]:!1,[Ne.UseAgentsMd]:!1,[Ne.UseNestedAgentsMd]:!1,[Ne.UseClaudeMd]:!1,[Ne.UseNestedClaudeMd]:!1,[Ne.UseSubsetMatching]:null,[Ne.ContextProviderTimeBudget]:void 0,[Ne.DebugOverrideCapiUrl]:"",[Ne.DebugTestOverrideCapiUrl]:"",[Ne.DebugOverrideProxyUrl]:"",[Ne.DebugTestOverrideProxyUrl]:"",[Ne.DebugOverrideEngine]:"",[Ne.AlwaysRequestMultiline]:void 0,[Ne.ModelAlwaysTerminatesSingleline]:void 0,[Ne.TrimCompletionsAggressively]:void 0,[Ne.CompletionsDebounce]:void 0,[Ne.NESXTab]:void 0,[Ne.UseWorkspaceContextCoordinator]:void 0,[Ne.ShowWorkspaceContextDebugger]:!1,[Ne.CompletionsDelay]:void 0,[Ne.UseSplitContextPrompt]:void 0,[Ne.UseCompletionsComparisonPanel]:void 0,[Ne.ComparisonPanelModelIds]:void 0,[Ne.ComparisonPanelRandomizedMode]:void 0,[Ne.UseFetchFetcher]:void 0,[Ne.UseChatLibCompletions]:void 0,[Ne.TranscriptDirectory]:void 0,[Ne.EnableThinking]:!0,[Ne.ShowEditorCompletions]:void 0,[Ne.EnableAutoCompletions]:void 0,[Ne.DelayCompletions]:void 0,[Ne.FilterCompletions]:void 0,[Ne.Enable]:{"*":!0,plaintext:!1,markdown:!1,scminput:!1},[Ne.EnableQuotaThresholdWarning]:!0,[Ne.McpGatewayAutoStart]:!1,[Ne.DebugFilterLogCategories]:[],[Ne.DebugOverrideEngineLegacy]:"",[Ne.DebugTestOverrideProxyUrlLegacy]:"",[Ne.DebugOverrideProxyUrlLegacy]:"",[Ne.DebugTestOverrideCapiUrlLegacy]:"",[Ne.DebugOverrideCapiUrlLegacy]:"",[Ne.HookErrorOccurredStackTrace]:!1,[Ne.NESUseExplicitRejection]:!1,[Ne.NESModelConfiguration]:void 0,[Ne.AppendPromptTokenCache]:"",[Ne.PromptPersistBasePath]:void 0,[Ne.AnthropicMessagesEndpoint]:"",[Ne.UseHelixFetcher]:"",[Ne.EnableMapCodeFallback]:"enabled",[Ne.SearchAgent]:"",[Ne.EnsembleEnabledOverride]:"",[Ne.PerfEnabled]:"",[Ne.NESExtendedRange]:!1,[Ne.NESEagerness]:"auto",[Ne.AuthTokenEncryption]:"",[Ne.EnableWorkspaceIndex]:!1},eYe=new Map(Object.entries(yzo));for(let t of Object.values(Ne))if(!eYe.has(t))throw new Error(`Missing config default value ${NNt}.${t}`);function Et(t,e){return t.get(Fn).getConfig(e)}a(Et,"getConfig");function qv(t){let e=Et(t,Ne.EnableWorkspaceIndex);return e===!0||e==="true"}a(qv,"isSemanticSearchEnabled");function Qon(t){return t.get(Fn).dumpForTelemetry()}a(Qon,"dumpForTelemetry");var Is=class{constructor(){this.packageJson=Vxe}static{a(this,"BuildInfo")}isProduction(){return this.getBuildType()!=="dev"}getBuildType(){return this.packageJson.buildType}getVersion(){return this.packageJson.version}getDisplayVersion(){return this.getBuildType()==="dev"?`${this.getVersion()}-dev`:this.getVersion()}getBuild(){return this.packageJson.build}getName(){return this.packageJson.name}};function $Nt(t){return t.get(Is).isProduction()}a($Nt,"isProduction");function yun(t){return t.get(Is).getBuildType()==="dev"}a(yun,"isDevBuild");function hQ(t){return t.get(Is).getBuildType()}a(hQ,"getBuildType");function qon(t){return t.get(Is).getBuild()}a(qon,"getBuild");function bI(t){return t.get(Is).getVersion()}a(bI,"getVersion");var _a=class{constructor(e,r,n,o="none",s="desktop"){this.sessionId=e;this.machineId=r;this.devDeviceId=n;this.remoteName=o;this.uiKind=s}static{a(this,"EditorSession")}};function fI({name:t,version:e}){return`${t}/${e}`}a(fI,"formatNameAndVersion");var vr=class{static{a(this,"EditorAndPluginInfo")}getCopilotIntegrationId(){}getEditorPluginSpecificFilters(){return[]}getEditorIdentity(){return AYr({editor:this.getEditorInfo(),plugin:this.getEditorPluginInfo()})}isEditorPluginInfoKnown(){return!0}};function CWe(t){let e=t.getCopilotIntegrationId();if(e)return e;switch(t.getEditorPluginInfo().name){case"copilot-intellij":return"jetbrains-chat";case"copilot":case"copilot-vs":return;default:return"jetbrains-chat"}}a(CWe,"getIntegrationId");function TE(t){let e=t.get(vr);return{"Editor-Version":fI(e.getEditorInfo()),"Editor-Plugin-Version":fI(e.getEditorPluginInfo()),"Copilot-Language-Server-Version":bI(t)}}a(TE,"editorVersionHeaders");var LEn="Iv1.b507a08c87ecfe98",Ezo="350ee525b5da0e4a54c6e8e043edc1b99cc02f19",Ple="Ov23liV9UpD7Rnfnskm3",_zo="5509a52e4c525cd594a6fba9147ff6cc2388dd9f",vzo={[LEn]:Ezo,[Ple]:_zo},_h=class{static{a(this,"GitHubAppInfo")}findAppIdToAuthenticate(){return this.githubAppId??LEn}findAppSecretToAuthenticate(){let e=this.findAppIdToAuthenticate(),r=vzo[e];if(!r)throw new Error(`GitHubAppInfo: No app secret found for app ID: ${e}`);return r}};var rr=class{static{a(this,"Fetcher")}getImplementation(){return this}};function pJ(t,e,r,n,o,s,c,l,u,d,f,h,m=!1,g=[]){let A=l?.["x-api-key"],y=m||typeof A=="string"&&A.length>0,E={...l,...y?{}:{Authorization:`Bearer ${r}`},...TE(t)};d===void 0&&(E["Openai-Organization"]="github-copilot",E["X-Request-Id"]=o,E["VScode-SessionId"]=t.get(_a).sessionId,E["VScode-MachineId"]=t.get(_a).machineId,E["X-GitHub-Api-Version"]="2026-01-09"),n&&(E["OpenAI-Intent"]=n);let _={method:"POST",headers:E,json:s,timeout:u};if(f&&h){let T=[...r?[r]:[],...g,...Object.entries(E).filter(([w,R])=>R.length>0&&sQe.has(w.toLowerCase())).map(([,w])=>w)];f.logRequest({timestamp:new Date().toISOString(),requestId:o,method:"POST",url:e,headers:E,messages:h,body:s,sensitiveValues:T})}let v=t.get(rr);if(c){let T=new AbortController;c.onCancellationRequested(()=>{mt(t,"networking.cancelRequest",tr.createAndMarkAsIssued({headerRequestId:o})),T.abort()}),_.signal=T.signal}return v.fetch(e,_).catch(T=>{if(Czo(T))return mt(t,"networking.disconnectAll"),v.disconnectAll().then(()=>v.fetch(e,_));throw T})}a(pJ,"postRequest");function Czo(t){return t instanceof Error?t.message=="ERR_HTTP2_GOAWAY_SESSION"?!0:"code"in t?t.code=="ECONNRESET"||t.code=="ETIMEDOUT"||t.code=="ERR_HTTP2_INVALID_SESSION":!1:!1}a(Czo,"isInterruptedNetworkError");var bzo=new Set(["ERR_WORKER_OUT_OF_MEMORY","ENOMEM"]);function Szo(t){return bzo.has(t.code??"")||t.name==="RangeError"&&t.message==="WebAssembly.Memory(): could not allocate memory"}a(Szo,"isOomError");function hJ(t,e,r,n=zr){if(!dh(e)){if(e instanceof Error){let o=e;Szo(o)?t.get(Us).setWarning("cls",{message:"Out of memory"}):o.code==="EMFILE"||o.code==="ENFILE"?t.get(Us).setWarning("cls",{message:"Too many open files"}):o.code==="CopilotPromptLoadFailure"?t.get(Us).setWarning("cls",{message:"Corrupted Copilot installation"}):`${o.code}`.startsWith("CopilotPromptWorkerExit")?t.get(Us).setWarning("cls",{message:"Worker unexpectedly exited"}):o.syscall==="uv_cwd"&&o.code==="ENOENT"&&t.get(Us).setWarning("cls",{message:"Current working directory does not exist"})}n.exception(t,e,r)}}a(hJ,"handleException");function FEn(t){process.addListener("uncaughtException",r=>{hJ(t,r,"uncaughtException")});let e=!1;process.addListener("unhandledRejection",r=>{if(!e)try{e=!0,hJ(t,r,"unhandledRejection")}finally{e=!1}})}a(FEn,"registerDefaultHandlers");function UEn(){wq("o200k_base").catch(()=>{})}a(UEn,"prewarmTokenizers");p();p();p();var V3={abap:{extensions:[".abap"]},aspdotnet:{extensions:[".asax",".ascx",".ashx",".asmx",".aspx",".axd"]},bat:{extensions:[".bat",".cmd"]},bibtex:{extensions:[".bib",".bibtex"]},blade:{extensions:[".blade",".blade.php"]},BluespecSystemVerilog:{extensions:[".bsv"]},c:{extensions:[".c",".cats",".h",".h.in",".idc"]},csharp:{extensions:[".cake",".cs",".cs.pp",".csx",".linq"]},cpp:{extensions:[".c++",".cc",".cp",".cpp",".cppm",".cxx",".h",".h++",".hh",".hpp",".hxx",".idl",".inc",".inl",".ino",".ipp",".ixx",".rc",".re",".tcc",".tpp",".txx",".i"]},cobol:{extensions:[".cbl",".ccp",".cob",".cobol",".cpy"]},css:{extensions:[".css",".wxss"]},clojure:{extensions:[".bb",".boot",".cl2",".clj",".cljc",".cljs",".cljs.hl",".cljscm",".cljx",".edn",".hic"],filenames:["riemann.config"]},ql:{extensions:[".ql",".qll"]},coffeescript:{extensions:["._coffee",".cake",".cjsx",".coffee",".iced"],filenames:["Cakefile"]},cuda:{extensions:[".cu",".cuh"]},dart:{extensions:[".dart"]},dockerfile:{extensions:[".containerfile",".dockerfile"],filenames:["Containerfile","Dockerfile"]},dotenv:{extensions:[".env"],filenames:[".env",".env.ci",".env.dev",".env.development",".env.development.local",".env.example",".env.local",".env.prod",".env.production",".env.sample",".env.staging",".env.test",".env.testing"]},html:{extensions:[".ect",".ejs",".ejs.t",".jst",".hta",".htm",".html",".html.hl",".html5",".inc",".jsp",".njk",".tpl",".twig",".wxml",".xht",".xhtml",".phtml",".liquid"]},elixir:{extensions:[".ex",".exs"],filenames:["mix.lock"]},erlang:{extensions:[".app",".app.src",".erl",".es",".escript",".hrl",".xrl",".yrl"],filenames:["Emakefile","rebar.config","rebar.config.lock","rebar.lock"]},fsharp:{extensions:[".fs",".fsi",".fsx"]},go:{extensions:[".go"]},groovy:{extensions:[".gradle",".groovy",".grt",".gtpl",".gvy",".jenkinsfile"],filenames:["Jenkinsfile","Jenkinsfile"]},graphql:{extensions:[".gql",".graphql",".graphqls"]},terraform:{extensions:[".hcl",".nomad",".tf",".tfvars",".workflow"]},hlsl:{extensions:[".cginc",".fx",".fxh",".hlsl",".hlsli"]},erb:{extensions:[".erb",".erb.deface",".rhtml"]},razor:{extensions:[".cshtml",".razor"]},haml:{extensions:[".haml",".haml.deface"]},handlebars:{extensions:[".handlebars",".hbs"]},haskell:{extensions:[".hs",".hs-boot",".hsc"]},ini:{extensions:[".cfg",".cnf",".dof",".ini",".lektorproject",".prefs",".pro",".properties",".url"],filenames:[".buckconfig",".coveragerc",".flake8",".pylintrc","HOSTS","buildozer.spec","hosts","pylintrc","vlcrc"]},json:{extensions:[".4DForm",".4DProject",".JSON-tmLanguage",".avsc",".geojson",".gltf",".har",".ice",".json",".json.example",".jsonl",".mcmeta",".sarif",".tact",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","MODULE.bazel.lock","Package.resolved","Pipfile.lock","bun.lock","composer.lock","deno.lock","flake.lock","mcmod.info"]},jsonc:{extensions:[".code-snippets",".code-workspace",".jsonc",".sublime-build",".sublime-color-scheme",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[".babelrc",".devcontainer.json",".eslintrc.json",".jscsrc",".jshintrc",".jslintrc",".swcrc","api-extractor.json","argv.json","devcontainer.json","extensions.json","jsconfig.json","keybindings.json","language-configuration.json","launch.json","profiles.json","settings.json","tasks.json","tsconfig.json","tslint.json"]},java:{extensions:[".jav",".java",".jsh"]},javascript:{extensions:["._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".js",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib"],filenames:["Jakefile"]},julia:{extensions:[".jl"]},kotlin:{extensions:[".kt",".ktm",".kts"]},less:{extensions:[".less"]},lua:{extensions:[".fcgi",".lua",".luau",".nse",".p8",".pd_lua",".rbxs",".rockspec",".wlua"],filenames:[".luacheckrc"]},makefile:{extensions:[".d",".mak",".make",".makefile",".mk",".mkfile"],filenames:["BSDmakefile","GNUmakefile","Kbuild","Makefile","Makefile.am","Makefile.boot","Makefile.frag","Makefile.in","Makefile.inc","Makefile.wat","makefile","makefile.sco","mkfile"]},markdown:{extensions:[".livemd",".markdown",".md",".mdown",".mdwn",".mdx",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr"]},"objective-c":{extensions:[".h",".m"]},"objective-cpp":{extensions:[".mm"]},php:{extensions:[".aw",".ctp",".fcgi",".inc",".install",".module",".php",".php3",".php4",".php5",".phps",".phpt",".theme"],filenames:[".php",".php_cs",".php_cs.dist","Phakefile"]},perl:{extensions:[".al",".cgi",".fcgi",".perl",".ph",".pl",".plx",".pm",".psgi",".t"],filenames:[".latexmkrc","Makefile.PL","Rexfile","ack","cpanfile","latexmkrc"]},powershell:{extensions:[".ps1",".psd1",".psm1"]},pug:{extensions:[".jade",".pug"]},python:{extensions:[".cgi",".codon",".fcgi",".gyp",".gypi",".lmi",".py",".py3",".pyde",".pyi",".pyp",".pyt",".pyw",".rpy",".sage",".spec",".tac",".wsgi",".xpy"],filenames:[".gclient","DEPS","SConscript","SConstruct","wscript"]},r:{extensions:[".r",".rd",".rsx"],filenames:[".Rprofile","expr-dist"]},ruby:{extensions:[".builder",".eye",".fcgi",".gemspec",".god",".jbuilder",".mspec",".pluginspec",".podspec",".prawn",".rabl",".rake",".rb",".rbi",".rbuild",".rbw",".rbx",".ru",".ruby",".spec",".thor",".watchr"],filenames:[".irbrc",".pryrc",".simplecov","Appraisals","Berksfile","Brewfile","Buildfile","Capfile","Dangerfile","Deliverfile","Fastfile","Gemfile","Guardfile","Jarfile","Mavenfile","Podfile","Puppetfile","Rakefile","Snapfile","Steepfile","Thorfile","Vagrantfile","buildfile"]},rust:{extensions:[".rs",".rs.in"]},scss:{extensions:[".scss"]},sql:{extensions:[".cql",".ddl",".inc",".mysql",".prc",".sql",".tab",".udf",".viw"]},sass:{extensions:[".sass"]},scala:{extensions:[".kojo",".sbt",".sc",".scala"]},shellscript:{extensions:[".bash",".bats",".cgi",".command",".fcgi",".fish",".ksh",".sh",".sh.in",".tmux",".tool",".trigger",".zsh",".zsh-theme"],filenames:[".bash_aliases",".bash_functions",".bash_history",".bash_logout",".bash_profile",".bashrc",".cshrc",".envrc",".flaskenv",".kshrc",".login",".profile",".tmux.conf",".zlogin",".zlogout",".zprofile",".zshenv",".zshrc","9fs","PKGBUILD","bash_aliases","bash_logout","bash_profile","bashrc","cshrc","gradlew","kshrc","login","man","profile","tmux.conf","zlogin","zlogout","zprofile","zshenv","zshrc"]},slang:{extensions:[".fxc",".hlsl",".s",".slang",".slangh",".usf",".ush",".vfx"]},slim:{extensions:[".slim"]},solidity:{extensions:[".sol"]},stylus:{extensions:[".styl"]},svelte:{extensions:[".svelte"]},swift:{extensions:[".swift"]},systemverilog:{extensions:[".sv",".svh",".vh"]},typescriptreact:{extensions:[".tsx"]},latex:{extensions:[".aux",".bbx",".cbx",".cls",".dtx",".ins",".lbx",".ltx",".mkii",".mkiv",".mkvi",".sty",".tex",".toc"]},typescript:{extensions:[".cts",".mts",".ts"]},verilog:{extensions:[".v",".veo"]},vim:{extensions:[".vba",".vim",".vimrc",".vmb"],filenames:[".exrc",".gvimrc",".nvimrc",".vimrc","_vimrc","gvimrc","nvimrc","vimrc"]},vb:{extensions:[".vb",".vbhtml",".Dsr",".bas",".cls",".ctl",".frm",".vbs"]},vue:{extensions:[".nvue",".vue"]},xml:{extensions:[".adml",".admx",".ant",".axaml",".axml",".builds",".ccproj",".ccxml",".clixml",".cproject",".cscfg",".csdef",".csl",".csproj",".ct",".depproj",".dita",".ditamap",".ditaval",".dll.config",".dotsettings",".filters",".fsproj",".fxml",".glade",".gml",".gmx",".gpx",".grxml",".gst",".hzp",".iml",".ivy",".jelly",".jsproj",".kml",".launch",".mdpolicy",".mjml",".mod",".mojo",".mxml",".natvis",".ncl",".ndproj",".nproj",".nuspec",".odd",".osm",".pkgproj",".plist",".pluginspec",".proj",".props",".ps1xml",".psc1",".pt",".pubxml",".qhelp",".rdf",".res",".resx",".rss",".sch",".scxml",".sfproj",".shproj",".srdf",".storyboard",".sublime-snippet",".svg",".sw",".targets",".tml",".typ",".ui",".urdf",".ux",".vbproj",".vcxproj",".vsixmanifest",".vssettings",".vstemplate",".vxml",".wixproj",".workflow",".wsdl",".wsf",".wxi",".wxl",".wxs",".x3d",".xacro",".xaml",".xib",".xlf",".xliff",".xmi",".xml",".xml.dist",".xmp",".xproj",".xsd",".xspec",".xul",".zcml"],filenames:[".classpath",".cproject",".project","App.config","NuGet.config","Settings.StyleCop","Web.Debug.config","Web.Release.config","Web.config","packages.config"]},xsl:{extensions:[".xsl",".xslt"]},yaml:{extensions:[".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yaml.sed",".yml",".yml.mysql"],filenames:[".clang-format",".clang-tidy",".clangd",".gemrc","CITATION.cff","glide.lock","pixi.lock","yarn.lock"]},javascriptreact:{extensions:[".jsx"]},legend:{extensions:[".pure"]}};p();p();var QEn=[".ejs",".erb",".haml",".hbs",".j2",".jinja",".jinja2",".liquid",".mustache",".njk",".php",".pug",".slim",".webc"],qEn={".php":[".blade"]},Pq=Object.keys(V3).flatMap(t=>V3[t].extensions);var NQt=ae(require("node:path"));var $ue=class{constructor(e,r,n){this.languageId=e;this.isGuess=r;this.fileExtension=n}static{a(this,"Language")}},Wxe=class{static{a(this,"LanguageDetection")}},OQt=new Map,Gue=new Map;for(let[t,{extensions:e,filenames:r}]of Object.entries(V3)){for(let n of e)OQt.set(n,[...OQt.get(n)??[],t]);for(let n of r??[])Gue.set(n,[...Gue.get(n)??[],t])}var BQt=class extends Wxe{static{a(this,"FilenameAndExensionLanguageDetection")}detectLanguage(e){let r=ho(e.uri),n=NQt.extname(r).toLowerCase(),o=this.extensionWithoutTemplateLanguage(r,n),s=this.detectLanguageId(r,o),c=this.computeFullyQualifiedExtension(n,o);return s?new $ue(s.languageId,s.isGuess,c):new $ue(e.languageId,!0,c)}extensionWithoutTemplateLanguage(e,r){if(QEn.includes(r)){let n=e.substring(0,e.lastIndexOf(".")),o=NQt.extname(n).toLowerCase();if(o.length>0&&Pq.includes(o)&&this.isExtensionValidForTemplateLanguage(r,o))return o}return r}isExtensionValidForTemplateLanguage(e,r){let n=qEn[e];return!n||n.includes(r)}detectLanguageId(e,r){if(Gue.has(e))return{languageId:Gue.get(e)[0],isGuess:!1};let n=OQt.get(r)??[];if(n.length>0)return{languageId:n[0],isGuess:n.length>1};for(;e.includes(".");)if(e=e.replace(/\.[^.]*$/,""),Gue.has(e))return{languageId:Gue.get(e)[0],isGuess:!1}}computeFullyQualifiedExtension(e,r){return e!==r?r+e:e}},LQt=class extends Wxe{constructor(r){super();this.delegate=r}static{a(this,"GroupingLanguageDetection")}detectLanguage(r){let n=this.delegate.detectLanguage(r),o=n.languageId;return o==="c"||o==="cpp"?new $ue("cpp",n.isGuess,n.fileExtension):n}},FQt=class extends Wxe{constructor(r){super();this.delegate=r}static{a(this,"ClientProvidedLanguageDetection")}detectLanguage(r){return r.uri.startsWith("untitled:")||r.uri.startsWith("vscode-notebook-cell:")?new $ue(r.languageId,!0,""):this.delegate.detectLanguage(r)}},Tzo=new LQt(new FQt(new BQt));function RB({uri:t,languageId:e}){let r=Tzo.detectLanguage({uri:t,languageId:"UNKNOWN"});return r.languageId==="UNKNOWN"?e:r.languageId}a(RB,"detectLanguage");p();p();p();p();function wm(t){if(t.isCancellationRequested)throw new tYe}a(wm,"throwIfCancellationRequested");function e2(t){return t instanceof tYe?!0:t instanceof Error&&t.name===UQt&&t.message===UQt}a(e2,"isCancellationError");var tYe=class extends Error{static{a(this,"CancellationError")}constructor(){super(UQt),this.name=this.message}},UQt="Canceled",rYe=class{constructor(){this.items=[]}static{a(this,"Stack")}push(e){this.items.push(e)}pop(){return this.items.pop()}peek(){return this.items[this.items.length-1]}tryPeek(){return this.items.length>0}toArray(){return this.items}};function mJ(t){switch(t){case 0:case 2:case 7:case 8:case 11:case 12:case 13:case 14:return!0;default:return!1}}a(mJ,"isTypeDefinition");var Lu=class t{static{a(this,"TextRange")}static{this.empty=new t(0,0)}constructor(e,r){this.start=e,this.length=r}static fromBounds(e,r){return new t(e,r-e)}get end(){return this.start+this.length}contains(e){return this.start<=e&&this.end>=e}containsRange(e){return this.start<=e.start&&this.end>=e.end}equals(e){return this.start===e.start&&this.length===e.length}getText(e){return e.slice(this.start,this.end)}getTextWithIndentation(e,r){let n=[],o=this.start;for(o=jEn(e,e.length,o),HEn(n,r);o<this.end;)e[o]!=="\r"&&e[o]!==`
|
|
1916
|
+
] @statement`}};var xB=class{constructor(e,r,n){this.languageId=e;this.prefix=r;this.completion=n}static{a(this,"BlockTrimmer")}static isSupported(e){return $0.isSupported(e)}static isTrimmedByDefault(e){return $0.isTrimmedByDefault(e)}async withParsedStatementTree(e){var n=[];try{let r=DNt(n,$0.create(this.languageId,this.prefix+this.completion,this.prefix.length,this.prefix.length+this.completion.length));await r.build();return await e(r)}catch(o){var s=o,c=!0}finally{MNt(n,s,c)}}trimmedCompletion(e){return e===void 0?this.completion:this.completion.substring(0,e)}getStatementAtCursor(e){return e.statementAt(Math.max(this.prefix.length-1,0))??e.statements[0]}getContainingBlockOffset(e){let r;if(e&&this.isCompoundStatement(e))r=e;else if(e){let n=e.parent;for(;n&&!this.isCompoundStatement(n);)n=n.parent;r=n}if(r){let n=this.asCompletionOffset(r.node.endIndex);if(n&&this.completion.substring(n).trim()!=="")return n}}hasNonStatementContentAfter(e){if(!e||!e.nextSibling)return!1;let r=this.asCompletionOffset(e.node.endIndex),n=this.asCompletionOffset(e.nextSibling.node.startIndex);return this.completion.substring(Math.max(0,r??0),Math.max(0,n??0)).trim()!==""}asCompletionOffset(e){return e===void 0?void 0:e-this.prefix.length}isCompoundStatement(e){return e.isCompoundStatementType||e.children.length>0}};var XWe=class extends xB{constructor(r,n,o,s=3,c=7){super(r,n,o);this.lineLimit=s;this.lookAhead=c;let l=[...this.completion.matchAll(/\n/g)],u=this.lineLimit+this.lookAhead;l.length>=this.lineLimit&&this.lineLimit>0&&(this.limitOffset=l[this.lineLimit-1].index),l.length>=u&&u>0&&(this.lookAheadOffset=l[u-1].index)}static{a(this,"TerseBlockTrimmer")}async getCompletionTrimOffset(){return await this.withParsedStatementTree(r=>{let n=r.statementAt(this.stmtStartPos()),o=this.getContainingBlockOffset(n);return o=this.trimAtFirstBlankLine(o),n&&(o=this.trimAtStatementChange(n,o)),this.limitOffset&&this.lookAheadOffset&&(o===void 0||o>this.lookAheadOffset)?this.limitOffset:o})}stmtStartPos(){let r=this.completion.match(/\S/);return r&&r.index!==void 0?this.prefix.length+r.index:Math.max(this.prefix.length-1,0)}trimAtFirstBlankLine(r){let n=[...this.trimmedCompletion(r).matchAll(/\r?\n\s*\r?\n/g)];for(;n.length>0&&(r===void 0||r>n[0].index);){let o=n.shift();if(this.completion.substring(0,o.index).trim()!=="")return o.index}return r}trimAtStatementChange(r,n){let o=this.prefix.length,s=this.prefix.length+(n??this.completion.length);if(r.node.endIndex>o&&this.isCompoundStatement(r))return r.nextSibling&&r.node.endIndex<s?this.asCompletionOffset(r.node.endIndex):n;let c=r,l=r.nextSibling;for(;l&&l.node.endIndex<=s&&!this.hasNonStatementContentAfter(c)&&!this.isCompoundStatement(l);)c=l,l=l.nextSibling;return l&&c.node.endIndex>o&&c.node.endIndex<s?this.asCompletionOffset(c.node.endIndex):n}};async function DEn(t,e){var l=[];try{let r=t.getText();let n=t.offsetAt(e);let o=DNt(l,$0.create(t.detectedLanguageId,r,0,r.length));await o.build();let s=o.statementAt(n);if(!s)return"non-block";if(!s.isCompoundStatementType&&s.children.length===0)return s.parent&&!s.nextSibling&&s.node.endPosition.row<=e.line?"block-end":s.parent?"mid-block":"non-block";if(s.children.length===0)return"empty-block";let c=s.children[s.children.length-1];if(n<c.node.startIndex)return"mid-block";return"block-end"}catch(u){var d=u,f=!0}finally{MNt(l,d,f)}}a(DEn,"getBlockPositionType");p();function ZVo(t){return t.HTTPS_PROXY||t.https_proxy||t.HTTP_PROXY||t.http_proxy}a(ZVo,"getProxyFromEnvironment");function XVo(t){return t.NODE_TLS_REJECT_UNAUTHORIZED!=="0"}a(XVo,"getRejectUnauthorizedFromEnvironment");var MEn=b.Object({proxy:b.Optional(b.String()),proxyStrictSSL:b.Optional(b.Boolean()),proxyAuthorization:b.Optional(b.String()),proxyKerberosServicePrincipal:b.Optional(b.String()),noProxy:b.Optional(b.Array(b.String()))});function NEn(t){let e=ZVo(t),r=$xe({proxy:e,proxyStrictSSL:XVo(t)}),n=t.GH_COPILOT_KERBEROS_SERVICE_PRINCIPAL??t.GITHUB_COPILOT_KERBEROS_SERVICE_PRINCIPAL??t.AGENT_KERBEROS_SERVICE_PRINCIPAL;return n&&(r.proxyKerberosServicePrincipal=n),r}a(NEn,"getHttpSettingsFromEnvironment");function $xe(t){if(!t.proxy)return{...t,proxy:""};try{let{protocol:e,host:r,username:n,password:o,pathname:s,search:c,hash:l}=new URL(t.proxy);return{...t,proxy:`${e}//${r}${s}${c}${l}`,proxyAuthorization:t.proxyAuthorization||ezo(n,o),noProxy:t.noProxy||[]}}catch{return{...t,proxy:""}}}a($xe,"normalizeHttpSettings");function ezo(t,e){return!t||!e?"":`${decodeURIComponent(t)}:${decodeURIComponent(e)}`}a(ezo,"getAuth");var Vxe={};zi(Vxe,{anthropicClaude:()=>czo,build:()=>ozo,buildType:()=>szo,default:()=>hzo,dependencies:()=>dzo,description:()=>nzo,devDependencies:()=>uzo,displayName:()=>rzo,engines:()=>azo,name:()=>tzo,overrides:()=>fzo,overridesComments:()=>pzo,scripts:()=>lzo,version:()=>izo});var tzo="copilot",rzo="GitHub Copilot",nzo="Your AI pair programmer",izo="1.555.6",ozo="189",szo="prod",azo={node:">=22.13.0",npm:">=11.6.0 <12.0.0"},czo={cliPackageVersion:"2.1.159"},lzo={build:"tsx esbuild.ts",clean:"./script/build/clean.sh",compress:"tsx ./script/compressTokenizer.ts",generate_languages:"tsx script/generateLanguages.ts && prettier --write lib/src/language/generatedLanguages.ts",get_token:"tsx script/deviceFlow.ts --save-as-test-token",lint:'run-p --aggregate-output "lint:*"',"lint:deps":"depcruise -c .dependency-cruiser.js .","lint:eslint":"eslint -f visualstudio --quiet --cache .","lint:gdpr":"tsx script/checkGdprComments.ts","lint:overrides":"tsx script/checkOverridesDocumented.ts","lint:prettier":"prettier --check . 2>&1","lint:types":"tsc --noEmit",manage_auth_db:"tsx script/manageAuthDb.ts",prebuild:"npm install",pretest:"npm run build","pretest:headless":"npm run build","pretest:agent-e2e-full":"npm run build","pretest:agent-e2e":"npm run build","pretest:lsp-client":"npm run build","pretest:lib-e2e":"npm run build",prewatch:"npm run build","prewatch:esbuild":"npm run build",start:"npm run watch",test:'npm-run-all "test:headless --ignore-scripts" lint',"test:headless":'npm-run-all test:lib test:agent "test:lib-e2e --ignore-scripts" test:prompt "test:lsp-client --ignore-scripts" lint',"test:agent":'mocha "agent/src/**/*.test.{ts,tsx}"',"test:agent-e2e":'mocha "agent/e2e/**/*.test.{ts,tsx}" --exclude "agent/e2e/**/*.daily.test.{ts,tsx}"',"test:agent-e2e-full":'mocha "agent/e2e/**/*.test.{ts,tsx}"',"test:workflow":"node --test .github/workflows/scripts/release-merge-back/release-merge-back.test.mjs","test:lib":'mocha "lib/src/**/*.test.{ts,tsx}" "script/**/*.test.{ts,tsx}" --exclude "lib/src/**/*.int.test.ts"',"test:lib-int":'mocha "lib/src/**/*.int.test.ts"',"test:lib-e2e":'mocha "lib/e2e/src/**/*.test.{ts,tsx}" --exclude "lib/e2e/src/prompt/**/*.test.ts"',"test:lib-e2e-no-ci":'mocha "lib/e2e/no-ci/**/*.test.{ts,tsx}"',"test:lib-prompt-e2e":'mocha "lib/e2e/src/prompt/prompt.test.ts"',"test:lib-prompt-e2e-perf":"INCLUDE_PERFORMANCE=true npm run test:lib-prompt-e2e","test:lsp-client":'mocha "lsp-client/test/*.test.{ts,tsx}"',"test:pkg-runtime":"tsx script/smokeCopilotRuntimePkg.ts","test:prompt":'mocha "prompt/test/**/*.test.{ts,tsx}"',"test:prepare-msbench":"tsx script/setupMsbench.ts","test:run-msbench":"tsx lsp-client/test/msbench/agent/index.ts",watch:'run-p "watch:esbuild --ignore-scripts" "watch:types -- --preserveWatchOutput"',"watch:esbuild":"tsx esbuild.ts --watch","watch:types":"tsc --noEmit --watch"},uzo={"@azure/identity":"^4.13.2","@azure/keyvault-secrets":"^4.11.2","@github/prettier-config":"0.0.6","@limegrass/eslint-plugin-import-alias":"^1.6.1","@microsoft/agent-host-protocol":"^1.0.0","@types/crypto-js":"^4.2.2","@types/diff":"^8.0.0","@types/git-url-parse":"^16.0.2","@types/js-yaml":"^4.0.6","@types/kerberos":"^1.1.2","@types/markdown-it":"^14.2.0","@types/mocha":"^10.0.10","@types/node":"~22.13.0","@types/semver":"^7.8.0","@types/sinon":"^22.0.0","@types/toposort":"^2.0.7","@types/vscode":"1.137.0","@types/which":"^3.0.0","@types/yargs":"^17.0.35","@vscode/tree-sitter-wasm":"0.0.5-php.2","@yao-pkg/pkg":"^6.22.0",boxen:"^8.0.1",chalk:"^5.6.2","dependency-cruiser":"^18.2.0",esbuild:"^0.28.2","esbuild-plugin-copy":"^2.1.1",eslint:"^9.39.5","eslint-formatter-visualstudio":"^9.0.1","eslint-plugin-mocha":"^10.5.0",globals:"^17.12.0","js-yaml":"^4.2.0",mocha:"^11.8.0","mocha-junit-reporter":"^2.2.1","mocha-multi-reporters":"^1.5.2","npm-run-all":"^4.1.5",openai:"^7.15.0",prettier:"^3.5.3","prettier-plugin-organize-imports":"^4.2.0","simple-git":"^3.36.0",sinon:"^22.1.0","tree-sitter-bash":"^0.23.0","tree-sitter-powershell":"0.25.9","ts-dedent":"^2.3.0",tsx:"^4.23.12",typescript:"^5.9.3","typescript-eslint":"^8.39.1","vscode-dts":"^0.3.3"},dzo={"@adobe/helix-fetch":"github:devm33/helix-fetch#2a08fa939591a0e14f34f611adcc3ed767579e9a","@agentclientprotocol/sdk":"^1.4.0","@anthropic-ai/claude-agent-sdk":"0.3.159","@anthropic-ai/sdk":"^0.98.0","@github/copilot":"1.0.96","@github/copilot-sdk":"1.0.20","@github/keytar":"7.10.6","@github/memoize":"1.1.5","@microsoft/1ds-core-js":"^4.4.3","@microsoft/1ds-post-js":"^4.4.3","@microsoft/applicationinsights-core-js":"^3.4.3","@microsoft/applicationinsights-web-basic":"^3.4.3","@modelcontextprotocol/sdk":"^1.30.0","@octokit/graphql":"^9.0.5","@octokit/rest":"^22.0.1","@parcel/watcher":"^2.6.0","@sinclair/typebox":"^0.34.52","@vscode/chat-lib":"0.60.0","@vscode/codicons":"^0.0.45","@vscode/deviceid":"github:ghc-jetbrains/vscode-deviceid#f0e5738cd362ef20a09aeb30c3a8be99a9a710f5","@vscode/policy-watcher":"^1.4.0","@vscode/prompt-tsx":"^0.4.0-alpha.9","@vscode/webview-ui-toolkit":"^1.3.1","crypto-js":"^4.2.0",diff:"^9.0.0",dldr:"^0.0.10",events:"^3.3.0","git-url-parse":"^16.1.0",glob:"^11.1.0","jsonc-parser":"^3.3.1",kerberos:"^2.2.0","mac-ca":"^3.1.3","markdown-it":"^15.0.2",minimatch:"^10.2.6",open:"^11.0.3",semver:"^7.8.5",shiki:"~1.15.0","source-map-support":"^0.5.21",toposort:"^2.0.2",undici:"^7.29.1",uuid:"^14.0.0","vscode-languageclient":"^9.0.0","vscode-languageserver":"^9.0.0","vscode-languageserver-protocol":"^3.17","vscode-languageserver-textdocument":"~1.0.14","vscode-uri":"^3.2.0","web-tree-sitter":"^0.23.0",which:"^7.0.0","windows-ca-certs":"^0.2.2",ws:"^8.21.3",yargs:"^18.1.0"},fzo={"@yao-pkg/pkg-fetch":"https://github.com/ghc-jetbrains/pkg-fetch/releases/download/v3.6-node22.23.4-r2/yao-pkg-pkg-fetch-3.6.6-node22.23.4.2.tgz",fsevents:"<0","@github/copilot-linuxmusl-arm64":"<0","@github/copilot-linuxmusl-x64":"<0",bindings:"npm:bundled-bindings@^1.5.0",jws:"^3.2.3",tar:"7.5.21","serialize-javascript":"^7.0.5",uuid:"^14.0.0","ip-address":"^10.1.1","fast-uri":"^3.1.7"},pzo={"//":"Rationale for each entry in `overrides`. Required by `npm run lint:overrides` (script/checkOverridesDocumented.ts). Each value should cover: why (CVE/GHSA or build-hack reason), which direct dep pulls in the vulnerable transitive, and the remove-when condition.","@yao-pkg/pkg-fetch":"Node.js October 2026 security release: @yao-pkg/pkg 6.22.0 pins pkg-fetch 3.6.5, and even pkg 6.23.0/pkg-fetch 3.6.6 still select Node 22.23.2. This compiled fork tarball selects Node 22.23.4 and verifies all eleven mirrored upstream runtimes against committed SHA256 values, including Linux static fabricators needed for cross-architecture packaging. Drop when the official pkg dependency selects Node >= 22.23.4 on the Node 22 line.",fsevents:"Build hack: macOS-only optional native dep; '<0' is an impossible semver that force-skips install on Linux/Windows pkg builds. Permanent \u2014 keep until @yao-pkg/pkg handles macOS-only optionalDependencies natively. See commit d635096c.","@github/copilot-linuxmusl-arm64":"Build hack: @github/copilot declares a Linux musl optional runtime package, but CLS does not support musl. '<0' prevents npm from installing the unsupported runtime. Drop only if CLS adds musl support.","@github/copilot-linuxmusl-x64":"Build hack: @github/copilot declares a Linux musl optional runtime package, but CLS does not support musl. '<0' prevents npm from installing the unsupported runtime. Drop only if CLS adds musl support.",bindings:"Build hack: alias to bundled-bindings fork that resolves .node native addon paths after pkg/esbuild bundling. Required by kerberos. Drop when upstream `bindings` adopts platform-specific path resolution. See commits c4461665 and b55ece83.",jws:"CVE GHSA-869p-cjfg-cm3x (Improperly Verifies HMAC Signature). Pulled in by jsonwebtoken-family deps. Drop when all transitive consumers pin jws >= 3.2.3. See commit 2b5dc766.",tar:"CVE GHSA-9ppj-qmqm-q256 + GHSA-qffp-2rhf-9h96 (Symlink/Hardlink Path Traversal via Drive-Relative Linkpath), plus the 7.5.12..7.5.20 advisory run: GHSA-23hp-3jrh-7fpw / CVE-2026-59873 (critical, decompression DoS via unlimited input), GHSA-8x88-c5mf-7j5w / CVE-2026-59874 (infinite loop on negative entry size), GHSA-w8wr-v893-vjvp / CVE-2026-59871 (PAX numeric path type confusion), GHSA-gvwx-54wh-qm9j / CVE-2026-59875 (NUL byte in PAX path records), GHSA-vmf3-w455-68vh / CVE-2026-53655 (GNU long-name PAX size override file smuggling), GHSA-r292-9mhp-454m (uncontrolled recursion in mapHas/filesFilter). Pulled in by @yao-pkg/pkg (tar ^7.5.7) and node-gyp / native-build deps. Drop when transitive consumers bump tar >= 7.5.21. Dependabot alerts #170, #169, #179, #171, #168, #146. See commit e2dff0f3.","serialize-javascript":"CVE GHSA-5c6j-r48x-rmvq (RCE via RegExp.flags / Date.toISOString) + GHSA-qj8w-gfj5-8c6v (ReDoS). Pulled in by mocha 11.x (^6.0.2). Dev-only. Drop when mocha bumps to a release that carries serialize-javascript >= 7.0.3. See commit d49f75fd.",uuid:"CVE GHSA-w5hq-g745-h8pq (missing buffer bounds checks in v3/v5/v6). Pulled in by msal-node and @vscode/deviceid as uuid 8.x/9.x. Drop when both upgrade to uuid >= 14. Dependabot alert #128. See commit 6315f3f8.","ip-address":"CVE GHSA-v2v4-37r5-5v8g (XSS in Address6 HTML-emitting methods: group/link/spanAll and AddressError.parseMessage). Pulled in by @modelcontextprotocol/sdk -> express-rate-limit. Not exploitable here (we don't render HTML or call the affected methods), but the override clears the alert. Drop when express-rate-limit bumps to a release carrying ip-address >= 10.1.1. Dependabot alert #129. See PR #854.","fast-uri":"CVE-2026-6321 GHSA-q3j6-qgpj-74h6 (host confusion via percent-encoded authority delimiters) + CVE-2026-6322 GHSA-v39h-62p7-jpjc (path traversal via percent-encoded dot segments). Pulled in by @modelcontextprotocol/sdk -> ajv -> fast-uri. Drop when ajv bumps to a release carrying fast-uri >= 3.1.2. Dependabot alerts #132, #133."},hzo={name:tzo,displayName:rzo,description:nzo,version:izo,build:ozo,buildType:szo,engines:azo,anthropicClaude:czo,scripts:lzo,devDependencies:uzo,dependencies:dzo,overrides:fzo,overridesComments:pzo};var Ne={Enable:"enable",EnableQuotaThresholdWarning:"quota.enableThresholdWarning",McpGatewayAutoStart:"mcpGateway.autoStart",ShowEditorCompletions:"editor.showEditorCompletions",EnableAutoCompletions:"editor.enableAutoCompletions",DelayCompletions:"editor.delayCompletions",FilterCompletions:"editor.filterCompletions",FetchStrategy:"fetchStrategy",EnableBuiltInGitHubMcpServer:"enableBuiltInGitHubMcpServer",ToolConfirmAutoApprove:"agent.toolConfirmAutoApprove",AutoApproveUnmatchedTerminal:"agent.autoApproveUnmatchedTerminal",AutoApproveUnmatchedFileOp:"agent.autoApproveUnmatchedFileOp",TrustToolAnnotations:"agent.trustToolAnnotations",AutoApproveYoloMode:"agent.autoApproveYoloMode",EditorHandlesAllConfirmation:"agent.editorHandlesAllConfirmation",MaxToolCallingLoop:"agent.maxToolCallingLoop",AutoCompress:"agent.autoCompress",AnthropicThinkingBudgetToken:"agent.anthropicThinkingBudgetToken",EnableSkills:"agent.enableSkills",EnableOrgSkills:"agent.enableOrgSkills",EnableHooks:"agent.enableHooks",SystemHookTools:"agent.systemHookTools",EnableSandbox:"agent.sandbox.enabled",SandboxAddCurrentWorkingDirectory:"agent.sandbox.addCurrentWorkingDirectory",SandboxAuth:"agent.sandbox.auth",SandboxAllowDevToolAccess:"agent.sandbox.allowDevToolAccess",SandboxAllowBypass:"agent.sandbox.allowBypass",SandboxMcpServers:"agent.sandbox.sandboxMcpServers",SandboxLspServers:"agent.sandbox.sandboxLspServers",SandboxUserPolicy:"agent.sandbox.userPolicy",EnablePlugins:"agent.enablePlugins",EnableEnsemble:"agent.enableEnsemble",EnableCustomAgents:"agent.enableCustomAgents",EnableOrgCustomAgents:"agent.enableOrgCustomAgents",EnableOrgCustomInstructions:"agent.enableOrgCustomInstructions",UseSessionModelForBuiltinSubagents:"agent.useSessionModelForBuiltinSubagents",UseAgentsMd:"agent.useAgentsMdFile",UseNestedAgentsMd:"agent.useNestedAgentsMdFiles",UseClaudeMd:"agent.useClaudeMdFile",UseNestedClaudeMd:"agent.useNestedClaudeMdFiles",CompletionsDelay:"completionsDelay",CompletionsDebounce:"completionsDebounce",EnableThinking:"agent.enableThinking",TranscriptDirectory:"agent.transcriptDirectory",AgentDebugLogsDirectory:"agent.agentDebugLogsDirectory",ClaudeCliPath:"agent.claude.cliPath",CodexCliPath:"agent.codex.cliPath",OtelEnabled:"agent.otel.enabled",OtelEndpoint:"agent.otel.otlpEndpoint",OtelCaptureContent:"agent.otel.captureContent",OtelExporterType:"agent.otel.exporterType",OtelProtocol:"agent.otel.protocol",OtelOutfile:"agent.otel.outfile",OtelServiceName:"agent.otel.serviceName",OtelResourceAttributes:"agent.otel.resourceAttributes",NESExtendedRange:"nextEditSuggestions.extendedRange",NESEagerness:"nextEditSuggestions.eagerness",RelatedFilesVSCodeCSharp:"advanced.relatedFilesVSCodeCSharp",RelatedFilesVSCodeTypeScript:"advanced.relatedFilesVSCodeTypeScript",RelatedFilesVSCode:"advanced.relatedFilesVSCode",ContextProviders:"advanced.contextProviders",DebugOverrideLogLevels:"advanced.debug.overrideLogLevels",DebugFilterLogCategories:"advanced.debug.filterLogCategories",DebugSnippyOverrideUrl:"advanced.debug.codeRefOverrideUrl",DebugUseElectronFetcher:"advanced.debug.useElectronFetcher",DebugUseEditorFetcher:"advanced.debug.useEditorFetcher",UseSubsetMatching:"advanced.useSubsetMatching",ContextProviderTimeBudget:"advanced.contextProviderTimeBudget",DebugOverrideCapiUrl:"internal.capiUrl",DebugOverrideCapiUrlLegacy:"advanced.debug.overrideCapiUrl",DebugTestOverrideCapiUrl:"internal.capiTestUrl",DebugTestOverrideCapiUrlLegacy:"advanced.debug.testOverrideCapiUrl",DebugOverrideProxyUrl:"internal.completionsUrl",DebugOverrideProxyUrlLegacy:"advanced.debug.overrideProxyUrl",DebugTestOverrideProxyUrl:"internal.completionsTestUrl",DebugTestOverrideProxyUrlLegacy:"advanced.debug.testOverrideProxyUrl",DebugOverrideEngine:"internal.completionModel",DebugOverrideEngineLegacy:"advanced.debug.overrideEngine",AlwaysRequestMultiline:"internal.alwaysRequestMultiline",ModelAlwaysTerminatesSingleline:"internal.modelAlwaysTerminatesSingleline",TrimCompletionsAggressively:"internal.trimCompletionsAggressively",UseWorkspaceContextCoordinator:"internal.useWorkspaceContextCoordinator",ShowWorkspaceContextDebugger:"internal.showWorkspaceContextDebugger",IncludeNeighboringFiles:"internal.includeNeighboringFiles",ExcludeRelatedFiles:"internal.excludeRelatedFiles",DebugOverrideCppHeadersEnableSwitch:"internal.cppHeadersEnableSwitch",NESXTab:"internal.useXTab",NESUseExplicitRejection:"internal.nesUseExplicitRejection",NESModelConfiguration:"internal.nesModelConfiguration",UseSplitContextPrompt:"internal.useSplitContextPrompt",UseCompletionsComparisonPanel:"internal.useCompletionsComparisonPanel",ComparisonPanelModelIds:"internal.comparisonPanelModelIds",ComparisonPanelRandomizedMode:"internal.comparisonPanelRandomizedMode",UseFetchFetcher:"internal.useFetchFetcher",UseChatLibCompletions:"internal.useChatLibCompletions",HookErrorOccurredStackTrace:"internal.hookErrorOccurredStackTrace",AppendPromptTokenCache:"internal.appendPromptTokenCache",PromptPersistBasePath:"internal.promptPersistBasePath",AnthropicMessagesEndpoint:"internal.anthropic.messagesEndpoint",UseHelixFetcher:"internal.useHelixFetcher",EnableMapCodeFallback:"internal.enableMapCodeFallback",SearchAgent:"internal.searchAgent",EnsembleEnabledOverride:"internal.ensembleEnabledOverride",PerfEnabled:"internal.perf.enabled",AuthTokenEncryption:"internal.auth.tokenEncryption",EnableWorkspaceIndex:"workspaceIndex.enabled"};function OEn(t){return["server","parsingandserver"].includes(t)}a(OEn,"shouldDoServerTrimming");var XD=class{static{a(this,"BlockModeConfig")}},Hue=class extends XD{static{a(this,"ConfigBlockModeConfig")}forLanguage(e,r,n){let o=e.get(sr).overrideBlockMode(n);if(o)return MQt(o,r);let s=e.get(sr).enableProgressiveReveal(n);return(Et(e,Ne.AlwaysRequestMultiline)??s)||xB.isTrimmedByDefault(r)?MQt("moremultiline",r):r=="ruby"?"parsing":XI(r)?"parsingandserver":"server"}};function mzo(t){return["parsing","parsingandserver","moremultiline"].includes(t)}a(mzo,"blockModeRequiresTreeSitter");function MQt(t,e){return t==="moremultiline"&&$0.isSupported(e)?t:mzo(t)&&!XI(e)?"server":t}a(MQt,"toApplicableBlockMode");var Fn=class{static{a(this,"ConfigProvider")}getRawConfig(e){return this.getExplicitlySetConfigs().get(e)}requireReady(){return Promise.resolve()}},jue=class extends Fn{constructor(){super(...arguments);this.onDidChangeCopilotSettings=a(()=>({dispose:a(()=>{},"dispose")}),"onDidChangeCopilotSettings");this.onDidChangeHttpSettings=this.onDidChangeCopilotSettings}static{a(this,"DefaultsOnlyConfigProvider")}getConfig(r){return gzo(r)}getOptionalConfig(r){return Azo(r)}dumpForTelemetry(){return{}}getExplicitlySetConfigs(){return new Map}getHttpSettings(){return{proxy:""}}},fJ=class extends Fn{constructor(r,n){super();this.baseConfigProvider=r;this.overrides=n;this.copilotEmitter=new no;this.onDidChangeCopilotSettings=this.copilotEmitter.event;this.didChangeHttpSettingsEmitter=new no;this.onDidChangeHttpSettings=this.didChangeHttpSettingsEmitter.event;this.httpSettings=this.baseConfigProvider.getHttpSettings()}static{a(this,"InMemoryConfigProvider")}getOptionalOverride(r){return this.overrides.get(r)}getConfig(r){return this.getOptionalOverride(r)??this.baseConfigProvider.getConfig(r)}getOptionalConfig(r){return this.getOptionalOverride(r)??this.baseConfigProvider.getOptionalConfig(r)}getRawConfig(r){return this.overrides.has(r)?this.overrides.get(r):this.baseConfigProvider.getRawConfig(r)}setConfig(r,n){this.setCopilotSettings({[r]:n})}setCopilotSettings(r){for(let[n,o]of Object.entries(r))o!==void 0?this.overrides.set(n,o):this.overrides.delete(n);this.copilotEmitter.fire(this)}getExplicitlySetConfigs(){let r=new Map(this.baseConfigProvider.getExplicitlySetConfigs());for(let[n,o]of this.overrides)r.set(n,o);return r}getHttpSettings(){return this.httpSettings}setHttpSettings(r){let n=$xe(r);this.httpSettings=n,this.didChangeHttpSettingsEmitter.fire(this.getHttpSettings())}dumpForTelemetry(){let r=this.baseConfigProvider.dumpForTelemetry();for(let n of[Ne.ShowEditorCompletions,Ne.EnableAutoCompletions,Ne.DelayCompletions,Ne.FilterCompletions]){let o=this.overrides.get(n);o!==void 0&&(r[n]=JSON.stringify(o))}return r}};function BEn(t,e){let r=t,n=[];for(let o of e.split(".")){let s=[...n,o].join(".");r&&typeof r=="object"&&s in r?(r=r[s],n.length=0):n.push(o)}if(!(r===void 0||n.length>0))return r}a(BEn,"getConfigKeyRecursively");function gzo(t){if(eYe.has(t))return eYe.get(t);throw new Error(`Missing config default value: ${NNt}.${t}`)}a(gzo,"getConfigDefaultForKey");function Azo(t){return eYe.get(t)}a(Azo,"getOptionalConfigDefaultForKey");function zxe(t){return t.get(Fn).getExplicitlySetConfigs()}a(zxe,"getExplicitlySetConfigs");var yzo={[Ne.DebugOverrideCppHeadersEnableSwitch]:!1,[Ne.RelatedFilesVSCodeCSharp]:!1,[Ne.RelatedFilesVSCodeTypeScript]:!1,[Ne.RelatedFilesVSCode]:!1,[Ne.IncludeNeighboringFiles]:!1,[Ne.ExcludeRelatedFiles]:!1,[Ne.ContextProviders]:[],[Ne.DebugUseEditorFetcher]:null,[Ne.DebugUseElectronFetcher]:null,[Ne.DebugOverrideLogLevels]:{},[Ne.DebugSnippyOverrideUrl]:"",[Ne.AgentDebugLogsDirectory]:void 0,[Ne.ClaudeCliPath]:void 0,[Ne.CodexCliPath]:void 0,[Ne.OtelEnabled]:!1,[Ne.OtelEndpoint]:void 0,[Ne.OtelCaptureContent]:!1,[Ne.OtelExporterType]:"otlp-http",[Ne.OtelProtocol]:"",[Ne.OtelOutfile]:"",[Ne.OtelServiceName]:"",[Ne.OtelResourceAttributes]:{},[Ne.FetchStrategy]:"auto",[Ne.EnableBuiltInGitHubMcpServer]:!1,[Ne.ToolConfirmAutoApprove]:!1,[Ne.AutoApproveUnmatchedTerminal]:void 0,[Ne.AutoApproveUnmatchedFileOp]:void 0,[Ne.TrustToolAnnotations]:!1,[Ne.AutoApproveYoloMode]:!1,[Ne.EditorHandlesAllConfirmation]:!1,[Ne.MaxToolCallingLoop]:25,[Ne.AutoCompress]:!1,[Ne.AnthropicThinkingBudgetToken]:1024,[Ne.EnableSkills]:!1,[Ne.EnableOrgSkills]:!0,[Ne.EnableHooks]:!1,[Ne.SystemHookTools]:void 0,[Ne.EnableSandbox]:!1,[Ne.SandboxAddCurrentWorkingDirectory]:void 0,[Ne.SandboxAuth]:void 0,[Ne.SandboxAllowDevToolAccess]:void 0,[Ne.SandboxAllowBypass]:void 0,[Ne.SandboxMcpServers]:void 0,[Ne.SandboxLspServers]:void 0,[Ne.SandboxUserPolicy]:void 0,[Ne.EnablePlugins]:!1,[Ne.EnableEnsemble]:!0,[Ne.EnableCustomAgents]:!0,[Ne.EnableOrgCustomAgents]:!0,[Ne.EnableOrgCustomInstructions]:!0,[Ne.UseSessionModelForBuiltinSubagents]:!1,[Ne.UseAgentsMd]:!1,[Ne.UseNestedAgentsMd]:!1,[Ne.UseClaudeMd]:!1,[Ne.UseNestedClaudeMd]:!1,[Ne.UseSubsetMatching]:null,[Ne.ContextProviderTimeBudget]:void 0,[Ne.DebugOverrideCapiUrl]:"",[Ne.DebugTestOverrideCapiUrl]:"",[Ne.DebugOverrideProxyUrl]:"",[Ne.DebugTestOverrideProxyUrl]:"",[Ne.DebugOverrideEngine]:"",[Ne.AlwaysRequestMultiline]:void 0,[Ne.ModelAlwaysTerminatesSingleline]:void 0,[Ne.TrimCompletionsAggressively]:void 0,[Ne.CompletionsDebounce]:void 0,[Ne.NESXTab]:void 0,[Ne.UseWorkspaceContextCoordinator]:void 0,[Ne.ShowWorkspaceContextDebugger]:!1,[Ne.CompletionsDelay]:void 0,[Ne.UseSplitContextPrompt]:void 0,[Ne.UseCompletionsComparisonPanel]:void 0,[Ne.ComparisonPanelModelIds]:void 0,[Ne.ComparisonPanelRandomizedMode]:void 0,[Ne.UseFetchFetcher]:void 0,[Ne.UseChatLibCompletions]:void 0,[Ne.TranscriptDirectory]:void 0,[Ne.EnableThinking]:!0,[Ne.ShowEditorCompletions]:void 0,[Ne.EnableAutoCompletions]:void 0,[Ne.DelayCompletions]:void 0,[Ne.FilterCompletions]:void 0,[Ne.Enable]:{"*":!0,plaintext:!1,markdown:!1,scminput:!1},[Ne.EnableQuotaThresholdWarning]:!0,[Ne.McpGatewayAutoStart]:!1,[Ne.DebugFilterLogCategories]:[],[Ne.DebugOverrideEngineLegacy]:"",[Ne.DebugTestOverrideProxyUrlLegacy]:"",[Ne.DebugOverrideProxyUrlLegacy]:"",[Ne.DebugTestOverrideCapiUrlLegacy]:"",[Ne.DebugOverrideCapiUrlLegacy]:"",[Ne.HookErrorOccurredStackTrace]:!1,[Ne.NESUseExplicitRejection]:!1,[Ne.NESModelConfiguration]:void 0,[Ne.AppendPromptTokenCache]:"",[Ne.PromptPersistBasePath]:void 0,[Ne.AnthropicMessagesEndpoint]:"",[Ne.UseHelixFetcher]:"",[Ne.EnableMapCodeFallback]:"enabled",[Ne.SearchAgent]:"",[Ne.EnsembleEnabledOverride]:"",[Ne.PerfEnabled]:"",[Ne.NESExtendedRange]:!1,[Ne.NESEagerness]:"auto",[Ne.AuthTokenEncryption]:"",[Ne.EnableWorkspaceIndex]:!1},eYe=new Map(Object.entries(yzo));for(let t of Object.values(Ne))if(!eYe.has(t))throw new Error(`Missing config default value ${NNt}.${t}`);function Et(t,e){return t.get(Fn).getConfig(e)}a(Et,"getConfig");function qv(t){let e=Et(t,Ne.EnableWorkspaceIndex);return e===!0||e==="true"}a(qv,"isSemanticSearchEnabled");function Qon(t){return t.get(Fn).dumpForTelemetry()}a(Qon,"dumpForTelemetry");var Is=class{constructor(){this.packageJson=Vxe}static{a(this,"BuildInfo")}isProduction(){return this.getBuildType()!=="dev"}getBuildType(){return this.packageJson.buildType}getVersion(){return this.packageJson.version}getDisplayVersion(){return this.getBuildType()==="dev"?`${this.getVersion()}-dev`:this.getVersion()}getBuild(){return this.packageJson.build}getName(){return this.packageJson.name}};function $Nt(t){return t.get(Is).isProduction()}a($Nt,"isProduction");function yun(t){return t.get(Is).getBuildType()==="dev"}a(yun,"isDevBuild");function hQ(t){return t.get(Is).getBuildType()}a(hQ,"getBuildType");function qon(t){return t.get(Is).getBuild()}a(qon,"getBuild");function bI(t){return t.get(Is).getVersion()}a(bI,"getVersion");var _a=class{constructor(e,r,n,o="none",s="desktop"){this.sessionId=e;this.machineId=r;this.devDeviceId=n;this.remoteName=o;this.uiKind=s}static{a(this,"EditorSession")}};function fI({name:t,version:e}){return`${t}/${e}`}a(fI,"formatNameAndVersion");var vr=class{static{a(this,"EditorAndPluginInfo")}getCopilotIntegrationId(){}getEditorPluginSpecificFilters(){return[]}getEditorIdentity(){return AYr({editor:this.getEditorInfo(),plugin:this.getEditorPluginInfo()})}isEditorPluginInfoKnown(){return!0}};function CWe(t){let e=t.getCopilotIntegrationId();if(e)return e;switch(t.getEditorPluginInfo().name){case"copilot-intellij":return"jetbrains-chat";case"copilot":case"copilot-vs":return;default:return"jetbrains-chat"}}a(CWe,"getIntegrationId");function TE(t){let e=t.get(vr);return{"Editor-Version":fI(e.getEditorInfo()),"Editor-Plugin-Version":fI(e.getEditorPluginInfo()),"Copilot-Language-Server-Version":bI(t)}}a(TE,"editorVersionHeaders");var LEn="Iv1.b507a08c87ecfe98",Ezo="350ee525b5da0e4a54c6e8e043edc1b99cc02f19",Ple="Ov23liV9UpD7Rnfnskm3",_zo="5509a52e4c525cd594a6fba9147ff6cc2388dd9f",vzo={[LEn]:Ezo,[Ple]:_zo},_h=class{static{a(this,"GitHubAppInfo")}findAppIdToAuthenticate(){return this.githubAppId??LEn}findAppSecretToAuthenticate(){let e=this.findAppIdToAuthenticate(),r=vzo[e];if(!r)throw new Error(`GitHubAppInfo: No app secret found for app ID: ${e}`);return r}};var rr=class{static{a(this,"Fetcher")}getImplementation(){return this}};function pJ(t,e,r,n,o,s,c,l,u,d,f,h,m=!1,g=[]){let A=l?.["x-api-key"],y=m||typeof A=="string"&&A.length>0,E={...l,...y?{}:{Authorization:`Bearer ${r}`},...TE(t)};d===void 0&&(E["Openai-Organization"]="github-copilot",E["X-Request-Id"]=o,E["VScode-SessionId"]=t.get(_a).sessionId,E["VScode-MachineId"]=t.get(_a).machineId,E["X-GitHub-Api-Version"]="2026-01-09"),n&&(E["OpenAI-Intent"]=n);let _={method:"POST",headers:E,json:s,timeout:u};if(f&&h){let T=[...r?[r]:[],...g,...Object.entries(E).filter(([w,R])=>R.length>0&&sQe.has(w.toLowerCase())).map(([,w])=>w)];f.logRequest({timestamp:new Date().toISOString(),requestId:o,method:"POST",url:e,headers:E,messages:h,body:s,sensitiveValues:T})}let v=t.get(rr);if(c){let T=new AbortController;c.onCancellationRequested(()=>{mt(t,"networking.cancelRequest",tr.createAndMarkAsIssued({headerRequestId:o})),T.abort()}),_.signal=T.signal}return v.fetch(e,_).catch(T=>{if(Czo(T))return mt(t,"networking.disconnectAll"),v.disconnectAll().then(()=>v.fetch(e,_));throw T})}a(pJ,"postRequest");function Czo(t){return t instanceof Error?t.message=="ERR_HTTP2_GOAWAY_SESSION"?!0:"code"in t?t.code=="ECONNRESET"||t.code=="ETIMEDOUT"||t.code=="ERR_HTTP2_INVALID_SESSION":!1:!1}a(Czo,"isInterruptedNetworkError");var bzo=new Set(["ERR_WORKER_OUT_OF_MEMORY","ENOMEM"]);function Szo(t){return bzo.has(t.code??"")||t.name==="RangeError"&&t.message==="WebAssembly.Memory(): could not allocate memory"}a(Szo,"isOomError");function hJ(t,e,r,n=zr){if(!dh(e)){if(e instanceof Error){let o=e;Szo(o)?t.get(Us).setWarning("cls",{message:"Out of memory"}):o.code==="EMFILE"||o.code==="ENFILE"?t.get(Us).setWarning("cls",{message:"Too many open files"}):o.code==="CopilotPromptLoadFailure"?t.get(Us).setWarning("cls",{message:"Corrupted Copilot installation"}):`${o.code}`.startsWith("CopilotPromptWorkerExit")?t.get(Us).setWarning("cls",{message:"Worker unexpectedly exited"}):o.syscall==="uv_cwd"&&o.code==="ENOENT"&&t.get(Us).setWarning("cls",{message:"Current working directory does not exist"})}n.exception(t,e,r)}}a(hJ,"handleException");function FEn(t){process.addListener("uncaughtException",r=>{hJ(t,r,"uncaughtException")});let e=!1;process.addListener("unhandledRejection",r=>{if(!e)try{e=!0,hJ(t,r,"unhandledRejection")}finally{e=!1}})}a(FEn,"registerDefaultHandlers");function UEn(){wq("o200k_base").catch(()=>{})}a(UEn,"prewarmTokenizers");p();p();p();var V3={abap:{extensions:[".abap"]},aspdotnet:{extensions:[".asax",".ascx",".ashx",".asmx",".aspx",".axd"]},bat:{extensions:[".bat",".cmd"]},bibtex:{extensions:[".bib",".bibtex"]},blade:{extensions:[".blade",".blade.php"]},BluespecSystemVerilog:{extensions:[".bsv"]},c:{extensions:[".c",".cats",".h",".h.in",".idc"]},csharp:{extensions:[".cake",".cs",".cs.pp",".csx",".linq"]},cpp:{extensions:[".c++",".cc",".cp",".cpp",".cppm",".cxx",".h",".h++",".hh",".hpp",".hxx",".idl",".inc",".inl",".ino",".ipp",".ixx",".rc",".re",".tcc",".tpp",".txx",".i"]},cobol:{extensions:[".cbl",".ccp",".cob",".cobol",".cpy"]},css:{extensions:[".css",".wxss"]},clojure:{extensions:[".bb",".boot",".cl2",".clj",".cljc",".cljs",".cljs.hl",".cljscm",".cljx",".edn",".hic"],filenames:["riemann.config"]},ql:{extensions:[".ql",".qll"]},coffeescript:{extensions:["._coffee",".cake",".cjsx",".coffee",".iced"],filenames:["Cakefile"]},cuda:{extensions:[".cu",".cuh"]},dart:{extensions:[".dart"]},dockerfile:{extensions:[".containerfile",".dockerfile"],filenames:["Containerfile","Dockerfile"]},dotenv:{extensions:[".env"],filenames:[".env",".env.ci",".env.dev",".env.development",".env.development.local",".env.example",".env.local",".env.prod",".env.production",".env.sample",".env.staging",".env.test",".env.testing"]},html:{extensions:[".ect",".ejs",".ejs.t",".jst",".hta",".htm",".html",".html.hl",".html5",".inc",".jsp",".njk",".tpl",".twig",".wxml",".xht",".xhtml",".phtml",".liquid"]},elixir:{extensions:[".ex",".exs"],filenames:["mix.lock"]},erlang:{extensions:[".app",".app.src",".erl",".es",".escript",".hrl",".xrl",".yrl"],filenames:["Emakefile","rebar.config","rebar.config.lock","rebar.lock"]},fsharp:{extensions:[".fs",".fsi",".fsx"]},go:{extensions:[".go"]},groovy:{extensions:[".gradle",".groovy",".grt",".gtpl",".gvy",".jenkinsfile"],filenames:["Jenkinsfile","Jenkinsfile"]},graphql:{extensions:[".gql",".graphql",".graphqls"]},terraform:{extensions:[".hcl",".nomad",".tf",".tfvars",".workflow"]},hlsl:{extensions:[".cginc",".fx",".fxh",".hlsl",".hlsli"]},erb:{extensions:[".erb",".erb.deface",".rhtml"]},razor:{extensions:[".cshtml",".razor"]},haml:{extensions:[".haml",".haml.deface"]},handlebars:{extensions:[".handlebars",".hbs"]},haskell:{extensions:[".hs",".hs-boot",".hsc"]},ini:{extensions:[".cfg",".cnf",".dof",".ini",".lektorproject",".prefs",".pro",".properties",".url"],filenames:[".buckconfig",".coveragerc",".flake8",".pylintrc","HOSTS","buildozer.spec","hosts","pylintrc","vlcrc"]},json:{extensions:[".4DForm",".4DProject",".JSON-tmLanguage",".avsc",".geojson",".gltf",".har",".ice",".json",".json.example",".jsonl",".mcmeta",".sarif",".tact",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","MODULE.bazel.lock","Package.resolved","Pipfile.lock","bun.lock","composer.lock","deno.lock","flake.lock","mcmod.info"]},jsonc:{extensions:[".code-snippets",".code-workspace",".jsonc",".sublime-build",".sublime-color-scheme",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[".babelrc",".devcontainer.json",".eslintrc.json",".jscsrc",".jshintrc",".jslintrc",".swcrc","api-extractor.json","argv.json","devcontainer.json","extensions.json","jsconfig.json","keybindings.json","language-configuration.json","launch.json","profiles.json","settings.json","tasks.json","tsconfig.json","tslint.json"]},java:{extensions:[".jav",".java",".jsh"]},javascript:{extensions:["._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".js",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib"],filenames:["Jakefile"]},julia:{extensions:[".jl"]},kotlin:{extensions:[".kt",".ktm",".kts"]},less:{extensions:[".less"]},lua:{extensions:[".fcgi",".lua",".luau",".nse",".p8",".pd_lua",".rbxs",".rockspec",".wlua"],filenames:[".luacheckrc"]},makefile:{extensions:[".d",".mak",".make",".makefile",".mk",".mkfile"],filenames:["BSDmakefile","GNUmakefile","Kbuild","Makefile","Makefile.am","Makefile.boot","Makefile.frag","Makefile.in","Makefile.inc","Makefile.wat","makefile","makefile.sco","mkfile"]},markdown:{extensions:[".livemd",".markdown",".md",".mdown",".mdwn",".mdx",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr"]},"objective-c":{extensions:[".h",".m"]},"objective-cpp":{extensions:[".mm"]},php:{extensions:[".aw",".ctp",".fcgi",".inc",".install",".module",".php",".php3",".php4",".php5",".phps",".phpt",".theme"],filenames:[".php",".php_cs",".php_cs.dist","Phakefile"]},perl:{extensions:[".al",".cgi",".fcgi",".perl",".ph",".pl",".plx",".pm",".psgi",".t"],filenames:[".latexmkrc","Makefile.PL","Rexfile","ack","cpanfile","latexmkrc"]},powershell:{extensions:[".ps1",".psd1",".psm1"]},pug:{extensions:[".jade",".pug"]},python:{extensions:[".cgi",".codon",".fcgi",".gyp",".gypi",".lmi",".py",".py3",".pyde",".pyi",".pyp",".pyt",".pyw",".rpy",".sage",".spec",".tac",".wsgi",".xpy"],filenames:[".gclient","DEPS","SConscript","SConstruct","wscript"]},r:{extensions:[".r",".rd",".rsx"],filenames:[".Rprofile","expr-dist"]},ruby:{extensions:[".builder",".eye",".fcgi",".gemspec",".god",".jbuilder",".mspec",".pluginspec",".podspec",".prawn",".rabl",".rake",".rb",".rbi",".rbuild",".rbw",".rbx",".ru",".ruby",".spec",".thor",".watchr"],filenames:[".irbrc",".pryrc",".simplecov","Appraisals","Berksfile","Brewfile","Buildfile","Capfile","Dangerfile","Deliverfile","Fastfile","Gemfile","Guardfile","Jarfile","Mavenfile","Podfile","Puppetfile","Rakefile","Snapfile","Steepfile","Thorfile","Vagrantfile","buildfile"]},rust:{extensions:[".rs",".rs.in"]},scss:{extensions:[".scss"]},sql:{extensions:[".cql",".ddl",".inc",".mysql",".prc",".sql",".tab",".udf",".viw"]},sass:{extensions:[".sass"]},scala:{extensions:[".kojo",".sbt",".sc",".scala"]},shellscript:{extensions:[".bash",".bats",".cgi",".command",".fcgi",".fish",".ksh",".sh",".sh.in",".tmux",".tool",".trigger",".zsh",".zsh-theme"],filenames:[".bash_aliases",".bash_functions",".bash_history",".bash_logout",".bash_profile",".bashrc",".cshrc",".envrc",".flaskenv",".kshrc",".login",".profile",".tmux.conf",".zlogin",".zlogout",".zprofile",".zshenv",".zshrc","9fs","PKGBUILD","bash_aliases","bash_logout","bash_profile","bashrc","cshrc","gradlew","kshrc","login","man","profile","tmux.conf","zlogin","zlogout","zprofile","zshenv","zshrc"]},slang:{extensions:[".fxc",".hlsl",".s",".slang",".slangh",".usf",".ush",".vfx"]},slim:{extensions:[".slim"]},solidity:{extensions:[".sol"]},stylus:{extensions:[".styl"]},svelte:{extensions:[".svelte"]},swift:{extensions:[".swift"]},systemverilog:{extensions:[".sv",".svh",".vh"]},typescriptreact:{extensions:[".tsx"]},latex:{extensions:[".aux",".bbx",".cbx",".cls",".dtx",".ins",".lbx",".ltx",".mkii",".mkiv",".mkvi",".sty",".tex",".toc"]},typescript:{extensions:[".cts",".mts",".ts"]},verilog:{extensions:[".v",".veo"]},vim:{extensions:[".vba",".vim",".vimrc",".vmb"],filenames:[".exrc",".gvimrc",".nvimrc",".vimrc","_vimrc","gvimrc","nvimrc","vimrc"]},vb:{extensions:[".vb",".vbhtml",".Dsr",".bas",".cls",".ctl",".frm",".vbs"]},vue:{extensions:[".nvue",".vue"]},xml:{extensions:[".adml",".admx",".ant",".axaml",".axml",".builds",".ccproj",".ccxml",".clixml",".cproject",".cscfg",".csdef",".csl",".csproj",".ct",".depproj",".dita",".ditamap",".ditaval",".dll.config",".dotsettings",".filters",".fsproj",".fxml",".glade",".gml",".gmx",".gpx",".grxml",".gst",".hzp",".iml",".ivy",".jelly",".jsproj",".kml",".launch",".mdpolicy",".mjml",".mod",".mojo",".mxml",".natvis",".ncl",".ndproj",".nproj",".nuspec",".odd",".osm",".pkgproj",".plist",".pluginspec",".proj",".props",".ps1xml",".psc1",".pt",".pubxml",".qhelp",".rdf",".res",".resx",".rss",".sch",".scxml",".sfproj",".shproj",".srdf",".storyboard",".sublime-snippet",".svg",".sw",".targets",".tml",".typ",".ui",".urdf",".ux",".vbproj",".vcxproj",".vsixmanifest",".vssettings",".vstemplate",".vxml",".wixproj",".workflow",".wsdl",".wsf",".wxi",".wxl",".wxs",".x3d",".xacro",".xaml",".xib",".xlf",".xliff",".xmi",".xml",".xml.dist",".xmp",".xproj",".xsd",".xspec",".xul",".zcml"],filenames:[".classpath",".cproject",".project","App.config","NuGet.config","Settings.StyleCop","Web.Debug.config","Web.Release.config","Web.config","packages.config"]},xsl:{extensions:[".xsl",".xslt"]},yaml:{extensions:[".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yaml.sed",".yml",".yml.mysql"],filenames:[".clang-format",".clang-tidy",".clangd",".gemrc","CITATION.cff","glide.lock","pixi.lock","yarn.lock"]},javascriptreact:{extensions:[".jsx"]},legend:{extensions:[".pure"]}};p();p();var QEn=[".ejs",".erb",".haml",".hbs",".j2",".jinja",".jinja2",".liquid",".mustache",".njk",".php",".pug",".slim",".webc"],qEn={".php":[".blade"]},Pq=Object.keys(V3).flatMap(t=>V3[t].extensions);var NQt=ae(require("node:path"));var $ue=class{constructor(e,r,n){this.languageId=e;this.isGuess=r;this.fileExtension=n}static{a(this,"Language")}},Wxe=class{static{a(this,"LanguageDetection")}},OQt=new Map,Gue=new Map;for(let[t,{extensions:e,filenames:r}]of Object.entries(V3)){for(let n of e)OQt.set(n,[...OQt.get(n)??[],t]);for(let n of r??[])Gue.set(n,[...Gue.get(n)??[],t])}var BQt=class extends Wxe{static{a(this,"FilenameAndExensionLanguageDetection")}detectLanguage(e){let r=ho(e.uri),n=NQt.extname(r).toLowerCase(),o=this.extensionWithoutTemplateLanguage(r,n),s=this.detectLanguageId(r,o),c=this.computeFullyQualifiedExtension(n,o);return s?new $ue(s.languageId,s.isGuess,c):new $ue(e.languageId,!0,c)}extensionWithoutTemplateLanguage(e,r){if(QEn.includes(r)){let n=e.substring(0,e.lastIndexOf(".")),o=NQt.extname(n).toLowerCase();if(o.length>0&&Pq.includes(o)&&this.isExtensionValidForTemplateLanguage(r,o))return o}return r}isExtensionValidForTemplateLanguage(e,r){let n=qEn[e];return!n||n.includes(r)}detectLanguageId(e,r){if(Gue.has(e))return{languageId:Gue.get(e)[0],isGuess:!1};let n=OQt.get(r)??[];if(n.length>0)return{languageId:n[0],isGuess:n.length>1};for(;e.includes(".");)if(e=e.replace(/\.[^.]*$/,""),Gue.has(e))return{languageId:Gue.get(e)[0],isGuess:!1}}computeFullyQualifiedExtension(e,r){return e!==r?r+e:e}},LQt=class extends Wxe{constructor(r){super();this.delegate=r}static{a(this,"GroupingLanguageDetection")}detectLanguage(r){let n=this.delegate.detectLanguage(r),o=n.languageId;return o==="c"||o==="cpp"?new $ue("cpp",n.isGuess,n.fileExtension):n}},FQt=class extends Wxe{constructor(r){super();this.delegate=r}static{a(this,"ClientProvidedLanguageDetection")}detectLanguage(r){return r.uri.startsWith("untitled:")||r.uri.startsWith("vscode-notebook-cell:")?new $ue(r.languageId,!0,""):this.delegate.detectLanguage(r)}},Tzo=new LQt(new FQt(new BQt));function RB({uri:t,languageId:e}){let r=Tzo.detectLanguage({uri:t,languageId:"UNKNOWN"});return r.languageId==="UNKNOWN"?e:r.languageId}a(RB,"detectLanguage");p();p();p();p();function wm(t){if(t.isCancellationRequested)throw new tYe}a(wm,"throwIfCancellationRequested");function e2(t){return t instanceof tYe?!0:t instanceof Error&&t.name===UQt&&t.message===UQt}a(e2,"isCancellationError");var tYe=class extends Error{static{a(this,"CancellationError")}constructor(){super(UQt),this.name=this.message}},UQt="Canceled",rYe=class{constructor(){this.items=[]}static{a(this,"Stack")}push(e){this.items.push(e)}pop(){return this.items.pop()}peek(){return this.items[this.items.length-1]}tryPeek(){return this.items.length>0}toArray(){return this.items}};function mJ(t){switch(t){case 0:case 2:case 7:case 8:case 11:case 12:case 13:case 14:return!0;default:return!1}}a(mJ,"isTypeDefinition");var Lu=class t{static{a(this,"TextRange")}static{this.empty=new t(0,0)}constructor(e,r){this.start=e,this.length=r}static fromBounds(e,r){return new t(e,r-e)}get end(){return this.start+this.length}contains(e){return this.start<=e&&this.end>=e}containsRange(e){return this.start<=e.start&&this.end>=e.end}equals(e){return this.start===e.start&&this.length===e.length}getText(e){return e.slice(this.start,this.end)}getTextWithIndentation(e,r){let n=[],o=this.start;for(o=jEn(e,e.length,o),HEn(n,r);o<this.end;)e[o]!=="\r"&&e[o]!==`
|
|
1917
1917
|
`?n.push(e[o++]):e[o]==="\r"&&o<e.length&&e[o+1]!==`
|
|
1918
1918
|
`||e[o]===`
|
|
1919
1919
|
`?(n.push(`
|
|
@@ -3718,7 +3718,7 @@ ${Array.from(t).map(r=>`- ${r.path}: ${r.message}`).join(`
|
|
|
3718
3718
|
`,"utf8")});this.appendQueues.set(e,s.catch(()=>{}))}handleUsage(e){let r=e.data.parentToolCallId??"main";this.usageByKey.set(r,{inputTokens:cdt(e.data.inputTokens),outputTokens:cdt(e.data.outputTokens),cacheReadTokens:cdt(e.data.cacheReadTokens)})}handleMessage(e){let r=e.data.parentToolCallId,n=r??"main",o=this.usageByKey.get(n),s=$Ks(e.data.toolRequests),c=this.outputDir(r);s.length>0&&this.appendJsonl(Wee.join(c,"trajectory.jsonl"),{tool_calls:s,input_tokens:o?.inputTokens,output_tokens:cdt(e.data.outputTokens)??o?.outputTokens,cached_input_tokens:o?.cacheReadTokens,conversationId:this.sessionId,turnId:this.activeTurnId})}handleToolStart(e){let r=ldt(e.data.toolCallId);r&&this.pendingTools.set(r,{toolCallId:r,toolName:e.data.toolName,arguments:e.data.arguments,parentToolCallId:e.data.parentToolCallId,startTimestamp:e.timestamp})}handleToolComplete(e){let r=ldt(e.data.toolCallId);if(!r)return;let n=this.pendingTools.get(r);this.pendingTools.delete(r);let o=this.outputDir(n?.parentToolCallId),s=n?.startTimestamp?new Date(n.startTimestamp).getTime():void 0,c=new Date(e.timestamp).getTime(),l=s?c-s:void 0;this.appendJsonl(Wee.join(o,"tool-in-out.jsonl"),{tool_call_id:r,tool:n?.toolName??"",input:typeof n?.arguments=="object"&&n.arguments!==null?n.arguments:{},output:VKs(e.data.result),status:e.data.success?"success":"error",timestamp:e.timestamp,duration_ms:l})}};function pri(t,e,r){let n=Et(t,Ne.PromptPersistBasePath)?.trim()||void 0;if(n)return new Yhr(n,e,r)}a(pri,"createBackgroundAgentPersistence");p();var udt=class{constructor(){this.pendingWaits=new Map;this.data={permission:{totalMs:0,count:0},user_input:{totalMs:0,count:0},exit_plan_mode:{totalMs:0,count:0}}}static{a(this,"UserWaitTracker")}trackEvent(e){let r=e.type;if(r==="permission.requested"||r==="user_input.requested"||r==="exit_plan_mode.requested"){let n=typeof e.data?.requestId=="string"?e.data.requestId:void 0;if(!n)return;let o=r.replace(".requested","");this.pendingWaits.set(n,{waitType:o,startTimeMs:performance.now()})}else if(r==="permission.completed"||r==="user_input.completed"||r==="exit_plan_mode.completed"){let n=typeof e.data?.requestId=="string"?e.data.requestId:void 0;if(!n)return;let o=this.pendingWaits.get(n);if(o){let s=performance.now()-o.startTimeMs;this.pendingWaits.delete(n);let c=this.data[o.waitType];c.totalMs+=s,c.count+=1}}}};p();p();var tge={INVOKE_AGENT:"invoke_agent",EXECUTE_TOOL:"execute_tool"},jn={OPERATION_NAME:"gen_ai.operation.name",AGENT_NAME:"gen_ai.agent.name",SYSTEM:"gen_ai.system",REQUEST_MODEL:"gen_ai.request.model",RESPONSE_MODEL:"gen_ai.response.model",SYSTEM_INSTRUCTIONS:"gen_ai.system_instructions",INPUT_MESSAGES:"gen_ai.input.messages",OUTPUT_MESSAGES:"gen_ai.output.messages",CONVERSATION_ID:"gen_ai.conversation.id",USAGE_INPUT_TOKENS:"gen_ai.usage.input_tokens",USAGE_OUTPUT_TOKENS:"gen_ai.usage.output_tokens",USAGE_CACHE_READ_INPUT_TOKENS:"gen_ai.usage.cache_read.input_tokens",USAGE_CACHE_CREATION_INPUT_TOKENS:"gen_ai.usage.cache_creation.input_tokens",TURN_COUNT:"gen_ai.turn_count",TOTAL_COST_USD:"gen_ai.total_cost_usd",TOOL_NAME:"gen_ai.tool.name",TOOL_CALL_ID:"gen_ai.tool.call.id",TOOL_CALL_ARGUMENTS:"gen_ai.tool.call.arguments",TOOL_CALL_RESULT:"gen_ai.tool.call.result"};function D8(t,e){return JSON.stringify([{role:t,parts:[{type:"text",content:e}]}])}a(D8,"genAiMessagesJson");p();var pNe=require("fs"),rge=ae(require("path"));var Khr=new oe("OtelSpanFilePersistence"),WKs="debug.jsonl",tw=class{constructor(e){this.ctx=e}static{a(this,"OTelSpanFilePersistence")}isEnabled(){return!!this.getDirectory()}getDirectory(){let e=Et(this.ctx,Ne.AgentDebugLogsDirectory);return typeof e=="string"&&e.length>0?e:void 0}async appendSpans(e){if(!this.isEnabled()||e.length===0)return;let r=new Map;for(let n of e){let o=YKs(n);if(!o){Khr.warn(this.ctx,`Dropping span without gen_ai.conversation.id (traceId=${n.traceId})`);continue}let s=r.get(o);s?s.push(n):r.set(o,[n])}for(let[n,o]of r)try{let s=this.getFilePath(n);await pNe.promises.mkdir(rge.dirname(s),{recursive:!0,mode:448});let c=o.map(l=>JSON.stringify(l)).join(`
|
|
3719
3719
|
`)+`
|
|
3720
3720
|
`;await pNe.promises.appendFile(s,c,{encoding:"utf8",mode:384})}catch(s){Khr.warn(this.ctx,`Failed to persist spans for conversation=${n}: ${s instanceof Error?s.message:String(s)}`)}}async readSpans(e){if(!this.isEnabled())return[];try{let r=await pNe.promises.readFile(this.getFilePath(e),"utf8"),n=[];for(let o of r.split(`
|
|
3721
|
-
`))if(o.trim())try{n.push(JSON.parse(o))}catch{}return n}catch(r){return r.code==="ENOENT"?[]:(Khr.warn(this.ctx,`Failed to read spans for conversation=${e}: ${r instanceof Error?r.message:String(r)}`),[])}}getFilePath(e){let r=this.getDirectory();if(!r)throw new Error("Agent debug logs directory not configured");return rge.join(r,KKs(e),WKs)}async getLogFilePath(e){if(!this.isEnabled())return null;let r=rge.resolve(this.getFilePath(e));try{return await pNe.promises.access(r),r}catch{return null}}};function YKs(t){for(let e of t.attributes??[])if(e.key==="gen_ai.conversation.id"){let r=e.value.stringValue;if(r&&r.length>0)return r}}a(YKs,"conversationIdOf");function KKs(t){let e=t.replace(/[^A-Za-z0-9._-]/g,"_").slice(0,120);return e.length>0?e:"unknown"}a(KKs,"sanitizeForPath");p();function hri(t){if(t!=null)return typeof t=="string"?{stringValue:t}:typeof t=="boolean"?{boolValue:t}:typeof t=="number"?Number.isInteger(t)?{intValue:String(t)}:{doubleValue:t}:Array.isArray(t)?{arrayValue:{values:t.map(r=>hri(r)).filter(r=>r!==void 0)}}:{stringValue:JSON.stringify(t)}}a(hri,"encodeAnyValue");function ik(t){if(!t)return[];let e=[];for(let[r,n]of Object.entries(t)){let o=hri(n);o!==void 0&&e.push({key:r,value:o})}return e}a(ik,"encodeAttributes");function JKs(t,e){return{resourceSpans:[{resource:{attributes:Object.entries(e).map(([r,n])=>({key:r,value:{stringValue:n}}))},scopeSpans:[{scope:{name:"copilot-chat"},spans:t}]}]}}a(JKs,"wrapInResourceSpans");function mri(t,e){let r=JKs(t,{"service.name":"copilot-chat","session.id":e.conversationId});return r.copilotChat={exportedAt:new Date().toISOString(),exporterVersion:"",sessionId:e.conversationId,...e.sessionTitle?{sessionTitle:e.sessionTitle}:{}},r}a(mri,"buildChatDebugLogExport");var yri=require("crypto");var gri=new oe("BackgroundAgent.CliOTelTracker"),ZKs={USER_REQUEST:"copilot_chat.user_request"},Jhr="main";function nge(t){return(0,yri.randomUUID)().replace(/-/g,"").slice(0,t*2)}a(nge,"generateHexId");function Eri(){return BigInt(Date.now())*1000000n}a(Eri,"nowNano");function ige(t){if(t){let e=Date.parse(t);if(!Number.isNaN(e))return BigInt(e)*1000000n}return Eri()}a(ige,"isoToNano");function Ari(t){if(t!=null){if(typeof t=="string")return t;try{return JSON.stringify(t)}catch{return}}}a(Ari,"toAttributeString");function _ri(t,e,r){if(!t.get(vn).getCapabilities().agentDebugLog)return;let n=t.get(tw);if(n.isEnabled())return new Zhr(t,e,r,n)}a(_ri,"createCliOTelTracker");var Zhr=class{constructor(e,r,n,o){this._ctx=e;this._sessionId=r;this._persistence=o;this._pendingTools=new Map;this._subagentParentToolCallIds=new Map;for(let s of n.getEvents())this._observeSubagentParent(s),this._updateSystemInstructions(s)}static{a(this,"CliOTelTracker")}onEvent(e){switch(this._observeSubagentParent(e),e.type){case"system.message":this._updateSystemInstructions(e);break;case"user.message":this._pendingUserRequest=e.data.content;break;case"assistant.turn_start":this._ensureRequest(ige(e.timestamp));break;case"assistant.usage":this._onUsage(e);break;case"assistant.message":this._onAssistantMessage(e);break;case"tool.execution_start":this._onToolStart(e);break;case"tool.execution_complete":this._onToolComplete(e);break;case"session.idle":case"session.error":try{this._flushRequest()}catch(r){gri.warn(this._ctx,`Failed to flush debug spans for session=${this._sessionId}: ${r instanceof Error?r.message:String(r)}`)}break;default:break}}_ensureRequest(e){return this._request||(this._request={traceId:nge(16),invokeAgentSpanId:nge(8),startNano:e,userRequest:this._pendingUserRequest,usages:[],responseByAgent:new Map,toolSpanIds:new Map},this._pendingUserRequest=void 0),this._request}_onUsage(e){let r=this._ensureRequest(ige(e.timestamp)),n=this._parentToolCallId(e),o={data:e.data,endNano:ige(e.timestamp),agentKey:n??Jhr,parentToolCallId:n,systemInstructions:e.agentId?void 0:this._systemInstructions};r.usages.push(o)}_observeSubagentParent(e){if(e.type==="subagent.started"&&typeof e.agentId=="string"){let r=e.data.toolCallId;typeof r=="string"&&this._subagentParentToolCallIds.set(e.agentId,r)}else(e.type==="session.idle"||e.type==="session.error")&&this._subagentParentToolCallIds.clear()}_parentToolCallId(e){if(typeof e.agentId=="string"){let n=this._subagentParentToolCallIds.get(e.agentId);if(n)return n}let r=e.data.parentToolCallId;return typeof r=="string"?r:void 0}_updateSystemInstructions(e){e.type==="system.message"&&!e.agentId&&e.data.role==="system"&&typeof e.data.content=="string"&&(this._systemInstructions=e.data.content)}_onAssistantMessage(e){let r=this._request;if(!r)return;let n=e.data.content;if(!n)return;let o=this._parentToolCallId(e)??Jhr;r.responseByAgent.set(o,(r.responseByAgent.get(o)??"")+n)}_onToolStart(e){let r=e.data.toolCallId;if(!r)return;let n=this._ensureRequest(ige(e.timestamp)),o=this._parentToolCallId(e),s=(o?n.toolSpanIds.get(o):void 0)??n.invokeAgentSpanId,c=nge(8);this._pendingTools.set(r,{traceId:n.traceId,spanId:c,parentSpanId:s,toolName:e.data.toolName??"unknown",arguments:e.data.arguments,startNano:ige(e.timestamp)}),n.toolSpanIds.set(r,c)}_onToolComplete(e){let r=e.data.toolCallId;if(!r)return;let n=this._pendingTools.get(r);if(!n)return;this._pendingTools.delete(r);let o=ige(e.timestamp),s=e.data.success===!1,c=e.data.error?.message,l={[jn.OPERATION_NAME]:"execute_tool",[jn.CONVERSATION_ID]:this._sessionId,[jn.TOOL_NAME]:n.toolName,[jn.TOOL_CALL_ID]:r},u=Ari(n.arguments);u!==void 0&&(l[jn.TOOL_CALL_ARGUMENTS]=u);let d=e.data.result??e.data.error,f=Ari(d);f!==void 0&&(l[jn.TOOL_CALL_RESULT]=f),this._appendSpans([{traceId:n.traceId,spanId:n.spanId,parentSpanId:n.parentSpanId,name:`execute_tool ${n.toolName}`,kind:1,startTimeUnixNano:n.startNano.toString(),endTimeUnixNano:o.toString(),attributes:ik(l),events:[],status:s?{code:2,message:c??"Tool execution error"}:{code:1}}])}_flushRequest(){let e=this._request;if(!e)return;this._request=void 0;let r=Eri(),n=[this._buildInvokeAgentSpan(e,r)],o=this._buildUserMessageSpan(e);o&&n.push(o);let s=new Map;e.usages.forEach((c,l)=>{c.data.model&&s.set(c.agentKey,l)}),e.usages.forEach((c,l)=>{let u=s.get(c.agentKey)===l,d=this._buildChatSpan(e,c,u);d&&n.push(d)}),n.push(...this._buildAgentResponseSpans(e)),this._appendSpans(n)}_buildInvokeAgentSpan(e,r){return{traceId:e.traceId,spanId:e.invokeAgentSpanId,name:"invoke_agent copilotcli",kind:1,startTimeUnixNano:e.startNano.toString(),endTimeUnixNano:r.toString(),attributes:ik({[jn.OPERATION_NAME]:"invoke_agent",[jn.AGENT_NAME]:"copilotcli",[jn.CONVERSATION_ID]:this._sessionId}),events:[],status:{code:1}}}_buildUserMessageSpan(e){if(!e.userRequest)return;let r=e.startNano.toString();return{traceId:e.traceId,spanId:nge(8),parentSpanId:e.invokeAgentSpanId,name:"user_message",kind:1,startTimeUnixNano:r,endTimeUnixNano:r,attributes:ik({[jn.OPERATION_NAME]:"user_message",[jn.CONVERSATION_ID]:this._sessionId,[ZKs.USER_REQUEST]:e.userRequest}),events:[{name:"user_message",timeUnixNano:r,attributes:ik({content:e.userRequest})}],status:{code:1}}}_buildAgentResponseSpans(e){let r=new Map;for(let o of e.usages)o.data.model&&r.set(o.agentKey,o.endNano);let n=[];for(let[o,s]of e.responseByAgent){if(!s)continue;let c=o===Jhr?e.invokeAgentSpanId:e.toolSpanIds.get(o)??e.invokeAgentSpanId,l=(r.get(o)??e.startNano).toString();n.push({traceId:e.traceId,spanId:nge(8),parentSpanId:c,name:"agent_response",kind:1,startTimeUnixNano:l,endTimeUnixNano:l,attributes:ik({[jn.OPERATION_NAME]:"agent_response",[jn.CONVERSATION_ID]:this._sessionId,[jn.OUTPUT_MESSAGES]:D8("assistant",s)}),events:[],status:{code:1}})}return n}_buildChatSpan(e,r,n){let o=r.data.model;if(!o)return;let s=(r.parentToolCallId?e.toolSpanIds.get(r.parentToolCallId):void 0)??e.invokeAgentSpanId,c={[jn.OPERATION_NAME]:"chat",[jn.CONVERSATION_ID]:this._sessionId,[jn.RESPONSE_MODEL]:o},l=r.data.inputTokens,u=r.data.outputTokens,d=r.data.cacheReadTokens,f=r.data.cacheWriteTokens;typeof l=="number"&&(c[jn.USAGE_INPUT_TOKENS]=l),typeof u=="number"&&(c[jn.USAGE_OUTPUT_TOKENS]=u),typeof d=="number"&&(c[jn.USAGE_CACHE_READ_INPUT_TOKENS]=d),typeof f=="number"&&(c[jn.USAGE_CACHE_CREATION_INPUT_TOKENS]=f),r.systemInstructions&&(c[jn.SYSTEM_INSTRUCTIONS]=JSON.stringify([{type:"text",content:r.systemInstructions}]));let h=n?e.responseByAgent.get(r.agentKey):void 0;h&&(c[jn.OUTPUT_MESSAGES]=D8("assistant",h));let m=r.endNano,g=r.data.duration,A=typeof g=="number"&&g>=0?m-BigInt(Math.round(g))*1000000n:m;return{traceId:e.traceId,spanId:nge(8),parentSpanId:s,name:`chat ${o}`,kind:1,startTimeUnixNano:A.toString(),endTimeUnixNano:m.toString(),attributes:ik(c),events:[],status:{code:1}}}_appendSpans(e){if(e.length!==0)try{this._persistence.appendSpans(e).catch(r=>this._warnPersistFailure(r))}catch(r){this._warnPersistFailure(r)}}_warnPersistFailure(e){gri.warn(this._ctx,`Failed to persist debug spans for session=${this._sessionId}: ${e instanceof Error?e.message:String(e)}`)}};Ro();var qS=new oe("BackgroundAgent.SessionEventRouter"),XKs="backgroundAgent",eJs="backgroundAgent.external",bri=4096;function tJs(t){return t.type.startsWith("assistant.")||t.type.startsWith("tool.execution_")||t.type==="external_tool.requested"||t.type==="subagent.started"}a(tJs,"isExecutionEvidence");var hNe=class extends Error{static{a(this,"LocalTurnAdmissionError")}},ddt=class{constructor(e,r,n){this.ctx=e;this.registry=r;this.notificationSender=n;this.bindings=new Map;this.generations=new Map;this.localTurns=new WeakMap;this.lastNanoAiu=new Map}static{a(this,"SessionEventRouter")}bind(e,r){let n=this.bindings.get(e);if(n?.session===r&&n.accepting)return n.handle;let o=n?this.disposeBinding(n).catch(g=>{qS.warn(this.ctx,"Failed to drain replaced session event binding",{sessionId:e,error:g instanceof Error?g.message:String(g)})}):Promise.resolve(),s=(this.generations.get(e)??0)+1;this.generations.set(e,s);let c=new Set,l=[],u={},d=r.on("*",g=>{(g.type==="commands.changed"||g.type==="session.tools_updated")&&this.registry.invalidateCommandCatalog(e,r),u.current?u.current(g):l.push(g)});try{let g=new Set(l.map(A=>A.id));for(let A of r.getEvents().slice(-bri))g.has(A.id)||Cri(c,A.id)}catch(g){qS.warn(this.ctx,"Failed to seed session event deduplication",{sessionId:e,error:g instanceof Error?g.message:String(g)})}let f={},h={sessionId:e,session:r,dispose:a(()=>f.current?this.disposeBinding(f.current):Promise.resolve(),"dispose")},m={sessionId:e,session:r,generation:s,accepting:!0,unsubscribe:d,tail:o,sideEffectTail:o,processedEventIds:c,pendingRootEvents:0,turns:[],handle:h};f.current=m,this.bindings.set(e,m),u.current=g=>{this.enqueueEvent(m,g)};for(let g of l)u.current(g);return h}unbind(e,r){let n=this.bindings.get(e);return!n||n.session!==r?Promise.resolve():this.disposeBinding(n)}hasActiveTurn(e,r){let n=this.bindings.get(e);return n?.session===r&&n.accepting&&(n.pendingRootEvents>0||n.turns.some(o=>!o.completed))}startLocalTurn(e,r,n){if(this.registry.hasCopilotCommandInvocation(e,r))throw new Error(`Cannot start an agent turn while a Copilot command is running: ${e}`);let o=this.requireCurrentBinding(e,r);return this.registerLocalTurn(o,n)}registerLocalTurn(e,r){e.recoveredUnstartedTurnIndex=void 0;let n={sessionId:e.sessionId,turnIndex:r.turnIndex},o=this.createTurn(e,{kind:"local",turnIndex:r.turnIndex,requestSource:XKs,isByok:r.isByok??!1,ensembleTelemetryTier:r.ensembleTelemetryTier,rooted:!1,onTerminal:r.onTerminal});return o.localHandle=n,this.localTurns.set(n,{binding:e,turn:o}),n}startLocalTurnForCommand(e,r,n){let o=this.requireCurrentBinding(e,r);if(this.registry.get(e)!==r||!this.registry.hasCopilotCommandInvocation(e,r)||this.hasActiveTurn(e,r))throw new hNe("Cannot start a command turn: session changed, no command is running, or session is not idle");return this.registerLocalTurn(o,n)}markLocalTurnCancelled(e){let r=this.localTurns.get(e);r&&(r.turn.cancelled=!0)}failLocalTurn(e,r){let n=this.localTurns.get(e);return!n||n.turn.completed||this.bindings.get(e.sessionId)!==n.binding||!n.binding.accepting?Promise.resolve():this.enqueueEvent(n.binding,r,n.turn)}async discardLocalTurn(e){let r=this.localTurns.get(e);r&&(await r.binding.tail,this.finishTurn(r.binding,r.turn))}currentLocalTurn(e,r){let n=this.bindings.get(e);if(!(n?.session!==r||!n.accepting||n.turns.length!==1))return n.turns[0].localHandle}recoverUnstartedTurn(e){let r=this.localTurns.get(e);if(!r)return Promise.resolve(!1);let{binding:n,turn:o}=r,s=n.tail.then(()=>this.bindings.get(e.sessionId)!==n||this.registry.get(e.sessionId)!==n.session||!n.accepting||n.pendingRootEvents>0||n.turns.length!==1||n.turns[0]!==o||o.completed||o.executionObserved?!1:(o.cancelled=!0,this.finishTurn(n,o),n.recoveredUnstartedTurnIndex=o.turnIndex,qS.info(this.ctx,"Optimistically recovered an unstarted Inline turn after successful abort"),!0));return n.tail=s.then(()=>{}),s}processedEventIdsForTesting(){return new Map([...this.bindings].map(([e,r])=>[e,r.processedEventIds]))}requireCurrentBinding(e,r){let n=this.bindings.get(e);if(!n||n.session!==r||!n.accepting)throw new Error(`No active session event binding for ${e}`);return n}createTurn(e,r){let n={...r,cancelled:!1,completed:!1,executionObserved:!1,startTimeMs:performance.now(),persistence:pri(this.ctx,e.sessionId,`bg-turn-${Bt()}`),cliOtelTracker:_ri(this.ctx,e.sessionId,e.session),waitTracker:new udt};return e.turns.push(n),n}enqueueEvent(e,r,n){if(!e.accepting)return Promise.resolve();let o=vri(r);if(o&&(e.recoveredUnstartedTurnIndex=void 0),!e.processedEventIds.has(r.id)&&tJs(r)){for(let c of e.turns)c.executionObserved=!0;e.recoveredUnstartedTurnIndex!==void 0&&(qS.warn(this.ctx,"Execution observed after optimistic Inline Stop recovery before another turn"),e.recoveredUnstartedTurnIndex=void 0)}o&&e.pendingRootEvents++;let s=e.tail.then(async()=>{try{await this.projectEvent(e,r,n)}finally{o&&e.pendingRootEvents--}});return e.tail=s.catch(c=>{qS.error(this.ctx,"Failed to project background-agent session event",{sessionId:e.sessionId,eventType:r.type,error:c instanceof Error?c.message:String(c)})}),e.tail}async projectEvent(e,r,n){if(n?.completed)return;if(e.processedEventIds.has(r.id)){qS.debug(this.ctx,`Skipping duplicate SDK event: ${r.type} (id=${r.id})`);return}if(Cri(e.processedEventIds,r.id),r.type==="session.remote_steerable_changed"&&this.bindings.get(e.sessionId)===e&&this.registry.get(e.sessionId)===e.session){let l=this.registry.getRemoteState(e.sessionId);this.registry.setRemoteState(e.sessionId,{desired:l?.desired??!1,status:{...r.data.remoteSteerable&&l?.status.url?{url:l.status.url}:{},remoteSteerable:r.data.remoteSteerable},cleanupRegistered:l?.cleanupRegistered??!1,...l?.cleanupSession?{cleanupSession:l.cleanupSession}:{}})}r.type==="assistant.turn_start"&&this.registry.getTurnLimiter(e.sessionId)?.onTurnStart();let o=n&&!n.completed?n:void 0;if(!o&&vri(r)){let l=e.turns.find(u=>u.kind==="local"&&!u.rooted&&!u.completed);l&&r.data.source===void 0?(l.rooted=!0,o=l):o=this.createTurn(e,{kind:"external",turnIndex:this.registry.incrementTurnIndex(e.sessionId),requestSource:eJs,isByok:this.registry.getProviderModel(e.sessionId)?.provider!==void 0,rooted:!0})}if(o??=e.turns.find(l=>l.rooted&&!l.completed)??e.turns.find(l=>!l.completed),o?.persistence)try{o.persistence.persistEvent(r)}catch(l){qS.warn(this.ctx,"Failed to persist background-agent event",{eventType:r.type,error:l instanceof Error?l.message:String(l)})}if(o?.waitTracker.trackEvent(r),o?.cliOtelTracker)try{o.cliOtelTracker.onEvent(r)}catch(l){qS.warn(this.ctx,"Failed to synthesize debug span",{eventType:r.type,error:l instanceof Error?l.message:String(l)})}let s=this.captureAuthErrorSnapshot(e,r,o);s?.statusCode==="401"&&this.ctx.get(Lt).resetToken("backgroundAgent.session.error",401);let c=r.type==="permission.requested"&&r.data.permissionRequest.kind==="shell"?this.withTerminalShell(e.session,r):r;await this.sendSessionUpdateNotification(e.sessionId,c,o?.turnIndex),r.type==="session.todos_changed"&&(e.sideEffectTail=e.sideEffectTail.then(()=>idt(this.ctx,this.notificationSender,e.sessionId,e.session))),(r.type==="session.idle"||r.type==="session.error")&&o&&(r.type==="session.error"&&!o.cancelled&&this.emitTurnFailedTelemetry(e.sessionId,o.turnIndex,r.data.errorType==="SendMessageError"?"SendMessageError":"SessionError",o.requestSource),this.emitEnsembleTurnTelemetry(o,r.type),this.finishTurn(e,o),await Promise.all([this.emitTurnCompleteTelemetry(e,o),this.emitSessionMetricsTelemetry(e,o)])),s&&Jpe(this.ctx,s)}emitEnsembleTurnTelemetry(e,r){if(e.kind!=="local"||!e.ensembleTelemetryTier||e.completed)return;let n=e.cancelled?"cancelled":r==="session.error"?"failure":"success";try{Mi(this.ctx,"backgroundAgent.ensembleTurn",{autoTier:e.ensembleTelemetryTier,status_text:n})}catch(o){qS.warn(this.ctx,"Failed to emit bounded Ensemble turn telemetry",{errorType:o instanceof Error?o.name:"unknown"})}}finishTurn(e,r){if(r.completed)return;r.completed=!0;let n=e.turns.indexOf(r);n>=0&&e.turns.splice(n,1),r.localHandle&&this.localTurns.delete(r.localHandle);try{r.onTerminal?.()}catch(o){qS.warn(this.ctx,"Local turn terminal callback failed",{sessionId:e.sessionId,error:o instanceof Error?o.message:String(o)})}}disposeBinding(e){if(e.disposePromise)return e.disposePromise;e.accepting=!1;try{e.unsubscribe()}catch(r){qS.warn(this.ctx,"Failed to unsubscribe session event binding",{sessionId:e.sessionId,error:r instanceof Error?r.message:String(r)})}return e.disposePromise=(async()=>{await e.tail;for(let r of[...e.turns])this.finishTurn(e,r);await e.sideEffectTail,this.bindings.get(e.sessionId)===e&&(this.bindings.delete(e.sessionId),this.lastNanoAiu.delete(e.sessionId))})(),e.disposePromise}async sendSessionUpdateNotification(e,r,n){try{await this.notificationSender.sendBackgroundAgentSessionUpdate(e,r,void 0,n)}catch(o){qS.error(this.ctx,"Failed to send session update notification:",o)}}withTerminalShell(e,r){let n=r.data.permissionRequest.toolCallId;if(!n)return r;for(let o of e.getEvents()){if(o.type!=="assistant.message")continue;let s=o.data.toolRequests?.find(l=>l.toolCallId===n);if(!s)continue;let c=s.name==="powershell"?"powershell":s.name==="bash"?"sh":void 0;return c?{...r,data:{...r.data,terminalShell:c}}:r}return r}async emitTurnCompleteTelemetry(e,r){try{let n=performance.now()-r.startTimeMs,o=this.registry.getChatMode(e.sessionId)??"agent",c=(await e.session.usage.getMetrics()).totalNanoAiu,l=this.lastNanoAiu.get(e.sessionId)??0,u=typeof c=="number"&&Number.isFinite(c),d=u?Math.min(l,c):l;u&&this.lastNanoAiu.set(e.sessionId,c);let f=u?(c-d)/1e9:0,h=r.waitTracker.data;Wt(this.ctx,"backgroundAgent.turn.complete",{requestSource:r.requestSource,sessionId:e.sessionId,chatMode:o,uiKind:zee(o),agentProvider:"BACKGROUND",turnIndex:String(r.turnIndex)},{totalDurationMs:n,totalUserWaitMs:rJs(h),permissionWaitMs:h.permission.totalMs,permissionWaitCount:h.permission.count,userInputWaitMs:h.user_input.totalMs,userInputWaitCount:h.user_input.count,exitPlanModeWaitMs:h.exit_plan_mode.totalMs,exitPlanModeWaitCount:h.exit_plan_mode.count,credits:f})}catch(n){qS.warn(this.ctx,"Failed to emit turn.complete telemetry",{sessionId:e.sessionId,error:n instanceof Error?n.message:String(n)})}}emitTurnFailedTelemetry(e,r,n,o){let s=this.registry.getChatMode(e)??"agent";Wt(this.ctx,"backgroundAgent.turn.failed",{requestSource:o,sessionId:e,uiKind:zee(s),agentProvider:"BACKGROUND",errorType:n,turnIndex:String(r)})}captureAuthErrorSnapshot(e,r,n){if(r.type!=="session.error")return;let{errorType:o,errorCode:s,statusCode:c}=r.data;if(!(o==="authentication"||o==="authorization"||c===401||c===403)||(n?.isByok??this.registry.getProviderModel(e.sessionId)?.provider!==void 0))return;let d=this.ctx.get(Lt).peekCachedTokenLifetime();return{source:n?.requestSource??"",sessionId:e.sessionId,uiKind:zee(this.registry.getChatMode(e.sessionId)??"agent"),errorType:o,errorCode:s??"",statusCode:c===void 0?"":String(c),copilotTokenState:d.state,copilotTokenRemainingLifetime:d.remainingSeconds}}async emitSessionMetricsTelemetry(e,r){try{let n=this.registry.getChatMode(e.sessionId)??"agent",o=await e.session.usage.getMetrics(),s=0,c=0,l=0,u=0,d=0,f=0,h=[];for(let[m,g]of Object.entries(o.modelMetrics))g&&(s+=g.usage.inputTokens,c+=g.usage.outputTokens,l+=g.usage.cacheReadTokens,u+=g.usage.cacheWriteTokens,d+=g.usage.reasoningTokens??0,f+=g.requests.count,h.push(r.isByok?"byok models":m));Wt(this.ctx,"backgroundAgent.session.metrics",{requestSource:r.requestSource,sessionId:e.sessionId,uiKind:zee(n),agentProvider:"BACKGROUND",modelNames:h.join(","),turnIndex:String(r.turnIndex)},{totalApiDurationMs:o.totalApiDurationMs,totalInputTokens:s,totalOutputTokens:c,totalCacheReadTokens:l,totalCacheWriteTokens:u,totalReasoningTokens:d,llmCallCount:f,totalPremiumRequestCost:o.totalPremiumRequestCost})}catch(n){qS.warn(this.ctx,"Failed to emit session.metrics telemetry",{sessionId:e.sessionId,error:n instanceof Error?n.message:String(n)})}}};function vri(t){return t.type==="user.message"&&!t.agentId&&t.data.delivery!=="steering"&&t.data.isAutopilotContinuation!==!0}a(vri,"isRootUserMessage");function Cri(t,e){if(t.has(e)||(t.add(e),t.size<=bri))return;let r=t.values().next().value;r!==void 0&&t.delete(r)}a(Cri,"rememberEventId");function rJs(t){return t.permission.totalMs+t.user_input.totalMs+t.exit_plan_mode.totalMs}a(rJs,"totalUserWaitMs");Ro();var Xhr=new oe("BackgroundAgent.CopilotCommand"),nJs={includeBuiltins:!0,includeSkills:!1,includeClientCommands:!1},fdt=class{constructor(e,r,n,o,s,c,l,u){this.ctx=e;this.policy=r;this.registry=n;this.eventRouter=o;this.turnDriver=s;this.sandboxConfigSync=c;this.permissionModeController=l;this.notificationSender=u}static{a(this,"CopilotCommandCoordinator")}invokeDirect(e){return this.registry.runSerializedCopilotCommandInvocation(e.sessionId,e.session,()=>this.invokeDirectSerialized(e))}async invokeDirectSerialized(e){let r=performance.now(),n="invoke_failed",o="",s,c={stage:"prepareCommand"};try{this.assertAdmitted(e);let l=iJs(e.message);if(!l)throw this.error(e,"invocation_not_admitted");c.stage="listCommands";let u=await this.awaitPreparation(e,e.session.commands.list(nJs));c.stage="prepareCommand";let d=Tri(u.commands,l.requestedName),f=Tri(this.policy.filter(u).commands,l.requestedName);if(!d||!f||d.name!==f.name)throw this.error(e,"invocation_not_admitted");this.assertAdmitted(e);let h;c.stage="invokeCommand";try{h=await e.session.commands.invoke({name:f.name,input:l.input})}catch(A){s=UHe(A);let y=lJs(A);throw Xhr.warn(this.ctx,"Copilot command invocation failed",{sessionId:e.sessionId,error:y}),this.error(e,"invoke_failed",y)}c.stage="validateResult";let m=oJs(h,e);o=m.kind,m.kind==="agent-prompt"&&await this.handoffAgentPrompt(e,m,c);let g={id:Bt(),timestamp:new Date().toISOString(),parentId:null,ephemeral:!0,type:"command.invokeResult",origin:M8(e),data:m};try{await this.notificationSender.sendBackgroundAgentSessionUpdate(e.sessionId,g)}catch(A){Xhr.warn(this.ctx,"Failed to deliver Copilot command result notification",{sessionId:e.sessionId,error:A instanceof Error?A.message:String(A)})}n="success"}catch(l){throw l instanceof hNe?(n="invocation_not_admitted",this.error(e,n)):l instanceof g_?(n=l.data.kind,l):(s=UHe(l),Xhr.warn(this.ctx,"Copilot command processing failed",{sessionId:e.sessionId,error:l instanceof Error?l.message:String(l)}),l instanceof vX?this.error(e,"invoke_failed",l.message):this.error(e,"invoke_failed"))}finally{let l={requestSource:"backgroundAgent",result:n,resultKind:o},u={totalTimeMs:performance.now()-r};n==="invoke_failed"?Jo(this.ctx,"backgroundAgent.commandInvoke",s,{...l,failureStage:c.stage},u):Wt(this.ctx,"backgroundAgent.commandInvoke",l,u),mt(this.ctx,"backgroundAgent.commandInvoke",tr.createAndMarkAsIssued(l))}}async handoffAgentPrompt(e,r,n){if(this.assertAdmitted(e),n.stage="alignSandbox",!await this.awaitPreparation(e,this.sandboxConfigSync.alignSession(e.sessionId,e.session,"localSend",e.sandboxEnabled)))throw this.error(e,"invocation_not_admitted");e.sandboxEnabled!==void 0&&this.sandboxConfigSync.reportSelection(e.sandboxEnabled),this.assertAdmitted(e),n.stage="synchronizePermissions",await this.awaitPreparation(e,this.permissionModeController.synchronizeForSend(e.sessionId,e.session,e.permissionMode??"default")),this.assertAdmitted(e),r.mode&&(n.stage="setMode",await this.awaitPreparation(e,e.session.mode.set({mode:r.mode}))),this.assertAdmitted(e);let s={prompt:r.prompt,displayPrompt:r.displayPrompt};if(e.references?.length){n.stage="convertReferences";let l=await this.awaitPreparation(e,Sst(e.references,this.ctx));l.length&&(s.attachments=l)}this.assertAdmitted(e),n.stage="sendPrompt";let c=this.registry.incrementTurnIndex(e.sessionId);await this.turnDriver.wireAndSend(e.sessionId,e.session,s,c,e.token,this.registry.getProviderModel(e.sessionId)?.provider!==void 0,{origin:"copilot-command"})}async awaitPreparation(e,r){try{return await r}catch(n){throw Sri(e)?this.error(e,"invocation_not_admitted"):n}}assertAdmitted(e){if(Sri(e)||this.registry.get(e.sessionId)!==e.session||this.eventRouter.hasActiveTurn(e.sessionId,e.session))throw this.error(e,"invocation_not_admitted")}error(e,r,n){return new g_(r,M8(e),n)}};function Sri(t){return t.stopSignal?.aborted===!0||t.token?.isCancellationRequested===!0}a(Sri,"isCancelled");function M8(t){return{type:"direct",copilotCommandInvocationId:t.copilotCommandInvocationId}}a(M8,"directOrigin");function iJs(t){if(!t.startsWith("/"))return;let e=1;for(;e<t.length&&!/\s/.test(t[e]);)e++;if(e===1)return;let r=t.slice(1,e),n=e<t.length?t.slice(e+1):"";return{requestedName:r,input:n}}a(iJs,"parseLeadingSlashCommand");function Tri(t,e){let r=e.toLowerCase();return t.find(n=>n.name.toLowerCase()===r)??t.find(n=>n.aliases?.some(o=>o.toLowerCase()===r))}a(Tri,"resolveCommand");function oJs(t,e){if(!sJs(t)||typeof t.kind!="string")throw new g_("invalid_result_payload",M8(e));switch(t.kind){case"agent-prompt":if(typeof t.prompt!="string"||typeof t.displayPrompt!="string"||!aJs(t.notice)||!cJs(t.mode))throw new g_("invalid_result_payload",M8(e));break;case"text":if(typeof t.text!="string"||!emr(t.markdown)||!emr(t.preserveAnsi))throw new g_("invalid_result_payload",M8(e));break;case"completed":if(t.message!==void 0&&typeof t.message!="string")throw new g_("invalid_result_payload",M8(e));break;case"select-subcommand":if(!Array.isArray(t.options)||t.options.length===0)throw new g_("invalid_result_payload",M8(e));break;default:throw new g_("unsupported_result_kind",M8(e),`Copilot command returned an unsupported result kind: ${t.kind}.`)}if(!emr(t.runtimeSettingsChanged))throw new g_("invalid_result_payload",M8(e));return t}a(oJs,"validateSupportedDirectResult");function sJs(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}a(sJs,"isRecord");function emr(t){return t===void 0||typeof t=="boolean"}a(emr,"optionalBoolean");function aJs(t){return t===void 0||typeof t=="string"}a(aJs,"optionalString");function cJs(t){return t===void 0||t==="interactive"||t==="plan"||t==="autopilot"}a(cJs,"optionalSessionMode");function lJs(t){let e=Au(t),r="Request session.commands.invoke failed with message: ";return e.startsWith(r)?e.slice(r.length):e}a(lJs,"commandInvocationErrorMessage");p();var uJs=new Set(["blame","env","rename","research","security-review","session","share","skills"]),pdt=class{constructor(e=uJs,r=()=>!0){this.allowedCommandNames=e;this.skillsEnabled=r}static{a(this,"CopilotCommandPolicy")}filterCompletions(e){let r=this.filter({...e,commands:e.commands.filter(o=>o.kind==="builtin")}),n=e.commands.filter(o=>o.kind==="skill");return{...e,commands:[...r.commands,...n.length&&this.skillsEnabled()?n:[]]}}filter(e){let r=e.commands.filter(n=>this.allowedCommandNames.has(n.name)?n.kind==="skill"||n.name.toLowerCase()==="create-skill"||n.name.toLowerCase().startsWith("skill:")?this.skillsEnabled():!0:!1);return r.length===e.commands.length?e:{...e,commands:r}}};p();p();var hdt=new oe("EnsembleAutoMetadata"),dJs=30*6e4,HS=new WeakMap,Iri=new WeakSet;function mNe(t){HS.delete(t)}a(mNe,"clearEnsembleAutoMetadataCache");function fJs(t,e){Iri.has(t)||(Iri.add(t),e.onDidResetToken(()=>HS.delete(t)),e.onDidChangeTokenResult(()=>HS.delete(t)),t.get(Fn).onDidChangeCopilotSettings(()=>{(Et(t,Ne.EnableEnsemble)!==!0||Et(t,Ne.EnsembleEnabledOverride)==="false")&&HS.delete(t)}))}a(fJs,"invalidateAutoMetadataWithAuth");var pJs=b.Object({id:b.String({minLength:1}),kind:b.Literal("promotion"),applies_to:b.Array(b.Object({type:b.Literal("auto_tier"),id:b.String({minLength:1})}),{minItems:1}),message:b.String({minLength:1}),discount_percent:b.Number(),starts_at:b.String({minLength:1}),ends_at:b.String({minLength:1}),show_banner:b.Boolean()}),wri=b.Object({service_messages:b.Array(b.Unknown()),auto:b.Optional(b.Object({default_tier:b.String({minLength:1}),tiers:b.Array(b.Object({id:b.String({minLength:1}),display_name:b.String({minLength:1}),description:b.Optional(b.String()),type:b.String({minLength:1}),status:b.Object({enabled:b.Boolean(),tier_picker_enabled:b.Optional(b.Boolean()),reason:b.Optional(b.String()),message:b.Optional(b.String())})}))}))});function hJs(t){let e=t?.replace(/\/\d+(?=\/|$)/g,"").replace(/^\//,"").replace(/\//g,".");switch(e){case"service_messages":case"auto":case"auto.default_tier":case"auto.tiers":case"auto.tiers.id":case"auto.tiers.display_name":case"auto.tiers.description":case"auto.tiers.type":case"auto.tiers.status":case"auto.tiers.status.enabled":case"auto.tiers.status.tier_picker_enabled":case"auto.tiers.status.reason":case"auto.tiers.status.message":return e;default:return"unknown"}}a(hJs,"safeSchemaField");function mJs(t,e){let r=a((c,l)=>{e?.({reason:c,field:l})},"reject");if(!qb.Check(wri,t)){let c=Array.from(qb.Errors(wri,t))[0];return r("invalidSchema",hJs(c?.path))}let{auto:n}=t;if(!n)return{serviceMessages:t.service_messages};if(!n.default_tier.trim())return r("blankDefault","auto.default_tier");for(let c of n.tiers){if(!c.id.trim())return r("blankTierField","auto.tiers.id");if(!c.display_name.trim())return r("blankTierField","auto.tiers.display_name");if(!c.type.trim())return r("blankTierField","auto.tiers.type")}if(new Set(n.tiers.map(c=>c.id)).size!==n.tiers.length)return r("duplicateTierId","auto.tiers.id");let o=n.tiers.find(c=>c.id===n.default_tier);if(!o)return r("missingDefault","auto.default_tier");if(!o.status.enabled)return r("disabledDefault","auto.default_tier");if(o.status.tier_picker_enabled!==!0)return r("hiddenDefault","auto.default_tier");let s=n.tiers.map(c=>({id:c.id,displayName:c.display_name,...c.description!==void 0?{description:c.description}:{},type:c.type,status:{enabled:c.status.enabled,...c.status.tier_picker_enabled!==void 0?{tierPickerEnabled:c.status.tier_picker_enabled}:{},...c.status.reason!==void 0?{reason:c.status.reason}:{},...c.status.message!==void 0?{message:c.status.message}:{}}}));return{serviceMessages:t.service_messages,candidate:{defaultTier:n.default_tier,tiers:s}}}a(mJs,"parseEnsembleAutoMetadata");async function gJs(t,e){try{let r=await G3(t,"/meta",e);if(!r.ok){hdt.warn(t,"Ensemble metadata unavailable from CAPI",{status:r.status});return}let n=await r.json();return mJs(n,o=>{hdt.warn(t,"Invalid Ensemble auto metadata from CAPI",o)})}catch(r){hdt.warn(t,"Failed to fetch Ensemble auto metadata",{errorType:r instanceof Error?r.name:"unknown"});return}}a(gJs,"fetchEnsembleAutoMetadata");async function tmr(t,e=!1,r=Date.now){if(Et(t,Ne.EnableEnsemble)!==!0){HS.delete(t);return}let n=t.get(Lt);fJs(t,n);try{let o=await n.getToken(),s=n.getActiveTokenId();if(Et(t,Ne.EnableEnsemble)!==!0){HS.delete(t);return}let c=HS.get(t);if(c?.token===o&&c.tokenId===s){if(c.pending){let f=await c.pending;return HS.get(t)?.flight===c.flight&&Et(t,Ne.EnableEnsemble)===!0?f:void 0}if(!e&&c.value&&c.expiresAt!==void 0&&r()<c.expiresAt)return c.value}let l=gJs(t,o),u={token:o,tokenId:s,flight:{},pending:l};HS.set(t,u);let d=await l;return HS.get(t)===u&&(d&&n.getActiveTokenId()===s&&Et(t,Ne.EnableEnsemble)===!0?HS.set(t,{token:o,tokenId:s,flight:u.flight,value:d,expiresAt:r()+dJs}):HS.delete(t)),HS.get(t)?.flight===u.flight&&Et(t,Ne.EnableEnsemble)===!0?d:void 0}catch(o){HS.delete(t),hdt.warn(t,"Failed to read Auto metadata token",{errorType:o instanceof Error?o.name:"unknown"});return}}a(tmr,"getEnsembleAutoMetadata");function xri(t,e,r=Date.now){let n=e.tiers.map(l=>l.id),o=r(),s=t.filter(l=>{if(!qb.Check(pJs,l)||!Number.isFinite(l.discount_percent)||l.discount_percent<=0||l.discount_percent>100)return!1;let u=Date.parse(l.starts_at),d=Date.parse(l.ends_at);return Number.isFinite(u)&&Number.isFinite(d)&&u<=o&&o<d}),c=new Map;for(let l of n){let u=s.filter(d=>d.applies_to.some(f=>f.id===l));u.length===1&&c.set(l,u[0])}return c}a(xri,"selectAutoTierServicePromotions");async function rmr(t,e=!1){return(await tmr(t,e))?.candidate}a(rmr,"getEnsembleAutoCandidate");async function N8(t,e){if(Et(t,Ne.EnableEnsemble)!==!0)return mNe(t),{enabled:!1};let r=Et(t,Ne.EnsembleEnabledOverride);if(r==="true"||r==="false")return r==="false"&&mNe(t),{enabled:r==="true"};try{let n=t.get(sr),o=e?await n.updateExPValuesAndAssignments(e):await n.fetchTokenAndUpdateExPValuesAndAssignments(),s=Et(t,Ne.EnableEnsemble)===!0&&n.ensembleEnabled(o);return s||mNe(t),{enabled:s}}catch{return mNe(t),{enabled:!1}}}a(N8,"getEnsemblePreviewGate");p();p();var Yee={HYDRAFUSION:!0,HYDRAFUSION_ROLLOUT:!0,HYDRAFUSION_PLAN_V2:!0,DYNAMIC_AUTO_TIERS:!0},DG={HYDRAFUSION:!1,HYDRAFUSION_ROLLOUT:!1,HYDRAFUSION_PLAN_V2:!1,DYNAMIC_AUTO_TIERS:!1};function Rl(t){return t==="hydrafusion"||t==="hydrafusion-max"}a(Rl,"isFusionRuntimeModel");function AJs(t){return t.id==="balance"&&t.type==="auto"||(t.id==="hydrafusion"||t.id==="hydrafusion-max")&&t.type==="fusion"}a(AJs,"isKnownEnsembleRuntimeTier");function gNe(t,e,r){let n=e??t.defaultTier,o=t.tiers.find(s=>s.id===n);return!o||o.status.enabled!==!0||o.status.tierPickerEnabled!==!0?{error:"tierUnavailable"}:AJs(o)?o.id==="balance"&&o.type==="auto"?{target:{model:"auto",autoTier:"balance"}}:o.id==="hydrafusion"&&o.type==="fusion"?r("hydrafusion")?{target:{model:"hydrafusion"}}:{error:"runtimeModelUnavailable"}:o.id==="hydrafusion-max"&&o.type==="fusion"?r("hydrafusion-max")?{target:{model:"hydrafusion-max"}}:{error:"runtimeModelUnavailable"}:{error:"unsupportedTier"}:{error:"unsupportedTier"}}a(gNe,"resolveEnsembleRuntimeTarget");function Rri(t,e,r,n=new Map){if(!e||t.some(m=>m.id==="ensemble"))return[...t];let o=t.findIndex(m=>m.id==="auto"&&m.modelFamily==="auto"&&(!("providerName"in m)||m.providerName==null));if(o<0)return[...t];let s=t[o];if(s.modelPolicy?.state==="disabled")return[...t];if("error"in gNe(e,void 0,r)||e.tiers.some(m=>m.status.enabled&&m.status.tierPickerEnabled===!0&&"error"in gNe(e,m.id,r)))return[...t];let l=e.tiers,u={...s.capabilities.supports};delete u.autoTiers;let d=s.billing?{...s.billing}:void 0;d&&delete d.promo;let f={...s,id:"ensemble",modelFamily:"ensemble",modelName:"Fusion",scopes:["agent-panel"],isChatDefault:!0,capabilities:{...s.capabilities,supports:u},...s.billing?.promo!==void 0?{billing:d&&Object.keys(d).length>0?d:void 0}:{},ensemble:{defaultTier:e.defaultTier,tiers:l.map(({id:m,displayName:g,description:A,type:y,status:E})=>{let _=n.get(m);return{id:m,displayName:g,...A!==void 0?{description:A}:{},type:y,status:{...E},..._?{billing:{promo:{id:_.id,discountPercent:_.discount_percent,startsAt:_.starts_at,endsAt:_.ends_at,showBanner:_.show_banner,message:_.message}}}:{}}})}},h=[...t];return h.splice(o,1,f),h}a(Rri,"withFusionVirtualModel");p();var rw=ae(require("node:path"));var Dri="copilot-language-server:inline-chat",yJs=["file","path","filePath","file_path"],EJs=new Set(["edit","create","str_replace_editor","write"]),_Js=new Set(["git_apply_patch"]),kri=/^\*\*\* (?:Add File|Delete File|Update File|Move to): (.+)$/gm;function vJs(t){let e=rw.dirname(t);return{confinedFsPath:t,confinedName:rw.basename(t),baseDir:e,confinedComparable:nmr(t,e)}}a(vJs,"buildContext");function CJs(t){if(typeof t=="string")try{let e=JSON.parse(t);return e&&typeof e=="object"?e:{}}catch{return{}}return t&&typeof t=="object"?t:{}}a(CJs,"parseToolArgs");function bJs(t){if(typeof t=="string")return t;if(t&&typeof t=="object"){let e=t;if(typeof e.input=="string")return e.input;if(typeof e.patch=="string")return e.patch}}a(bJs,"extractApplyPatchBody");function SJs(t){if(!t.includes("*** Begin Patch"))return;let e=[];kri.lastIndex=0;for(let r of t.matchAll(kri)){let n=r[1].trim();n.length>0&&e.push(n)}return e}a(SJs,"extractApplyPatchPaths");function TJs(t){for(let e of yJs){let r=t[e];if(typeof r=="string"&&r.trim().length>0)return r}}a(TJs,"extractTargetPath");function nmr(t,e){let r=t.startsWith("file:")?Gr(t):t,n=rw.isAbsolute(r)?rw.normalize(r):rw.resolve(e,r);return process.platform==="win32"||process.platform==="darwin"?n.toLowerCase():n}a(nmr,"toComparablePath");function Pri(t,e){return rw.isAbsolute(t)?rw.normalize(t):rw.resolve(e,t)}a(Pri,"resolveTargetPath");function IJs(t,e,r){if(_Js.has(t))return{allowed:!1,reason:`Inline chat may only edit ${r.confinedName}. The ${t} tool cannot be confined to a single file and is not available in inline chat.`};if(t==="apply_patch"){let o=bJs(e);if(o===void 0)return{allowed:!1,reason:`Inline chat denied an apply_patch call with no readable patch body. Only ${r.confinedName} may be edited.`};let s=SJs(o);if(s===void 0)return{allowed:!1,reason:`Inline chat denied an apply_patch call whose body could not be parsed. Only ${r.confinedName} may be edited.`};if(s.length===0)return{allowed:!1,reason:`Inline chat denied an apply_patch call with no file headers. Only ${r.confinedName} may be edited.`};for(let c of s)if(nmr(c,r.baseDir)!==r.confinedComparable)return{allowed:!1,reason:`Inline chat may only edit ${r.confinedFsPath}, not ${Pri(c,r.baseDir)} (apply_patch header: ${c}).`};return{allowed:!0}}if(!EJs.has(t))return{allowed:!0};let n=TJs(CJs(e));return n?nmr(n,r.baseDir)!==r.confinedComparable?{allowed:!1,reason:`Inline chat may only edit ${r.confinedFsPath}, not ${Pri(n,r.baseDir)} (${t} arg: ${n}).`}:{allowed:!0}:{allowed:!1,reason:`Inline chat denied a ${t} call with no resolvable file path. Only ${r.confinedName} may be edited.`}}a(IJs,"evaluateWithContext");function Mri(t){let e=0;return{hook:{source:Dri,handler:a(()=>e>t?Promise.resolve({permissionDecision:"deny",permissionDecisionReason:`Inline chat is limited to ${t} tool-calling turns. No further tool calls are allowed.`}):Promise.resolve(),"handler")},onTurnStart(){e++},reset(){e=0}}}a(Mri,"createInlineTurnLimitHook");function Nri(t){let e=t.startsWith("file:")?Gr(t):t,r=vJs(e);return{source:Dri,handler:a(n=>{let o=IJs(n.toolName,n.toolArgs,r);return o.allowed?Promise.resolve():Promise.resolve({permissionDecision:"deny",permissionDecisionReason:o.reason??"Edit denied: inline chat is confined to the active file."})},"handler")}}a(Nri,"createInlineEditConfinementHook");p();var imr=ae(require("fs"));var oge=new oe("BackgroundAgent.InlineFileContext"),wJs=50*1024,mdt=100,xJs=.4,Ori=25;async function Bri(t,e,r){let n;try{n=si(t).fsPath}catch{return oge.debug(r,`buildInlineFileContext: failed to parse URI ${t}`),{promptFragment:"",isFullContent:!1,isLargeFile:!1}}let o;try{o=await imr.promises.stat(n)}catch{return oge.debug(r,`buildInlineFileContext: failed to stat ${n}`),{promptFragment:"",isFullContent:!1,isLargeFile:!1}}let s=o.size>wJs,c;try{c=await imr.promises.readFile(n,"utf-8")}catch{return oge.debug(r,`buildInlineFileContext: failed to read ${n}`),{promptFragment:"",isFullContent:!1,isLargeFile:s}}let l=e?.selection,u=e?.position,d="",f=!1;if(!s)d=`
|
|
3721
|
+
`))if(o.trim())try{n.push(JSON.parse(o))}catch{}return n}catch(r){return r.code==="ENOENT"?[]:(Khr.warn(this.ctx,`Failed to read spans for conversation=${e}: ${r instanceof Error?r.message:String(r)}`),[])}}getFilePath(e){let r=this.getDirectory();if(!r)throw new Error("Agent debug logs directory not configured");return rge.join(r,KKs(e),WKs)}async getLogFilePath(e){if(!this.isEnabled())return null;let r=rge.resolve(this.getFilePath(e));try{return await pNe.promises.access(r),r}catch{return null}}};function YKs(t){for(let e of t.attributes??[])if(e.key==="gen_ai.conversation.id"){let r=e.value.stringValue;if(r&&r.length>0)return r}}a(YKs,"conversationIdOf");function KKs(t){let e=t.replace(/[^A-Za-z0-9._-]/g,"_").slice(0,120);return e.length>0?e:"unknown"}a(KKs,"sanitizeForPath");p();function hri(t){if(t!=null)return typeof t=="string"?{stringValue:t}:typeof t=="boolean"?{boolValue:t}:typeof t=="number"?Number.isInteger(t)?{intValue:String(t)}:{doubleValue:t}:Array.isArray(t)?{arrayValue:{values:t.map(r=>hri(r)).filter(r=>r!==void 0)}}:{stringValue:JSON.stringify(t)}}a(hri,"encodeAnyValue");function ik(t){if(!t)return[];let e=[];for(let[r,n]of Object.entries(t)){let o=hri(n);o!==void 0&&e.push({key:r,value:o})}return e}a(ik,"encodeAttributes");function JKs(t,e){return{resourceSpans:[{resource:{attributes:Object.entries(e).map(([r,n])=>({key:r,value:{stringValue:n}}))},scopeSpans:[{scope:{name:"copilot-chat"},spans:t}]}]}}a(JKs,"wrapInResourceSpans");function mri(t,e){let r=JKs(t,{"service.name":"copilot-chat","session.id":e.conversationId});return r.copilotChat={exportedAt:new Date().toISOString(),exporterVersion:"",sessionId:e.conversationId,...e.sessionTitle?{sessionTitle:e.sessionTitle}:{}},r}a(mri,"buildChatDebugLogExport");var yri=require("crypto");var gri=new oe("BackgroundAgent.CliOTelTracker"),ZKs={USER_REQUEST:"copilot_chat.user_request"},Jhr="main";function nge(t){return(0,yri.randomUUID)().replace(/-/g,"").slice(0,t*2)}a(nge,"generateHexId");function Eri(){return BigInt(Date.now())*1000000n}a(Eri,"nowNano");function ige(t){if(t){let e=Date.parse(t);if(!Number.isNaN(e))return BigInt(e)*1000000n}return Eri()}a(ige,"isoToNano");function Ari(t){if(t!=null){if(typeof t=="string")return t;try{return JSON.stringify(t)}catch{return}}}a(Ari,"toAttributeString");function _ri(t,e,r){if(!t.get(vn).getCapabilities().agentDebugLog)return;let n=t.get(tw);if(n.isEnabled())return new Zhr(t,e,r,n)}a(_ri,"createCliOTelTracker");var Zhr=class{constructor(e,r,n,o){this._ctx=e;this._sessionId=r;this._persistence=o;this._pendingTools=new Map;this._subagentParentToolCallIds=new Map;for(let s of n.getEvents())this._observeSubagentParent(s),this._updateSystemInstructions(s)}static{a(this,"CliOTelTracker")}onEvent(e){switch(this._observeSubagentParent(e),e.type){case"system.message":this._updateSystemInstructions(e);break;case"user.message":this._pendingUserRequest=e.data.content;break;case"assistant.turn_start":this._ensureRequest(ige(e.timestamp));break;case"assistant.usage":this._onUsage(e);break;case"assistant.message":this._onAssistantMessage(e);break;case"tool.execution_start":this._onToolStart(e);break;case"tool.execution_complete":this._onToolComplete(e);break;case"session.idle":case"session.error":try{this._flushRequest()}catch(r){gri.warn(this._ctx,`Failed to flush debug spans for session=${this._sessionId}: ${r instanceof Error?r.message:String(r)}`)}break;default:break}}_ensureRequest(e){return this._request||(this._request={traceId:nge(16),invokeAgentSpanId:nge(8),startNano:e,userRequest:this._pendingUserRequest,usages:[],responseByAgent:new Map,toolSpanIds:new Map},this._pendingUserRequest=void 0),this._request}_onUsage(e){let r=this._ensureRequest(ige(e.timestamp)),n=this._parentToolCallId(e),o={data:e.data,endNano:ige(e.timestamp),agentKey:n??Jhr,parentToolCallId:n,systemInstructions:e.agentId?void 0:this._systemInstructions};r.usages.push(o)}_observeSubagentParent(e){if(e.type==="subagent.started"&&typeof e.agentId=="string"){let r=e.data.toolCallId;typeof r=="string"&&this._subagentParentToolCallIds.set(e.agentId,r)}else(e.type==="session.idle"||e.type==="session.error")&&this._subagentParentToolCallIds.clear()}_parentToolCallId(e){if(typeof e.agentId=="string"){let n=this._subagentParentToolCallIds.get(e.agentId);if(n)return n}let r=e.data.parentToolCallId;return typeof r=="string"?r:void 0}_updateSystemInstructions(e){e.type==="system.message"&&!e.agentId&&e.data.role==="system"&&typeof e.data.content=="string"&&(this._systemInstructions=e.data.content)}_onAssistantMessage(e){let r=this._request;if(!r)return;let n=e.data.content;if(!n)return;let o=this._parentToolCallId(e)??Jhr;r.responseByAgent.set(o,(r.responseByAgent.get(o)??"")+n)}_onToolStart(e){let r=e.data.toolCallId;if(!r)return;let n=this._ensureRequest(ige(e.timestamp)),o=this._parentToolCallId(e),s=(o?n.toolSpanIds.get(o):void 0)??n.invokeAgentSpanId,c=nge(8);this._pendingTools.set(r,{traceId:n.traceId,spanId:c,parentSpanId:s,toolName:e.data.toolName??"unknown",arguments:e.data.arguments,startNano:ige(e.timestamp)}),n.toolSpanIds.set(r,c)}_onToolComplete(e){let r=e.data.toolCallId;if(!r)return;let n=this._pendingTools.get(r);if(!n)return;this._pendingTools.delete(r);let o=ige(e.timestamp),s=e.data.success===!1,c=e.data.error?.message,l={[jn.OPERATION_NAME]:"execute_tool",[jn.CONVERSATION_ID]:this._sessionId,[jn.TOOL_NAME]:n.toolName,[jn.TOOL_CALL_ID]:r},u=Ari(n.arguments);u!==void 0&&(l[jn.TOOL_CALL_ARGUMENTS]=u);let d=e.data.result??e.data.error,f=Ari(d);f!==void 0&&(l[jn.TOOL_CALL_RESULT]=f),this._appendSpans([{traceId:n.traceId,spanId:n.spanId,parentSpanId:n.parentSpanId,name:`execute_tool ${n.toolName}`,kind:1,startTimeUnixNano:n.startNano.toString(),endTimeUnixNano:o.toString(),attributes:ik(l),events:[],status:s?{code:2,message:c??"Tool execution error"}:{code:1}}])}_flushRequest(){let e=this._request;if(!e)return;this._request=void 0;let r=Eri(),n=[this._buildInvokeAgentSpan(e,r)],o=this._buildUserMessageSpan(e);o&&n.push(o);let s=new Map;e.usages.forEach((c,l)=>{c.data.model&&s.set(c.agentKey,l)}),e.usages.forEach((c,l)=>{let u=s.get(c.agentKey)===l,d=this._buildChatSpan(e,c,u);d&&n.push(d)}),n.push(...this._buildAgentResponseSpans(e)),this._appendSpans(n)}_buildInvokeAgentSpan(e,r){return{traceId:e.traceId,spanId:e.invokeAgentSpanId,name:"invoke_agent copilotcli",kind:1,startTimeUnixNano:e.startNano.toString(),endTimeUnixNano:r.toString(),attributes:ik({[jn.OPERATION_NAME]:"invoke_agent",[jn.AGENT_NAME]:"copilotcli",[jn.CONVERSATION_ID]:this._sessionId}),events:[],status:{code:1}}}_buildUserMessageSpan(e){if(!e.userRequest)return;let r=e.startNano.toString();return{traceId:e.traceId,spanId:nge(8),parentSpanId:e.invokeAgentSpanId,name:"user_message",kind:1,startTimeUnixNano:r,endTimeUnixNano:r,attributes:ik({[jn.OPERATION_NAME]:"user_message",[jn.CONVERSATION_ID]:this._sessionId,[ZKs.USER_REQUEST]:e.userRequest}),events:[{name:"user_message",timeUnixNano:r,attributes:ik({content:e.userRequest})}],status:{code:1}}}_buildAgentResponseSpans(e){let r=new Map;for(let o of e.usages)o.data.model&&r.set(o.agentKey,o.endNano);let n=[];for(let[o,s]of e.responseByAgent){if(!s)continue;let c=o===Jhr?e.invokeAgentSpanId:e.toolSpanIds.get(o)??e.invokeAgentSpanId,l=(r.get(o)??e.startNano).toString();n.push({traceId:e.traceId,spanId:nge(8),parentSpanId:c,name:"agent_response",kind:1,startTimeUnixNano:l,endTimeUnixNano:l,attributes:ik({[jn.OPERATION_NAME]:"agent_response",[jn.CONVERSATION_ID]:this._sessionId,[jn.OUTPUT_MESSAGES]:D8("assistant",s)}),events:[],status:{code:1}})}return n}_buildChatSpan(e,r,n){let o=r.data.model;if(!o)return;let s=(r.parentToolCallId?e.toolSpanIds.get(r.parentToolCallId):void 0)??e.invokeAgentSpanId,c={[jn.OPERATION_NAME]:"chat",[jn.CONVERSATION_ID]:this._sessionId,[jn.RESPONSE_MODEL]:o},l=r.data.inputTokens,u=r.data.outputTokens,d=r.data.cacheReadTokens,f=r.data.cacheWriteTokens;typeof l=="number"&&(c[jn.USAGE_INPUT_TOKENS]=l),typeof u=="number"&&(c[jn.USAGE_OUTPUT_TOKENS]=u),typeof d=="number"&&(c[jn.USAGE_CACHE_READ_INPUT_TOKENS]=d),typeof f=="number"&&(c[jn.USAGE_CACHE_CREATION_INPUT_TOKENS]=f),r.systemInstructions&&(c[jn.SYSTEM_INSTRUCTIONS]=JSON.stringify([{type:"text",content:r.systemInstructions}]));let h=n?e.responseByAgent.get(r.agentKey):void 0;h&&(c[jn.OUTPUT_MESSAGES]=D8("assistant",h));let m=r.endNano,g=r.data.duration,A=typeof g=="number"&&g>=0?m-BigInt(Math.round(g))*1000000n:m;return{traceId:e.traceId,spanId:nge(8),parentSpanId:s,name:`chat ${o}`,kind:1,startTimeUnixNano:A.toString(),endTimeUnixNano:m.toString(),attributes:ik(c),events:[],status:{code:1}}}_appendSpans(e){if(e.length!==0)try{this._persistence.appendSpans(e).catch(r=>this._warnPersistFailure(r))}catch(r){this._warnPersistFailure(r)}}_warnPersistFailure(e){gri.warn(this._ctx,`Failed to persist debug spans for session=${this._sessionId}: ${e instanceof Error?e.message:String(e)}`)}};Ro();var qS=new oe("BackgroundAgent.SessionEventRouter"),XKs="backgroundAgent",eJs="backgroundAgent.external",bri=4096;function tJs(t){return t.type.startsWith("assistant.")||t.type.startsWith("tool.execution_")||t.type==="external_tool.requested"||t.type==="subagent.started"}a(tJs,"isExecutionEvidence");var hNe=class extends Error{static{a(this,"LocalTurnAdmissionError")}},ddt=class{constructor(e,r,n){this.ctx=e;this.registry=r;this.notificationSender=n;this.bindings=new Map;this.generations=new Map;this.localTurns=new WeakMap;this.lastNanoAiu=new Map}static{a(this,"SessionEventRouter")}bind(e,r){let n=this.bindings.get(e);if(n?.session===r&&n.accepting)return n.handle;let o=n?this.disposeBinding(n).catch(g=>{qS.warn(this.ctx,"Failed to drain replaced session event binding",{sessionId:e,error:g instanceof Error?g.message:String(g)})}):Promise.resolve(),s=(this.generations.get(e)??0)+1;this.generations.set(e,s);let c=new Set,l=[],u={},d=r.on("*",g=>{(g.type==="commands.changed"||g.type==="session.tools_updated")&&this.registry.invalidateCommandCatalog(e,r),u.current?u.current(g):l.push(g)});try{let g=new Set(l.map(A=>A.id));for(let A of r.getEvents().slice(-bri))g.has(A.id)||Cri(c,A.id)}catch(g){qS.warn(this.ctx,"Failed to seed session event deduplication",{sessionId:e,error:g instanceof Error?g.message:String(g)})}let f={},h={sessionId:e,session:r,dispose:a(()=>f.current?this.disposeBinding(f.current):Promise.resolve(),"dispose")},m={sessionId:e,session:r,generation:s,accepting:!0,unsubscribe:d,tail:o,sideEffectTail:o,processedEventIds:c,pendingRootEvents:0,turns:[],handle:h};f.current=m,this.bindings.set(e,m),u.current=g=>{this.enqueueEvent(m,g)};for(let g of l)u.current(g);return h}unbind(e,r){let n=this.bindings.get(e);return!n||n.session!==r?Promise.resolve():this.disposeBinding(n)}hasActiveTurn(e,r){let n=this.bindings.get(e);return n?.session===r&&n.accepting&&(n.pendingRootEvents>0||n.turns.some(o=>!o.completed))}startLocalTurn(e,r,n){if(this.registry.hasCopilotCommandInvocation(e,r))throw new Error(`Cannot start an agent turn while a Copilot command is running: ${e}`);let o=this.requireCurrentBinding(e,r);return this.registerLocalTurn(o,n)}registerLocalTurn(e,r){e.recoveredUnstartedTurnIndex=void 0;let n={sessionId:e.sessionId,turnIndex:r.turnIndex},o=this.createTurn(e,{kind:"local",turnIndex:r.turnIndex,requestSource:XKs,isByok:r.isByok??!1,ensembleTelemetryTier:r.ensembleTelemetryTier,rooted:!1,onTerminal:r.onTerminal});return o.localHandle=n,this.localTurns.set(n,{binding:e,turn:o}),n}startLocalTurnForCommand(e,r,n){let o=this.requireCurrentBinding(e,r);if(this.registry.get(e)!==r||!this.registry.hasCopilotCommandInvocation(e,r)||this.hasActiveTurn(e,r))throw new hNe("Cannot start a command turn: session changed, no command is running, or session is not idle");return this.registerLocalTurn(o,n)}markLocalTurnCancelled(e){let r=this.localTurns.get(e);r&&(r.turn.cancelled=!0)}failLocalTurn(e,r){let n=this.localTurns.get(e);return!n||n.turn.completed||this.bindings.get(e.sessionId)!==n.binding||!n.binding.accepting?Promise.resolve():this.enqueueEvent(n.binding,r,n.turn)}async discardLocalTurn(e){let r=this.localTurns.get(e);r&&(await r.binding.tail,this.finishTurn(r.binding,r.turn))}currentLocalTurn(e,r){let n=this.bindings.get(e);if(!(n?.session!==r||!n.accepting||n.turns.length!==1))return n.turns[0].localHandle}recoverUnstartedTurn(e){let r=this.localTurns.get(e);if(!r)return Promise.resolve(!1);let{binding:n,turn:o}=r,s=n.tail.then(()=>this.bindings.get(e.sessionId)!==n||this.registry.get(e.sessionId)!==n.session||!n.accepting||n.pendingRootEvents>0||n.turns.length!==1||n.turns[0]!==o||o.completed||o.executionObserved?!1:(o.cancelled=!0,this.finishTurn(n,o),n.recoveredUnstartedTurnIndex=o.turnIndex,qS.info(this.ctx,"Optimistically recovered an unstarted Inline turn after successful abort"),!0));return n.tail=s.then(()=>{}),s}processedEventIdsForTesting(){return new Map([...this.bindings].map(([e,r])=>[e,r.processedEventIds]))}requireCurrentBinding(e,r){let n=this.bindings.get(e);if(!n||n.session!==r||!n.accepting)throw new Error(`No active session event binding for ${e}`);return n}createTurn(e,r){let n={...r,cancelled:!1,completed:!1,executionObserved:!1,startTimeMs:performance.now(),persistence:pri(this.ctx,e.sessionId,`bg-turn-${Bt()}`),cliOtelTracker:_ri(this.ctx,e.sessionId,e.session),waitTracker:new udt};return e.turns.push(n),n}enqueueEvent(e,r,n){if(!e.accepting)return Promise.resolve();let o=vri(r);if(o&&(e.recoveredUnstartedTurnIndex=void 0),!e.processedEventIds.has(r.id)&&tJs(r)){for(let c of e.turns)c.executionObserved=!0;e.recoveredUnstartedTurnIndex!==void 0&&(qS.warn(this.ctx,"Execution observed after optimistic Inline Stop recovery before another turn"),e.recoveredUnstartedTurnIndex=void 0)}o&&e.pendingRootEvents++;let s=e.tail.then(async()=>{try{await this.projectEvent(e,r,n)}finally{o&&e.pendingRootEvents--}});return e.tail=s.catch(c=>{qS.error(this.ctx,"Failed to project background-agent session event",{sessionId:e.sessionId,eventType:r.type,error:c instanceof Error?c.message:String(c)})}),e.tail}async projectEvent(e,r,n){if(n?.completed)return;if(e.processedEventIds.has(r.id)){qS.debug(this.ctx,`Skipping duplicate SDK event: ${r.type} (id=${r.id})`);return}if(Cri(e.processedEventIds,r.id),r.type==="session.remote_steerable_changed"&&this.bindings.get(e.sessionId)===e&&this.registry.get(e.sessionId)===e.session){let l=this.registry.getRemoteState(e.sessionId);this.registry.setRemoteState(e.sessionId,{desired:l?.desired??!1,status:{...r.data.remoteSteerable&&l?.status.url?{url:l.status.url}:{},remoteSteerable:r.data.remoteSteerable},cleanupRegistered:l?.cleanupRegistered??!1,...l?.cleanupSession?{cleanupSession:l.cleanupSession}:{}})}r.type==="assistant.turn_start"&&this.registry.getTurnLimiter(e.sessionId)?.onTurnStart();let o=n&&!n.completed?n:void 0;if(!o&&vri(r)){let l=e.turns.find(u=>u.kind==="local"&&!u.rooted&&!u.completed);l&&r.data.source===void 0?(l.rooted=!0,o=l):o=this.createTurn(e,{kind:"external",turnIndex:this.registry.incrementTurnIndex(e.sessionId),requestSource:eJs,isByok:this.registry.getProviderModel(e.sessionId)?.provider!==void 0,rooted:!0})}if(o??=e.turns.find(l=>l.rooted&&!l.completed)??e.turns.find(l=>!l.completed),o?.persistence)try{o.persistence.persistEvent(r)}catch(l){qS.warn(this.ctx,"Failed to persist background-agent event",{eventType:r.type,error:l instanceof Error?l.message:String(l)})}if(o?.waitTracker.trackEvent(r),o?.cliOtelTracker)try{o.cliOtelTracker.onEvent(r)}catch(l){qS.warn(this.ctx,"Failed to synthesize debug span",{eventType:r.type,error:l instanceof Error?l.message:String(l)})}let s=this.captureAuthErrorSnapshot(e,r,o);s?.statusCode==="401"&&this.ctx.get(Lt).resetToken("backgroundAgent.session.error",401);let c=r.type==="permission.requested"&&r.data.permissionRequest.kind==="shell"?this.withTerminalShell(e.session,r):r;await this.sendSessionUpdateNotification(e.sessionId,c,o?.turnIndex),r.type==="session.todos_changed"&&(e.sideEffectTail=e.sideEffectTail.then(()=>idt(this.ctx,this.notificationSender,e.sessionId,e.session))),(r.type==="session.idle"||r.type==="session.error")&&o&&(r.type==="session.error"&&!o.cancelled&&this.emitTurnFailedTelemetry(e.sessionId,o.turnIndex,r.data.errorType==="SendMessageError"?"SendMessageError":"SessionError",o.requestSource),this.emitEnsembleTurnTelemetry(o,r.type),this.finishTurn(e,o),await Promise.all([this.emitTurnCompleteTelemetry(e,o),this.emitSessionMetricsTelemetry(e,o)])),s&&Jpe(this.ctx,s)}emitEnsembleTurnTelemetry(e,r){if(e.kind!=="local"||!e.ensembleTelemetryTier||e.completed)return;let n=e.cancelled?"cancelled":r==="session.error"?"failure":"success";try{Mi(this.ctx,"backgroundAgent.ensembleTurn",{autoTier:e.ensembleTelemetryTier,status_text:n})}catch(o){qS.warn(this.ctx,"Failed to emit bounded Ensemble turn telemetry",{errorType:o instanceof Error?o.name:"unknown"})}}finishTurn(e,r){if(r.completed)return;r.completed=!0;let n=e.turns.indexOf(r);n>=0&&e.turns.splice(n,1),r.localHandle&&this.localTurns.delete(r.localHandle);try{r.onTerminal?.()}catch(o){qS.warn(this.ctx,"Local turn terminal callback failed",{sessionId:e.sessionId,error:o instanceof Error?o.message:String(o)})}}disposeBinding(e){if(e.disposePromise)return e.disposePromise;e.accepting=!1;try{e.unsubscribe()}catch(r){qS.warn(this.ctx,"Failed to unsubscribe session event binding",{sessionId:e.sessionId,error:r instanceof Error?r.message:String(r)})}return e.disposePromise=(async()=>{await e.tail;for(let r of[...e.turns])this.finishTurn(e,r);await e.sideEffectTail,this.bindings.get(e.sessionId)===e&&(this.bindings.delete(e.sessionId),this.lastNanoAiu.delete(e.sessionId))})(),e.disposePromise}async sendSessionUpdateNotification(e,r,n){try{await this.notificationSender.sendBackgroundAgentSessionUpdate(e,r,void 0,n)}catch(o){qS.error(this.ctx,"Failed to send session update notification:",o)}}withTerminalShell(e,r){let n=r.data.permissionRequest.toolCallId;if(!n)return r;for(let o of e.getEvents()){if(o.type!=="assistant.message")continue;let s=o.data.toolRequests?.find(l=>l.toolCallId===n);if(!s)continue;let c=s.name==="powershell"?"powershell":s.name==="bash"?"sh":void 0;return c?{...r,data:{...r.data,terminalShell:c}}:r}return r}async emitTurnCompleteTelemetry(e,r){try{let n=performance.now()-r.startTimeMs,o=this.registry.getChatMode(e.sessionId)??"agent",c=(await e.session.usage.getMetrics()).totalNanoAiu,l=this.lastNanoAiu.get(e.sessionId)??0,u=typeof c=="number"&&Number.isFinite(c),d=u?Math.min(l,c):l;u&&this.lastNanoAiu.set(e.sessionId,c);let f=u?(c-d)/1e9:0,h=r.waitTracker.data;Wt(this.ctx,"backgroundAgent.turn.complete",{requestSource:r.requestSource,sessionId:e.sessionId,chatMode:o,uiKind:zee(o),agentProvider:"BACKGROUND",turnIndex:String(r.turnIndex)},{totalDurationMs:n,totalUserWaitMs:rJs(h),permissionWaitMs:h.permission.totalMs,permissionWaitCount:h.permission.count,userInputWaitMs:h.user_input.totalMs,userInputWaitCount:h.user_input.count,exitPlanModeWaitMs:h.exit_plan_mode.totalMs,exitPlanModeWaitCount:h.exit_plan_mode.count,credits:f})}catch(n){qS.warn(this.ctx,"Failed to emit turn.complete telemetry",{sessionId:e.sessionId,error:n instanceof Error?n.message:String(n)})}}emitTurnFailedTelemetry(e,r,n,o){let s=this.registry.getChatMode(e)??"agent";Wt(this.ctx,"backgroundAgent.turn.failed",{requestSource:o,sessionId:e,uiKind:zee(s),agentProvider:"BACKGROUND",errorType:n,turnIndex:String(r)})}captureAuthErrorSnapshot(e,r,n){if(r.type!=="session.error")return;let{errorType:o,errorCode:s,statusCode:c}=r.data;if(!(o==="authentication"||o==="authorization"||c===401||c===403)||(n?.isByok??this.registry.getProviderModel(e.sessionId)?.provider!==void 0))return;let d=this.ctx.get(Lt).peekCachedTokenLifetime();return{source:n?.requestSource??"",sessionId:e.sessionId,uiKind:zee(this.registry.getChatMode(e.sessionId)??"agent"),errorType:o,errorCode:s??"",statusCode:c===void 0?"":String(c),copilotTokenState:d.state,copilotTokenRemainingLifetime:d.remainingSeconds}}async emitSessionMetricsTelemetry(e,r){try{let n=this.registry.getChatMode(e.sessionId)??"agent",o=await e.session.usage.getMetrics(),s=0,c=0,l=0,u=0,d=0,f=0,h=[];for(let[m,g]of Object.entries(o.modelMetrics))g&&(s+=g.usage.inputTokens,c+=g.usage.outputTokens,l+=g.usage.cacheReadTokens,u+=g.usage.cacheWriteTokens,d+=g.usage.reasoningTokens??0,f+=g.requests.count,h.push(r.isByok?"byok models":m));Wt(this.ctx,"backgroundAgent.session.metrics",{requestSource:r.requestSource,sessionId:e.sessionId,uiKind:zee(n),agentProvider:"BACKGROUND",modelNames:h.join(","),turnIndex:String(r.turnIndex)},{totalApiDurationMs:o.totalApiDurationMs,totalInputTokens:s,totalOutputTokens:c,totalCacheReadTokens:l,totalCacheWriteTokens:u,totalReasoningTokens:d,llmCallCount:f,totalPremiumRequestCost:o.totalPremiumRequestCost})}catch(n){qS.warn(this.ctx,"Failed to emit session.metrics telemetry",{sessionId:e.sessionId,error:n instanceof Error?n.message:String(n)})}}};function vri(t){return t.type==="user.message"&&!t.agentId&&t.data.delivery!=="steering"&&t.data.isAutopilotContinuation!==!0}a(vri,"isRootUserMessage");function Cri(t,e){if(t.has(e)||(t.add(e),t.size<=bri))return;let r=t.values().next().value;r!==void 0&&t.delete(r)}a(Cri,"rememberEventId");function rJs(t){return t.permission.totalMs+t.user_input.totalMs+t.exit_plan_mode.totalMs}a(rJs,"totalUserWaitMs");Ro();var Xhr=new oe("BackgroundAgent.CopilotCommand"),nJs={includeBuiltins:!0,includeSkills:!1,includeClientCommands:!1},fdt=class{constructor(e,r,n,o,s,c,l,u){this.ctx=e;this.policy=r;this.registry=n;this.eventRouter=o;this.turnDriver=s;this.sandboxConfigSync=c;this.permissionModeController=l;this.notificationSender=u}static{a(this,"CopilotCommandCoordinator")}invokeDirect(e){return this.registry.runSerializedCopilotCommandInvocation(e.sessionId,e.session,()=>this.invokeDirectSerialized(e))}async invokeDirectSerialized(e){let r=performance.now(),n="invoke_failed",o="",s,c={stage:"prepareCommand"};try{this.assertAdmitted(e);let l=iJs(e.message);if(!l)throw this.error(e,"invocation_not_admitted");c.stage="listCommands";let u=await this.awaitPreparation(e,e.session.commands.list(nJs));c.stage="prepareCommand";let d=Tri(u.commands,l.requestedName),f=Tri(this.policy.filter(u).commands,l.requestedName);if(!d||!f||d.name!==f.name)throw this.error(e,"invocation_not_admitted");this.assertAdmitted(e);let h;c.stage="invokeCommand";try{h=await e.session.commands.invoke({name:f.name,input:l.input})}catch(A){s=UHe(A);let y=lJs(A);throw Xhr.warn(this.ctx,"Copilot command invocation failed",{sessionId:e.sessionId,error:y}),this.error(e,"invoke_failed",y)}c.stage="validateResult";let m=oJs(h,e);o=m.kind,m.kind==="agent-prompt"&&await this.handoffAgentPrompt(e,m,c);let g={id:Bt(),timestamp:new Date().toISOString(),parentId:null,ephemeral:!0,type:"command.invokeResult",origin:M8(e),data:m};try{await this.notificationSender.sendBackgroundAgentSessionUpdate(e.sessionId,g)}catch(A){Xhr.warn(this.ctx,"Failed to deliver Copilot command result notification",{sessionId:e.sessionId,error:A instanceof Error?A.message:String(A)})}n="success"}catch(l){throw l instanceof hNe?(n="invocation_not_admitted",this.error(e,n)):l instanceof g_?(n=l.data.kind,l):(s=UHe(l),Xhr.warn(this.ctx,"Copilot command processing failed",{sessionId:e.sessionId,error:l instanceof Error?l.message:String(l)}),l instanceof vX?this.error(e,"invoke_failed",l.message):this.error(e,"invoke_failed"))}finally{let l={requestSource:"backgroundAgent",result:n,resultKind:o},u={totalTimeMs:performance.now()-r};n==="invoke_failed"?Jo(this.ctx,"backgroundAgent.commandInvoke",s,{...l,failureStage:c.stage},u):Wt(this.ctx,"backgroundAgent.commandInvoke",l,u),mt(this.ctx,"backgroundAgent.commandInvoke",tr.createAndMarkAsIssued(l))}}async handoffAgentPrompt(e,r,n){if(this.assertAdmitted(e),n.stage="alignSandbox",!await this.awaitPreparation(e,this.sandboxConfigSync.alignSession(e.sessionId,e.session,"localSend",e.sandboxEnabled)))throw this.error(e,"invocation_not_admitted");e.sandboxEnabled!==void 0&&this.sandboxConfigSync.reportSelection(e.sandboxEnabled),this.assertAdmitted(e),n.stage="synchronizePermissions",await this.awaitPreparation(e,this.permissionModeController.synchronizeForSend(e.sessionId,e.session,e.permissionMode??"default")),this.assertAdmitted(e),r.mode&&(n.stage="setMode",await this.awaitPreparation(e,e.session.mode.set({mode:r.mode}))),this.assertAdmitted(e);let s={prompt:r.prompt,displayPrompt:r.displayPrompt};if(e.references?.length){n.stage="convertReferences";let l=await this.awaitPreparation(e,Sst(e.references,this.ctx));l.length&&(s.attachments=l)}this.assertAdmitted(e),n.stage="sendPrompt";let c=this.registry.incrementTurnIndex(e.sessionId);await this.turnDriver.wireAndSend(e.sessionId,e.session,s,c,e.token,this.registry.getProviderModel(e.sessionId)?.provider!==void 0,{origin:"copilot-command"})}async awaitPreparation(e,r){try{return await r}catch(n){throw Sri(e)?this.error(e,"invocation_not_admitted"):n}}assertAdmitted(e){if(Sri(e)||this.registry.get(e.sessionId)!==e.session||this.eventRouter.hasActiveTurn(e.sessionId,e.session))throw this.error(e,"invocation_not_admitted")}error(e,r,n){return new g_(r,M8(e),n)}};function Sri(t){return t.stopSignal?.aborted===!0||t.token?.isCancellationRequested===!0}a(Sri,"isCancelled");function M8(t){return{type:"direct",copilotCommandInvocationId:t.copilotCommandInvocationId}}a(M8,"directOrigin");function iJs(t){if(!t.startsWith("/"))return;let e=1;for(;e<t.length&&!/\s/.test(t[e]);)e++;if(e===1)return;let r=t.slice(1,e),n=e<t.length?t.slice(e+1):"";return{requestedName:r,input:n}}a(iJs,"parseLeadingSlashCommand");function Tri(t,e){let r=e.toLowerCase();return t.find(n=>n.name.toLowerCase()===r)??t.find(n=>n.aliases?.some(o=>o.toLowerCase()===r))}a(Tri,"resolveCommand");function oJs(t,e){if(!sJs(t)||typeof t.kind!="string")throw new g_("invalid_result_payload",M8(e));switch(t.kind){case"agent-prompt":if(typeof t.prompt!="string"||typeof t.displayPrompt!="string"||!aJs(t.notice)||!cJs(t.mode))throw new g_("invalid_result_payload",M8(e));break;case"text":if(typeof t.text!="string"||!emr(t.markdown)||!emr(t.preserveAnsi))throw new g_("invalid_result_payload",M8(e));break;case"completed":if(t.message!==void 0&&typeof t.message!="string")throw new g_("invalid_result_payload",M8(e));break;case"select-subcommand":if(!Array.isArray(t.options)||t.options.length===0)throw new g_("invalid_result_payload",M8(e));break;default:throw new g_("unsupported_result_kind",M8(e),`Copilot command returned an unsupported result kind: ${t.kind}.`)}if(!emr(t.runtimeSettingsChanged))throw new g_("invalid_result_payload",M8(e));return t}a(oJs,"validateSupportedDirectResult");function sJs(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}a(sJs,"isRecord");function emr(t){return t===void 0||typeof t=="boolean"}a(emr,"optionalBoolean");function aJs(t){return t===void 0||typeof t=="string"}a(aJs,"optionalString");function cJs(t){return t===void 0||t==="interactive"||t==="plan"||t==="autopilot"}a(cJs,"optionalSessionMode");function lJs(t){let e=Au(t),r="Request session.commands.invoke failed with message: ";return e.startsWith(r)?e.slice(r.length):e}a(lJs,"commandInvocationErrorMessage");p();var uJs=new Set(["blame","env","rename","research","security-review","session","share","skills"]),pdt=class{constructor(e=uJs,r=()=>!0){this.allowedCommandNames=e;this.skillsEnabled=r}static{a(this,"CopilotCommandPolicy")}filterCompletions(e){let r=this.filter({...e,commands:e.commands.filter(o=>o.kind==="builtin")}),n=e.commands.filter(o=>o.kind==="skill");return{...e,commands:[...r.commands,...n.length&&this.skillsEnabled()?n:[]]}}filter(e){let r=e.commands.filter(n=>this.allowedCommandNames.has(n.name)?n.kind==="skill"||n.name.toLowerCase()==="create-skill"||n.name.toLowerCase().startsWith("skill:")?this.skillsEnabled():!0:!1);return r.length===e.commands.length?e:{...e,commands:r}}};p();p();var hdt=new oe("EnsembleAutoMetadata"),dJs=30*6e4,HS=new WeakMap,Iri=new WeakSet;function mNe(t){HS.delete(t)}a(mNe,"clearEnsembleAutoMetadataCache");function fJs(t,e){Iri.has(t)||(Iri.add(t),e.onDidResetToken(()=>HS.delete(t)),e.onDidChangeTokenResult(()=>HS.delete(t)),t.get(Fn).onDidChangeCopilotSettings(()=>{(Et(t,Ne.EnableEnsemble)!==!0||Et(t,Ne.EnsembleEnabledOverride)==="false")&&HS.delete(t)}))}a(fJs,"invalidateAutoMetadataWithAuth");var pJs=b.Object({id:b.String({minLength:1}),kind:b.Literal("promotion"),applies_to:b.Array(b.Object({type:b.Literal("auto_tier"),id:b.String({minLength:1})}),{minItems:1}),message:b.String({minLength:1}),discount_percent:b.Number(),starts_at:b.String({minLength:1}),ends_at:b.String({minLength:1}),show_banner:b.Boolean()}),wri=b.Object({service_messages:b.Array(b.Unknown()),auto:b.Optional(b.Object({default_tier:b.String({minLength:1}),tiers:b.Array(b.Object({id:b.String({minLength:1}),display_name:b.String({minLength:1}),description:b.Optional(b.String()),type:b.String({minLength:1}),status:b.Object({enabled:b.Boolean(),tier_picker_enabled:b.Optional(b.Boolean()),reason:b.Optional(b.String()),message:b.Optional(b.String())})}))}))});function hJs(t){let e=t?.replace(/\/\d+(?=\/|$)/g,"").replace(/^\//,"").replace(/\//g,".");switch(e){case"service_messages":case"auto":case"auto.default_tier":case"auto.tiers":case"auto.tiers.id":case"auto.tiers.display_name":case"auto.tiers.description":case"auto.tiers.type":case"auto.tiers.status":case"auto.tiers.status.enabled":case"auto.tiers.status.tier_picker_enabled":case"auto.tiers.status.reason":case"auto.tiers.status.message":return e;default:return"unknown"}}a(hJs,"safeSchemaField");function mJs(t,e){let r=a((c,l)=>{e?.({reason:c,field:l})},"reject");if(!qb.Check(wri,t)){let c=Array.from(qb.Errors(wri,t))[0];return r("invalidSchema",hJs(c?.path))}let{auto:n}=t;if(!n)return{serviceMessages:t.service_messages};if(!n.default_tier.trim())return r("blankDefault","auto.default_tier");for(let c of n.tiers){if(!c.id.trim())return r("blankTierField","auto.tiers.id");if(!c.display_name.trim())return r("blankTierField","auto.tiers.display_name");if(!c.type.trim())return r("blankTierField","auto.tiers.type")}if(new Set(n.tiers.map(c=>c.id)).size!==n.tiers.length)return r("duplicateTierId","auto.tiers.id");let o=n.tiers.find(c=>c.id===n.default_tier);if(!o)return r("missingDefault","auto.default_tier");if(!o.status.enabled)return r("disabledDefault","auto.default_tier");if(o.status.tier_picker_enabled!==!0)return r("hiddenDefault","auto.default_tier");let s=n.tiers.map(c=>({id:c.id,displayName:c.display_name,...c.description!==void 0?{description:c.description}:{},type:c.type,status:{enabled:c.status.enabled,...c.status.tier_picker_enabled!==void 0?{tierPickerEnabled:c.status.tier_picker_enabled}:{},...c.status.reason!==void 0?{reason:c.status.reason}:{},...c.status.message!==void 0?{message:c.status.message}:{}}}));return{serviceMessages:t.service_messages,candidate:{defaultTier:n.default_tier,tiers:s}}}a(mJs,"parseEnsembleAutoMetadata");async function gJs(t,e){try{let r=await G3(t,"/meta",e);if(!r.ok){hdt.warn(t,"Ensemble metadata unavailable from CAPI",{status:r.status});return}let n=await r.json();return mJs(n,o=>{hdt.warn(t,"Invalid Ensemble auto metadata from CAPI",o)})}catch(r){hdt.warn(t,"Failed to fetch Ensemble auto metadata",{errorType:r instanceof Error?r.name:"unknown"});return}}a(gJs,"fetchEnsembleAutoMetadata");async function tmr(t,e=!1,r=Date.now){if(Et(t,Ne.EnableEnsemble)!==!0){HS.delete(t);return}let n=t.get(Lt);fJs(t,n);try{let o=await n.getToken(),s=n.getActiveTokenId();if(Et(t,Ne.EnableEnsemble)!==!0){HS.delete(t);return}let c=HS.get(t);if(c?.token===o&&c.tokenId===s){if(c.pending){let f=await c.pending;return HS.get(t)?.flight===c.flight&&Et(t,Ne.EnableEnsemble)===!0?f:void 0}if(!e&&c.value&&c.expiresAt!==void 0&&r()<c.expiresAt)return c.value}let l=gJs(t,o),u={token:o,tokenId:s,flight:{},pending:l};HS.set(t,u);let d=await l;return HS.get(t)===u&&(d&&n.getActiveTokenId()===s&&Et(t,Ne.EnableEnsemble)===!0?HS.set(t,{token:o,tokenId:s,flight:u.flight,value:d,expiresAt:r()+dJs}):HS.delete(t)),HS.get(t)?.flight===u.flight&&Et(t,Ne.EnableEnsemble)===!0?d:void 0}catch(o){HS.delete(t),hdt.warn(t,"Failed to read Auto metadata token",{errorType:o instanceof Error?o.name:"unknown"});return}}a(tmr,"getEnsembleAutoMetadata");function xri(t,e,r=Date.now){let n=e.tiers.map(l=>l.id),o=r(),s=t.filter(l=>{if(!qb.Check(pJs,l)||!Number.isFinite(l.discount_percent)||l.discount_percent<=0||l.discount_percent>100)return!1;let u=Date.parse(l.starts_at),d=Date.parse(l.ends_at);return Number.isFinite(u)&&Number.isFinite(d)&&u<=o&&o<d}),c=new Map;for(let l of n){let u=s.filter(d=>d.applies_to.some(f=>f.id===l));u.length===1&&c.set(l,u[0])}return c}a(xri,"selectAutoTierServicePromotions");async function rmr(t,e=!1){return(await tmr(t,e))?.candidate}a(rmr,"getEnsembleAutoCandidate");async function N8(t,e){if(Et(t,Ne.EnableEnsemble)!==!0)return mNe(t),{enabled:!1};let r=Et(t,Ne.EnsembleEnabledOverride);if(r==="true"||r==="false")return r==="false"&&mNe(t),{enabled:r==="true"};try{let n=t.get(sr),o=e?await n.updateExPValuesAndAssignments(e):await n.fetchTokenAndUpdateExPValuesAndAssignments(),s=Et(t,Ne.EnableEnsemble)===!0&&n.ensembleEnabled(o);return s||mNe(t),{enabled:s}}catch{return mNe(t),{enabled:!1}}}a(N8,"getEnsemblePreviewGate");p();p();var Yee={HYDRAFUSION:!0,HYDRAFUSION_ROLLOUT:!0,HYDRAFUSION_PLAN_V2:!0,DYNAMIC_AUTO_TIERS:!0},DG={HYDRAFUSION:!1,HYDRAFUSION_ROLLOUT:!1,HYDRAFUSION_PLAN_V2:!1,DYNAMIC_AUTO_TIERS:!1};function Rl(t){return t==="hydrafusion"||t==="hydrafusion-max"}a(Rl,"isFusionRuntimeModel");function AJs(t){return t.id==="balance"&&t.type==="auto"||(t.id==="hydrafusion"||t.id==="hydrafusion-max")&&t.type==="fusion"}a(AJs,"isKnownEnsembleRuntimeTier");function gNe(t,e,r){let n=e??t.defaultTier,o=t.tiers.find(s=>s.id===n);return!o||o.status.enabled!==!0||o.status.tierPickerEnabled!==!0?{error:"tierUnavailable"}:AJs(o)?o.id==="balance"&&o.type==="auto"?{target:{model:"auto",autoTier:"balance"}}:o.id==="hydrafusion"&&o.type==="fusion"?r("hydrafusion")?{target:{model:"hydrafusion"}}:{error:"runtimeModelUnavailable"}:o.id==="hydrafusion-max"&&o.type==="fusion"?r("hydrafusion-max")?{target:{model:"hydrafusion-max"}}:{error:"runtimeModelUnavailable"}:{error:"unsupportedTier"}:{error:"unsupportedTier"}}a(gNe,"resolveEnsembleRuntimeTarget");function Rri(t,e,r,n=new Map){if(!e||t.some(m=>m.id==="ensemble"))return[...t];let o=t.findIndex(m=>m.id==="auto"&&m.modelFamily==="auto"&&(!("providerName"in m)||m.providerName==null));if(o<0)return[...t];let s=t[o];if(s.modelPolicy?.state==="disabled")return[...t];if("error"in gNe(e,void 0,r)||e.tiers.some(m=>m.status.enabled&&m.status.tierPickerEnabled===!0&&"error"in gNe(e,m.id,r)))return[...t];let l=e.tiers,u={...s.capabilities.supports};delete u.autoTiers;let d=s.billing?{...s.billing}:void 0;d&&delete d.promo;let f={...s,id:"ensemble",modelFamily:"ensemble",modelName:"Copilot Fusion",scopes:["agent-panel"],isChatDefault:!0,capabilities:{...s.capabilities,supports:u},...s.billing?.promo!==void 0?{billing:d&&Object.keys(d).length>0?d:void 0}:{},ensemble:{defaultTier:e.defaultTier,tiers:l.map(({id:m,displayName:g,description:A,type:y,status:E})=>{let _=n.get(m);return{id:m,displayName:g,...A!==void 0?{description:A}:{},type:y,status:{...E},..._?{billing:{promo:{id:_.id,discountPercent:_.discount_percent,startsAt:_.starts_at,endsAt:_.ends_at,showBanner:_.show_banner,message:_.message}}}:{}}})}},h=[...t];return h.splice(o,1,f),h}a(Rri,"withFusionVirtualModel");p();var rw=ae(require("node:path"));var Dri="copilot-language-server:inline-chat",yJs=["file","path","filePath","file_path"],EJs=new Set(["edit","create","str_replace_editor","write"]),_Js=new Set(["git_apply_patch"]),kri=/^\*\*\* (?:Add File|Delete File|Update File|Move to): (.+)$/gm;function vJs(t){let e=rw.dirname(t);return{confinedFsPath:t,confinedName:rw.basename(t),baseDir:e,confinedComparable:nmr(t,e)}}a(vJs,"buildContext");function CJs(t){if(typeof t=="string")try{let e=JSON.parse(t);return e&&typeof e=="object"?e:{}}catch{return{}}return t&&typeof t=="object"?t:{}}a(CJs,"parseToolArgs");function bJs(t){if(typeof t=="string")return t;if(t&&typeof t=="object"){let e=t;if(typeof e.input=="string")return e.input;if(typeof e.patch=="string")return e.patch}}a(bJs,"extractApplyPatchBody");function SJs(t){if(!t.includes("*** Begin Patch"))return;let e=[];kri.lastIndex=0;for(let r of t.matchAll(kri)){let n=r[1].trim();n.length>0&&e.push(n)}return e}a(SJs,"extractApplyPatchPaths");function TJs(t){for(let e of yJs){let r=t[e];if(typeof r=="string"&&r.trim().length>0)return r}}a(TJs,"extractTargetPath");function nmr(t,e){let r=t.startsWith("file:")?Gr(t):t,n=rw.isAbsolute(r)?rw.normalize(r):rw.resolve(e,r);return process.platform==="win32"||process.platform==="darwin"?n.toLowerCase():n}a(nmr,"toComparablePath");function Pri(t,e){return rw.isAbsolute(t)?rw.normalize(t):rw.resolve(e,t)}a(Pri,"resolveTargetPath");function IJs(t,e,r){if(_Js.has(t))return{allowed:!1,reason:`Inline chat may only edit ${r.confinedName}. The ${t} tool cannot be confined to a single file and is not available in inline chat.`};if(t==="apply_patch"){let o=bJs(e);if(o===void 0)return{allowed:!1,reason:`Inline chat denied an apply_patch call with no readable patch body. Only ${r.confinedName} may be edited.`};let s=SJs(o);if(s===void 0)return{allowed:!1,reason:`Inline chat denied an apply_patch call whose body could not be parsed. Only ${r.confinedName} may be edited.`};if(s.length===0)return{allowed:!1,reason:`Inline chat denied an apply_patch call with no file headers. Only ${r.confinedName} may be edited.`};for(let c of s)if(nmr(c,r.baseDir)!==r.confinedComparable)return{allowed:!1,reason:`Inline chat may only edit ${r.confinedFsPath}, not ${Pri(c,r.baseDir)} (apply_patch header: ${c}).`};return{allowed:!0}}if(!EJs.has(t))return{allowed:!0};let n=TJs(CJs(e));return n?nmr(n,r.baseDir)!==r.confinedComparable?{allowed:!1,reason:`Inline chat may only edit ${r.confinedFsPath}, not ${Pri(n,r.baseDir)} (${t} arg: ${n}).`}:{allowed:!0}:{allowed:!1,reason:`Inline chat denied a ${t} call with no resolvable file path. Only ${r.confinedName} may be edited.`}}a(IJs,"evaluateWithContext");function Mri(t){let e=0;return{hook:{source:Dri,handler:a(()=>e>t?Promise.resolve({permissionDecision:"deny",permissionDecisionReason:`Inline chat is limited to ${t} tool-calling turns. No further tool calls are allowed.`}):Promise.resolve(),"handler")},onTurnStart(){e++},reset(){e=0}}}a(Mri,"createInlineTurnLimitHook");function Nri(t){let e=t.startsWith("file:")?Gr(t):t,r=vJs(e);return{source:Dri,handler:a(n=>{let o=IJs(n.toolName,n.toolArgs,r);return o.allowed?Promise.resolve():Promise.resolve({permissionDecision:"deny",permissionDecisionReason:o.reason??"Edit denied: inline chat is confined to the active file."})},"handler")}}a(Nri,"createInlineEditConfinementHook");p();var imr=ae(require("fs"));var oge=new oe("BackgroundAgent.InlineFileContext"),wJs=50*1024,mdt=100,xJs=.4,Ori=25;async function Bri(t,e,r){let n;try{n=si(t).fsPath}catch{return oge.debug(r,`buildInlineFileContext: failed to parse URI ${t}`),{promptFragment:"",isFullContent:!1,isLargeFile:!1}}let o;try{o=await imr.promises.stat(n)}catch{return oge.debug(r,`buildInlineFileContext: failed to stat ${n}`),{promptFragment:"",isFullContent:!1,isLargeFile:!1}}let s=o.size>wJs,c;try{c=await imr.promises.readFile(n,"utf-8")}catch{return oge.debug(r,`buildInlineFileContext: failed to read ${n}`),{promptFragment:"",isFullContent:!1,isLargeFile:s}}let l=e?.selection,u=e?.position,d="",f=!1;if(!s)d=`
|
|
3722
3722
|
|
|
3723
3723
|
Here is the current content of \`${n}\`:
|
|
3724
3724
|
\`\`\`
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"url": "git+https://github.com/github/copilot-language-server-release.git"
|
|
12
12
|
},
|
|
13
13
|
"license": "MIT",
|
|
14
|
-
"version": "1.555.
|
|
14
|
+
"version": "1.555.6",
|
|
15
15
|
"bin": {
|
|
16
16
|
"copilot-language-server": "../dist/language-server.js"
|
|
17
17
|
},
|
|
@@ -40,12 +40,12 @@
|
|
|
40
40
|
"vscode-languageserver-protocol": "^3.17.5"
|
|
41
41
|
},
|
|
42
42
|
"optionalDependencies": {
|
|
43
|
-
"@github/copilot-language-server-win32-x64": "1.555.
|
|
44
|
-
"@github/copilot-language-server-win32-arm64": "1.555.
|
|
45
|
-
"@github/copilot-language-server-linux-x64": "1.555.
|
|
46
|
-
"@github/copilot-language-server-linux-arm64": "1.555.
|
|
47
|
-
"@github/copilot-language-server-darwin-x64": "1.555.
|
|
48
|
-
"@github/copilot-language-server-darwin-arm64": "1.555.
|
|
43
|
+
"@github/copilot-language-server-win32-x64": "1.555.6",
|
|
44
|
+
"@github/copilot-language-server-win32-arm64": "1.555.6",
|
|
45
|
+
"@github/copilot-language-server-linux-x64": "1.555.6",
|
|
46
|
+
"@github/copilot-language-server-linux-arm64": "1.555.6",
|
|
47
|
+
"@github/copilot-language-server-darwin-x64": "1.555.6",
|
|
48
|
+
"@github/copilot-language-server-darwin-arm64": "1.555.6",
|
|
49
49
|
"@github/copilot-win32-x64": "1.0.96",
|
|
50
50
|
"@github/copilot-win32-arm64": "1.0.96",
|
|
51
51
|
"@github/copilot-linux-x64": "1.0.96",
|
|
@@ -60,5 +60,5 @@
|
|
|
60
60
|
"@github/copilot-sdk-darwin-arm64": "1.0.20"
|
|
61
61
|
},
|
|
62
62
|
"buildType": "prod",
|
|
63
|
-
"build": "
|
|
63
|
+
"build": "189"
|
|
64
64
|
}
|