Repository navigation
fix(opencode): distinguish configured model providers - #15327
fyzanshaik wants to merge 4 commits into
Conversation
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (5)
🚧 Files skipped from review as they are similar to previous changes (1)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 WalkthroughWalkthroughThe change adds shared resolution for upstream provider IDs and labels. OpenCode model snapshots can include configured provider names. Web and mobile model controls display resolved provider labels, and web picker search includes OpenCode provider IDs. ChangesOpenCode model provider labels
Priority: ➖ Normal Estimated code review effort: 3 (Moderate) | ~25 minutes Change: Bug fix · Severity of issue fixed: Low Suggested reviewers: Merge Risk: ⚪ Minimal · up to OpenCode models gain clearer provider labels and provider-ID search, while lookup failures leave models available without the added label. No material merge risk is established; proceed with normal CI validation. Security Architecture ReviewSecurity architecture risk: 🔵 Low · up to The inspected changes preserve selection identity and do not add privileges. No concrete security issue was identified, but incomplete coverage leaves limited residual uncertainty. Retained concerns Security review detailsSecurity Blast Radius
Trust Boundaries and Controls
Resilience and Maintainability Implications
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — This is a focused OpenCode model-identity correction: it adds provider labels and searchability while preserving model IDs, routing, stored selections, and non-OpenCode behavior. The additional provider lookup is bounded by timeout and failure fallback, with extensive focused test coverage. Notes:
You can add or adjust custom eligibility rules. Learn more. |
|
Note Grok responding on behalf of Julius. Thanks for working on this! #17424 just landed on main (7b09ac7) and fixes #14962 the same way: it reads OpenCode 2's provider list alongside the model list and sets each model's |
Problem
OpenCode can serve the same model through several configured providers, but T3 Code's OpenCode 2 catalog omitted provider names. Official DeepSeek and OpenCode Go appeared as indistinguishable rows, and selected model labels did not retain the upstream identity.
Change
Read OpenCode 2 provider names alongside the model catalog and preserve custom names. If names are unavailable, keep the catalog usable and derive a visible label from the provider-qualified model ID. Show that identity in web/desktop and mobile model rows and selected values, including scheduled-task Settings. Search both the displayed provider label and its raw ID.
Full model IDs, selection routing, and favorite keys remain unchanged. The known-name map only formats labels; it does not filter configured providers. Unrelated runtimes keep their existing selected-label presentation.
Scope and approval
Fixes #14962. The failure and provider-name lookup direction were established in the maintainer triage.
This overlaps the server catalog fix in #14971. This PR also covers selected-label visibility, provider-name search when metadata is missing, and mobile scheduled-task selection. These changes all address the same loss of upstream identity; no new provider settings or workflows are introduced.
Verification
git diff --checkpassed. No repo-wide checks were required.litellmfound the custom catalog, andzenfound OpenCode Zen models.Before / After
Before: official DeepSeek and OpenCode Go appeared as indistinguishable rows.
After: each row carries its configured provider identity, and the closed picker/search retain it.
Implementation: DeepSeek Flash (official
deepseek/deepseek-flash), OpenCode Build harness. Coordination and browser verification: GPT-6.1-Sol, Codex harness. Review: GPT-6-Astra, Codex harness.