if (!response.ok) {
if (response.status === 401 || response.status === 403) {
}
const text = await response.text().catch(() => '');
throw buildCopilotApiHttpError(response.status, response.statusText, text);
Frontier kind: Joint frontier
unlabeled · c_66e9811d8433
2 tests · 20230 LOC · 84 files · introduces 2 tests · 2 LOC · 1 file
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.
Graph controls are ready.
Interactive rendering requires JavaScript and WebGL. Use the native relationship evidence on this page while the interactive map is unavailable.
Every exact file and test below is linked only from the concept that introduces it.
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService CopilotApiError contract 401 still invalidates the cached token (regression)|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Endpoint Discovery invalidates cached endpoint discovery on 401 from messages so the next call re-discovers|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService CopilotApiError contract error message never embeds auth tokens|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService CopilotApiError contract non-2xx with plain-text body: synthesizes api_error envelope using body|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Endpoint Discovery error from CAPI does not include the github token|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Non-Streaming Responses throws on 500 server error|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Cancellation does not forward AbortSignal to the shared token mint fetch|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Cancellation forwards AbortSignal to fetch for messages|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Endpoint Discovery discovers independently for concurrent requests with different github tokens|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Endpoint Discovery falls back to default API base when endpoints.api is missing|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Endpoint Discovery re-discovers endpoints when the github token changes|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Endpoint Discovery runs endpoint discovery on first request|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Endpoint Discovery sends the github token as a Bearer Authorization header to the discovery endpoint|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Endpoint Discovery uses endpoints.api from the /copilot_internal/user response as the CAPI base|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Non-Streaming Responses concatenates multiple text blocks|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Non-Streaming Responses returns empty string when no text blocks are present|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Non-Streaming Responses returns text content from a single text block|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Non-Streaming Responses returns the stop reason|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Non-Streaming Responses skips non-text content blocks (tool_use, thinking)|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Non-Streaming Responses stop_reason is null when missing from server response|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Request Format caller-supplied headers cannot override security-sensitive standard headers|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Request Format defaults to non-streaming when stream is omitted|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Request Format merges caller-provided headers into the request|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Request Format non-streaming sends stream=false in the body|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Request Format omits system field entirely when not provided|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Request Format passes messages through as-is|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Request Format sends correct CAPI headers|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Request Format sends max_tokens in the body|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/shared/copilotApiService.test|title=CopilotApiService Request Format sends model in the body|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/charCode.test|title=CharCode has good values|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/path.test|title=Paths (Node Implementation) path|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/uri.test|title=URI File paths containing apostrophes break URI parsing and cannot be opened #276075|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/uri.test|title=URI URI#file, win-speciale|occurrence=1Every collected test enters the hierarchy at exactly one concept.
2 tests introduced at this concept.
copilotApiService.test|title=CopilotApiService CopilotApiError contract 401 still invalidates the cached token (regression)|occurrence=1copilotApiService.test|title=CopilotApiService Endpoint Discovery invalidates cached endpoint discovery on 401 from messages so the next call re-discovers|occurrence=1Every collected source range enters the hierarchy at exactly one concept.
1 file ranked by introduced lines: 2 introduced LOC across 1 ranges. Expand a file to inspect source; the > gutter marks introduced lines.
if (!response.ok) {
if (response.status === 401 || response.status === 403) {
}
const text = await response.text().catch(() => '');
throw buildCopilotApiHttpError(response.status, response.statusText, text);