AI-Studio/documentation/compatibility-shims/2026-06-self-hosted-secret-id.md
Thorsten Sommer c3bf2563cd
Some checks are pending
Build and Release / Read metadata (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-apple-darwin, osx-arm64, macos-latest, aarch64-apple-darwin, dmg,app,updater, dmg) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-pc-windows-msvc.exe, win-arm64, windows-latest, aarch64-pc-windows-msvc, nsis,updater, nsis) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-unknown-linux-gnu, linux-arm64, ubuntu-22.04-arm, aarch64-unknown-linux-gnu, appimage,updater, appimage) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-apple-darwin, osx-x64, macos-latest, x86_64-apple-darwin, dmg,app,updater, dmg) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-pc-windows-msvc.exe, win-x64, windows-latest, x86_64-pc-windows-msvc, nsis,updater, nsis) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-unknown-linux-gnu, linux-x64, ubuntu-22.04, x86_64-unknown-linux-gnu, appimage,updater, appimage) (push) Blocked by required conditions
Build and Release / Prepare & create release (push) Blocked by required conditions
Build and Release / Determine run mode (push) Waiting to run
Build and Release / Publish release (push) Blocked by required conditions
Fixed self-hosted provider API key handling (#811)
2026-06-20 15:55:09 +02:00

1.5 KiB

Self-Hosted Provider Secret ID

  • Status: Active
  • Introduced: 2026-06-19
  • Remove after: 2026-12-19
  • Code references:
    • app/MindWork AI Studio/Tools/Services/RustService.APIKeys.cs
    • app/MindWork AI Studio/Provider/LLMProvidersExtensions.cs

User Impact

Some self-hosted provider API keys were stored under a localized OS keyring namespace. In German installations this could produce entries using Selbst gehostet, while the fixed canonical namespace is Self-hosted.

Without this shim, affected users may see an invalid or missing API key warning until they manually enter the key again.

Compatibility Behavior

AI Studio uses Self-hosted as the canonical secret namespace. For a limited time, API key reads, writes, and deletes also consider the known German legacy namespace Selbst gehostet.

When a legacy entry is found, AI Studio stores the same encrypted API key under the canonical namespace and deletes the legacy entry. If the canonical entry already exists, AI Studio also attempts to delete the known legacy alias.

This applies to LLM provider, embedding provider, and transcription provider API keys, including enterprise configuration plugin namespaces.

Removal Checklist

  • Remove LEGACY_SELF_HOSTED_SECRET_ID_DE.
  • Remove LegacySelfHostedAPIKeys.
  • Remove legacy lookup, migration, and cleanup calls from API key read, write, and delete paths.
  • Keep LLMProvidersExtensions.ToSecretId() and the canonical Self-hosted namespace.
  • Update this document's status to Removed.
  • Add a changelog entry only if removal is user-visible.