AI-Studio/documentation/compatibility-shims/README.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.4 KiB

Compatibility Shims

Compatibility shims are temporary fallback paths that keep older installations, settings, secrets, plugin data, or external integrations working while users move to a newer release.

Use this folder for short-lived compatibility code such as legacy aliases, read-repair logic, temporary import fallbacks, or cleanup paths. Do not use it for permanent settings schema migrations; those belong in app/MindWork AI Studio/Settings/SettingsMigrations.cs.

Every compatibility shim must have:

  • A Markdown file in this folder.
  • A clear status.
  • An introduced date.
  • A remove-after date.
  • Code references.
  • A short explanation of user impact.
  • The compatibility behavior.
  • A removal checklist.
  • A short code comment near the shim that references the Markdown file and remove-after date.

Template

# Short Title

- Status: Active
- Introduced: YYYY-MM-DD
- Remove after: YYYY-MM-DD
- Code references:
  - path/to/file.cs

## User Impact

Describe who needs this compatibility path and what breaks without it.

## Compatibility Behavior

Describe the temporary fallback, alias, read-repair, or cleanup behavior.

## Removal Checklist

- Remove the temporary constants, fallback branches, aliases, or cleanup paths.
- Remove or update tests and static checks that mention the shim.
- Update this document's status to `Removed`.
- Add a changelog entry if removing the shim is user-visible.