Skip to content

Scope provider profiles to custom storage paths - #2305

Draft
FullstackSensei wants to merge 25 commits into
Zoo-Code-Org:mainfrom
FullstackSensei:main
Draft

FullstackSensei wants to merge 25 commits into
Zoo-Code-Org:mainfrom
FullstackSensei:main

Conversation

@FullstackSensei

Copy link
Copy Markdown

Related GitHub Issue

Closes: #2303

Description

This PR scopes provider profiles to the configured custom storage path. It supports the Reliability First goal by keeping profiles separate across custom storage scopes.

When the setting is empty, the manager uses the existing global SecretStorage key. This preserves current behavior for users who do not set a custom path.

When the setting has a value, the manager normalizes the path and uses its hash to select a separate SecretStorage key. Provider profiles remain in VS Code SecretStorage. The custom path does not store them as files.

On first use of a scope, the manager copies the legacy profile only if no scoped profile exists. It keeps the legacy entry. Existing scoped profiles take precedence. The manager continues to use the existing load and store flows.

The manager reads the setting when it starts. Reload the extension after changing the path.

Test Procedure

Run the provider profile tests:

pnpm --dir src exec vitest run core/config/__tests__/ProviderSettingsManager.spec.ts

Result: 68 tests passed.

Run the TypeScript check:

pnpm --dir src run check-types

Run ESLint on the changed files:

pnpm --dir src exec eslint --prune-suppressions --max-warnings=0 core/config/ProviderSettingsManager.ts core/config/__tests__/ProviderSettingsManager.spec.ts

Run both dead-code checks:

pnpm knip

pnpm knip:production

Both Knip checks passed.

These checks ran with Node v24.22.2. The repository requests Node v22.23.4, so pnpm reported an engine warning.

The full test suite did not pass on main in this environment. Dist asset tests reported missing generated assets. Checkpoint tests hit the GIT_MERGE_AUTOEDIT environment guard.

Pre-Submission Checklist

Visual Snapshots

Not applicable. This PR does not change the UI.

Videos (interaction / animation only)

Not applicable. This PR does not change an interactive UI flow.

Documentation Updates

  • No documentation updates are required.
  • Yes, documentation updates are required.

Additional Notes

AI tools assisted with implementation and test updates.

@coderabbitai

coderabbitai Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one): 1

  • coderabbit-review-active

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

Run configuration

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@github-actions

github-actions Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Review status

Thanks for contributing. This comment tracks the review sequence and the next action.

Current step: Resolve the merge conflicts. The review sequence resumes after the branch is mergeable.

Review-state labels are managed by this workflow; do not edit them manually. community-approved is managed the same way — do not add or remove it manually. It signals a fresh community code approval for the current head as an advisory priority only; maintainer review is still required.

@codecov

codecov Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 98.11321% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/core/task/Task.ts 85.71% 0 Missing and 1 partial ⚠️

📢 Thoughts on this report? Let us know!

@github-actions github-actions Bot added has-conflicts PR has merge conflicts with the base branch awaiting-author PR is waiting for the author to address requested changes labels Nov 7, 2026
@github-actions github-actions Bot added awaiting-author PR is waiting for the author to address requested changes and removed awaiting-author PR is waiting for the author to address requested changes labels Nov 13, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting-author PR is waiting for the author to address requested changes has-conflicts PR has merge conflicts with the base branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support workspace-scoped API provider profiles and settings across VS Code windows

1 participant