extensions.ts ×4

Frontier kind: Code frontier

unlabeled · c_ef85100a68c2

14 tests · 6346 LOC · 32 files · introduces 0 tests · 4 LOC · 1 file

Introduces — evidence that enters the hierarchy at this concept

Code
4 ranges4 lines · 1 files
Tests
0 tests

Contains — complete concept membership

All code (extent)
847 ranges6346 lines · 32 files · Browse complete extent
All tests (intent)
14 testsBrowse complete intent

Neighbourhood graph

The orange circle is the focus. Violet and green circles are every ancestor and descendant, broader and narrower, at any distance; blue squares and pink diamonds are the introduced files and exact introduced tests of every visible concept, not only the focus's. Arrows point from broader to narrower concepts and bridge only concepts omitted from this view. Undirected links show source or test introduction. Concept and file size follows LOC; exact test nodes use test-count units.

Introduced files, introduced tests, and structurally relevant concept specialization

In the embedded map, ordinary wheel input scrolls the page; use the visible controls to zoom and drag to pan. Open the full-screen map for canvas navigation: wheel pans, Ctrl/Command plus wheel zooms, and arrow keys pan when this region is focused. On touch screens, open the full-screen map to pan or pinch. If JavaScript or WebGL is unavailable, use the native relationship evidence on this page.

Introduced files, introduced tests, and structurally relevant concept specializationextensions.ts ×1 · 4 introduced LOCextensions.ts ×1runSubagentTool.test|title=RunSubagentTool model fallback behavior skips Copilot fallback but uses a non-Copilot fallback when main model is BYOK|occurrence=1 · 0 introduced LOCrunSubagentTool.test|tit…runSubagentTool.test|title=RunSubagentTool model fallback behavior skips Copilot fallback models when main model is BYOK and inherits the main model|occurrence=1 · 0 introduced LOCrunSubagentTool.test|tit…promptsServiceUtils.ts ×2 · 5 introduced LOCpromptsServiceUtils.ts ×…languageModels.test|title=LanguageModels - provider usage telemetry sendChatRequest buckets built-in vendor ids from third-party extensions as 3p-extension|occurrence=1 · 0 introduced LOClanguageModels.test|titl…languageModels.test|title=LanguageModels - provider usage telemetry sendChatRequest reports an in-built BYOK provider by name|occurrence=1 · 0 introduced LOClanguageModels.test|titl…languageModels.ts ×1 · 3 introduced LOClanguageModels.ts ×1languageModels.ts ×1 · 2 introduced LOClanguageModels.ts ×1languageModels.ts ×2 · 5 introduced LOClanguageModels.ts ×2languageModels.test|title=LanguageModels - Provider Deprecation Notice does not prompt for a provider without a deprecation link|occurrence=1 · 0 introduced LOClanguageModels.test|titl…languageModels.test|title=LanguageModels - provider usage telemetry getByokProviderTelemetryName classifies vendors|occurrence=1 · 0 introduced LOClanguageModels.test|titl…languageModels.ts ×1 · 2 introduced LOClanguageModels.ts ×1promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile extension ID comparison is case-insensitive|occurrence=1 · 0 introduced LOCpromptsServiceUtils.test…|occurrence=1, |occurrence=1, +1 · 0 introduced LOC|occurrence=1, |occurren…promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile returns false when extension ID does not match|occurrence=1 · 0 introduced LOCpromptsServiceUtils.test…promptsServiceUtils.ts ×1 · 3 introduced LOCpromptsServiceUtils.ts ×…extensions.ts ×1 · 6 introduced LOCextensions.ts ×1extensions.ts ×1 · 3 introduced LOCextensions.ts ×1extensions.ts ×24 · 483 introduced LOCextensions.ts ×24resources.ts ×23 · 253 introduced LOCresources.ts ×23remoteHosts.ts ×7 · 52 introduced LOCremoteHosts.ts ×7network.ts ×20 · 292 introduced LOCnetwork.ts ×20extpath.ts ×17 · 91 introduced LOCextpath.ts ×17strings.ts ×101 · 542 introduced LOCstrings.ts ×101cancellation.ts ×18 · 90 introduced LOCcancellation.ts ×18event.ts ×93 · 864 introduced LOCevent.ts ×93uri.ts ×3 · 3 introduced LOCuri.ts ×3uri.ts ×2 · 2 introduced LOCuri.ts ×2uri.ts ×3 · 3 introduced LOCuri.ts ×3uri.ts ×2 · 10 introduced LOCuri.ts ×2utils.ts ×3 · 9 introduced LOCutils.ts ×3uri.ts ×1 · 2 introduced LOCuri.ts ×1uri.ts ×9 · 37 introduced LOCuri.ts ×9linkedList.ts ×13 · 44 introduced LOClinkedList.ts ×13instantiation.ts ×5 · 111 introduced LOCinstantiation.ts ×5lifecycle.ts ×2 · 4 introduced LOClifecycle.ts ×2lifecycle.ts ×4 · 8 introduced LOClifecycle.ts ×4lifecycle.ts ×6 · 16 introduced LOClifecycle.ts ×6lazy.ts ×1 · 2 introduced LOClazy.ts ×1lazy.ts ×3 · 37 introduced LOClazy.ts ×3lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1uint.ts ×2 · 43 introduced LOCuint.ts ×2lifecycle.ts ×1 · 3 introduced LOClifecycle.ts ×1map.ts ×97 · 3334 introduced LOCmap.ts ×97src/vs/base/common/arrays.ts · 949 LOCcommon/arrays.tssrc/vs/base/common/arraysFind.ts · 226 LOCcommon/arraysFind.tssrc/vs/base/common/assert.ts · 91 LOCcommon/assert.tssrc/vs/base/common/cache.ts · 153 LOCcommon/cache.tssrc/vs/base/common/cancellation.ts · 206 LOCcommon/cancellation.tssrc/vs/base/common/charCode.ts · 450 LOCcommon/charCode.tssrc/vs/base/common/collections.ts · 176 LOCcommon/collections.tssrc/vs/base/common/errors.ts · 357 LOCcommon/errors.tssrc/vs/base/common/event.ts · 1964 LOCcommon/event.tssrc/vs/base/common/extpath.ts · 433 LOCcommon/extpath.tssrc/vs/base/common/functional.ts · 32 LOCcommon/functional.tssrc/vs/base/common/iterator.ts · 194 LOCcommon/iterator.tssrc/vs/base/common/lazy.ts · 57 LOCcommon/lazy.tssrc/vs/base/common/lifecycle.ts · 974 LOCcommon/lifecycle.tssrc/vs/base/common/linkedList.ts · 151 LOCcommon/linkedList.tssrc/vs/base/common/map.ts · 1016 LOCcommon/map.tssrc/vs/base/common/marshallingIds.ts · 33 LOCcommon/marshallingIds.tssrc/vs/base/common/network.ts · 440 LOCcommon/network.tssrc/vs/base/common/path.ts · 1589 LOCcommon/path.tssrc/vs/base/common/platform.ts · 281 LOCcommon/platform.tssrc/vs/base/common/process.ts · 76 LOCcommon/process.tssrc/vs/base/common/resources.ts · 444 LOCcommon/resources.tssrc/vs/base/common/stopwatch.ts · 41 LOCcommon/stopwatch.tssrc/vs/base/common/strings.ts · 1413 LOCcommon/strings.tssrc/vs/base/common/types.ts · 410 LOCcommon/types.tssrc/vs/base/common/uint.ts · 59 LOCcommon/uint.tssrc/vs/base/common/uri.ts · 754 LOCcommon/uri.tssrc/vs/base/test/common/utils.ts · 107 LOCcommon/utils.tssrc/vs/nls.ts · 244 LOCvs/nls.tssrc/vs/platform/extensions/common/extensions.ts · 570 LOCcommon/extensions.tssrc/vs/platform/instantiation/common/instantiation.ts · 130 LOCcommon/instantiation.tssrc/vs/platform/notification/test/common/testNotificationService.ts · 54 LOCcommon/testNotificationS…src/vs/platform/remote/common/remoteHosts.ts · 109 LOCcommon/remoteHosts.tssrc/vs/workbench/contrib/chat/common/languageModels.ts · 2510 LOCcommon/languageModels.tssrc/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.ts · 773 LOCservice/promptsService.t…src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptsServiceUtils.ts · 45 LOCutils/promptsServiceUtil…src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.ts · 587 LOCbuiltinTools/runSubagent…languageModels.test|title=LanguageModels - Provider Deprecation Notice does not prompt for a provider without a deprecation link|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/languageModels.test|title=LanguageModels - Provider Deprecation Notice does not prompt for a provider without a deprecation link|occurrence=1languageModels.test|titl…languageModels.test|title=LanguageModels - Provider Deprecation Notice prompts to install the replacement when a deprecated provider services a request|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/languageModels.test|title=LanguageModels - Provider Deprecation Notice prompts to install the replacement when a deprecated provider services a request|occurrence=1languageModels.test|titl…languageModels.test|title=LanguageModels - Provider Deprecation Notice shows the deprecation notice at most once per session|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/languageModels.test|title=LanguageModels - Provider Deprecation Notice shows the deprecation notice at most once per session|occurrence=1languageModels.test|titl…languageModels.test|title=LanguageModels - provider usage telemetry getByokProviderTelemetryName classifies vendors|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/languageModels.test|title=LanguageModels - provider usage telemetry getByokProviderTelemetryName classifies vendors|occurrence=1languageModels.test|titl…languageModels.test|title=LanguageModels - provider usage telemetry sendChatRequest buckets built-in vendor ids from third-party extensions as 3p-extension|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/languageModels.test|title=LanguageModels - provider usage telemetry sendChatRequest buckets built-in vendor ids from third-party extensions as 3p-extension|occurrence=1languageModels.test|titl…languageModels.test|title=LanguageModels - provider usage telemetry sendChatRequest reports an in-built BYOK provider by name|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/languageModels.test|title=LanguageModels - provider usage telemetry sendChatRequest reports an in-built BYOK provider by name|occurrence=1languageModels.test|titl…promptsService.test|title=PromptsService IAgentSource.isEquals returns true for equivalent extension sources|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/promptSyntax/service/promptsService.test|title=PromptsService IAgentSource.isEquals returns true for equivalent extension sources|occurrence=1promptsService.test|titl…promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile extension ID comparison is case-insensitive|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/promptSyntax/utils/promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile extension ID comparison is case-insensitive|occurrence=1promptsServiceUtils.test…promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile returns false for similar but incorrect paths|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/promptSyntax/utils/promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile returns false for similar but incorrect paths|occurrence=1promptsServiceUtils.test…promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile returns false when extension ID does not match|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/promptSyntax/utils/promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile returns false when extension ID does not match|occurrence=1promptsServiceUtils.test…|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/promptSyntax/utils/promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile returns false when path does not contain /github/|occurrence=1|occurrence=1|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/promptSyntax/utils/promptsServiceUtils.test|title=promptsServiceUtils isOrganizationPromptFile returns true when extension matches and path contains /github/|occurrence=1|occurrence=1runSubagentTool.test|title=RunSubagentTool model fallback behavior skips Copilot fallback but uses a non-Copilot fallback when main model is BYOK|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/tools/builtinTools/runSubagentTool.test|title=RunSubagentTool model fallback behavior skips Copilot fallback but uses a non-Copilot fallback when main model is BYOK|occurrence=1runSubagentTool.test|tit…runSubagentTool.test|title=RunSubagentTool model fallback behavior skips Copilot fallback models when main model is BYOK and inherits the main model|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/chat/test/common/tools/builtinTools/runSubagentTool.test|title=RunSubagentTool model fallback behavior skips Copilot fallback models when main model is BYOK and inherits the main model|occurrence=1runSubagentTool.test|tit…Focused concept · extensions.ts ×4 · 4 introduced LOCextensions.ts ×4

Graph controls are ready.

Interactive rendering requires JavaScript and WebGL. Use the native relationship evidence on this page while the interactive map is unavailable.

Native relationship evidence

Every exact file and test below is linked only from the concept that introduces it.

Introduced tests

Every collected test enters the hierarchy at exactly one concept.

No tests are introduced at this concept. Its intent tests are introduced by other concepts.

Introduced code

Every collected source range enters the hierarchy at exactly one concept.

1 file ranked by introduced lines: 4 introduced LOC across 4 ranges. Expand a file to inspect source; the > gutter marks introduced lines.

src/vs/platform/extensions/common/extensions.ts 4 introduced LOC · 4 ranges

Open complete file

409
410 public static equals(a: ExtensionIdentifier | string | null | undefined, b: ExtensionIdentifier | string | null | undefined) {
411 > if (typeof a === 'undefined' || a === null) { extensions.ts
412 return (typeof b === 'undefined' || b === null);
413 }
414 > if (typeof b === 'undefined' || b === null) { extensions.ts
415 return false;
416 }
417 > if (typeof a === 'string' || typeof b === 'string') { extensions.ts
418 // At least one of the arguments is an extension id in string form,
419 // so we have to use the string comparison which ignores case.
425 // Now we know both arguments are ExtensionIdentifier
426 return (a._lower === b._lower);
427 > } extensions.ts
428
429 /**