Skip to content

Conversation

@shanevcantwell
Copy link
Contributor

@shanevcantwell shanevcantwell commented Jan 21, 2026

Summary

  • Fixes workspace .continue/ files failing to load when Windows VS Code connects to WSL
  • Root cause: loadYaml.ts discarded pre-read content and passed only URIs to RegistryClient, which tried fs.readFileSync() (fails for vscode-remote:// URIs)
  • Solution: Added ContentIdentifier type to pass pre-read content directly through the loading pipeline

Fixes #6242, Fixes #7810

Test plan

  • Unit tests pass (297 tests in config-yaml)
  • Built Linux vsix, installed in WSL via code --install-extension
  • Created .continue/docs/test.yaml in WSL workspace
  • Verified config loads without ENOENT errors

🤖 Generated with Claude Code


Continue Tasks

Status Task Actions
▶️ Queued Update docs on PR View

Powered by Continue


Summary by cubic

Fixes WSL config loading by passing pre-read YAML content through the pipeline to avoid fs reads on vscode-remote:// URIs (Fixes #6242, #7810). Improves error messages by using sourceUri when available.

  • Bug Fixes
    • Added ContentIdentifier (uriType: "content") and passed content from loadYaml to RegistryClient.
    • RegistryClient.getContent returns pre-read content; updated helpers to handle content and use sourceUri in messages.
    • Expanded tests for content identifiers, WSL paths, and error reporting.

Written for commit a9a9ebb. Summary will update on new commits.

@shanevcantwell shanevcantwell requested a review from a team as a code owner January 21, 2026 08:20
@shanevcantwell shanevcantwell requested review from Patrick-Erichsen and removed request for a team January 21, 2026 08:20
@dosubot dosubot bot added the size:XL This PR changes 500-999 lines, ignoring generated files. label Jan 21, 2026
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 18 files

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="core/llm/index.ts">

<violation number="1" location="core/llm/index.ts:1124">
P2: Tool prompt overrides are skipped when tools are only defined in the model’s default completionOptions, so per-model overrides never apply to default tools.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.


// Apply per-model tool prompt overrides if configured
let effectiveTools = options.tools;
if (this.toolPromptOverrides?.length && options.tools?.length) {
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Tool prompt overrides are skipped when tools are only defined in the model’s default completionOptions, so per-model overrides never apply to default tools.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At core/llm/index.ts, line 1124:

<comment>Tool prompt overrides are skipped when tools are only defined in the model’s default completionOptions, so per-model overrides never apply to default tools.</comment>

<file context>
@@ -1111,8 +1118,28 @@ export abstract class BaseLLM implements ILLM {
+
+    // Apply per-model tool prompt overrides if configured
+    let effectiveTools = options.tools;
+    if (this.toolPromptOverrides?.length && options.tools?.length) {
+      const { tools: overriddenTools, errors } = applyToolOverrides(
+        options.tools,
</file context>
Fix with Cubic

Fixes continuedev#6242, continuedev#7810

When Windows VS Code connects to WSL, workspace files are accessed via
vscode-remote:// URIs. Previously, getAllDotContinueDefinitionFiles()
correctly read content via ide.readFile(), but loadYaml.ts discarded
the content and passed only the URI path to RegistryClient, which then
tried to re-read using fs.readFileSync() - failing for remote URIs.

Changes:
- Add ContentIdentifier type to PackageIdentifier with uriType: "content"
- RegistryClient.getContent() returns pre-read content directly
- loadYaml.ts passes content instead of file paths for local blocks
- Update all code paths to handle the new content case

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@shanevcantwell shanevcantwell force-pushed the fix/wsl-path-construction branch from 36b953b to 75d9d05 Compare January 21, 2026 19:04
@dosubot dosubot bot added size:L This PR changes 100-499 lines, ignoring generated files. and removed size:XL This PR changes 500-999 lines, ignoring generated files. labels Jan 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L This PR changes 100-499 lines, ignoring generated files.

Projects

Status: Todo

Development

Successfully merging this pull request may close these issues.

WSL Docs cannot be added with Ubuntu on WSL (Windows 11)

1 participant