Add remote provider model discovery fallbacks#1059
Draft
mimeding wants to merge 9 commits into
Draft
Conversation
added 9 commits
May 10, 2026 00:04
Adds scripts/codex local CI and worktree helpers for Phase A0 orchestration. Applies SwiftLint cleanup needed for strict lint on origin/main 30c6522, with scoped disables for legacy policy rules. Fixes SandboxInstallLockTests to assert same-agent serialization without relying on async scheduling order. Local verification: scripts/codex/local-ci.sh PASS (attempt 3, 2026-05-07T15:20:18Z).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Draft stacked on #1048. This branch includes #1048 as its local base so the provider work can be built and tested today; do not mark ready or merge until #1048 lands, then rebase/retarget this branch onto
mainso the PR diff collapses to the provider changes only.Business rationale
MiniMax and Lemonade are high-value remote provider paths for users who want cheaper hosted inference or local OpenAI-compatible servers. MiniMax does not expose
/models, so requiring discovery blocks users even when they know the exact model ID. Lemonade returns useful OpenAI-compatible model lists, but its payload includes provider-specific metadata such as fractionalsize, which should not prevent Osaurus from connecting.Coding rationale
/modelsdiscovery as the preferred path.RemoteProviderType.sizemetadata instead of failing the whole response.Validation
git diff --check 71fd60df657294c84b8ef9cb800f3f8cd5a2c2dd..HEADswiftlint lint --strict --config .swiftlint.yml --force-exclude Packages/OsaurusCore/Managers/RemoteProviderManager.swift Packages/OsaurusCore/Models/API/OpenAIAPI.swift Packages/OsaurusCore/Models/Configuration/RemoteProviderConfiguration.swift Packages/OsaurusCore/Views/Settings/RemoteProviderEditSheet.swift Packages/OsaurusCore/Tests/Provider/RemoteChatRequestEncodingTests.swift Packages/OsaurusCore/Tests/Provider/RemoteProviderManagerRefreshTests.swiftswift test --package-path Packages/OsaurusCore --filter RemoteChatRequestEncodingTestsswift test --package-path Packages/OsaurusCore --filter RemoteProviderManagerRefreshTestsFixes #828.
Fixes #615.