Unported Provider Logic Checklist
This tracks legacy provider behavior from packages/opencode/src/provider/provider.ts that still needs to be ported into the v2 provider plugins under packages/opencode/src/v2/plugin/provider/. Keep entries checked only when v2 has equivalent behavior or when the item is intentionally skipped.
Provider Setup
- Cloudflare AI Gateway custom SDK construction with
createAiGateway/createUnified. - Google Vertex authenticated
fetchinjection. - Amazon Bedrock AWS credential chain setup.
- Amazon Bedrock bearer token setup.
- SAP AI Core service key setup.
Provider Options
- Azure resource name resolution.
- Azure missing-resource error.
- Azure Cognitive Services baseURL resolution.
- Cloudflare Workers AI account ID validation.
- Cloudflare Workers AI account ID vars.
- Cloudflare AI Gateway account ID validation.
- Cloudflare AI Gateway gateway ID validation.
- Cloudflare AI Gateway token validation.
- Amazon Bedrock region precedence.
- Amazon Bedrock profile precedence.
- Amazon Bedrock endpoint precedence.
- Google Vertex project resolution.
- Google Vertex location resolution.
- GitLab instance URL resolution.
- GitLab token resolution.
- GitLab AI gateway headers.
- GitLab feature flags.
- Opencode unauthenticated paid-model filtering.
- Opencode public API key fallback.
Request Behavior
- Request timeout handling.
- Chunk timeout handling.
- SSE timeout wrapping.
- OpenAI response item ID stripping.
- Azure response item ID stripping.
- OpenAI-compatible
includeUsagedefaulting.
Dynamic Models
- GitLab workflow model discovery.
Model Filtering
- Experimental alpha model filtering.
- Deprecated model filtering.
- Config whitelist filtering.
- Config blacklist filtering.
-
gpt-5-chat-latestfiltering. - OpenRouter
openai/gpt-5-chatfiltering.
Default Models
- Configured default model selection. Replaced by explicit
Catalog.model.setDefault. - [SKIP] Recent-history default model selection — not porting to server-side v2 catalog.
- Default model fallback sorting. Uses newest available model, not legacy hard-coded priority.
Small Models
- [SKIP] Configured
small_modelselection — not porting config-driven selection to server-side v2 catalog. - Provider-specific small model priority. Replaced by cheapest output cost selection.
- Opencode small model priority. Replaced by cheapest output cost selection.
- GitHub Copilot small model priority. Replaced by cheapest output cost selection.
- Amazon Bedrock region-aware small model selection. Replaced by cheapest output cost selection.
URL And Env Vars
- [SKIP] BaseURL
${VAR}interpolation — not porting generic URL templating; provider plugins should construct concrete URLs. - Azure
AZURE_RESOURCE_NAMEvars. Handled by Azure provider plugins. - Google Vertex vars. Handled by Google Vertex provider plugins.
- Cloudflare Workers AI vars. Handled by Cloudflare Workers AI provider plugin.
Auth
- Auth-derived provider API keys.
- OpenAI OAuth/API auth distinction.
- GitLab OAuth token selection.
- GitLab API token selection.
- Azure auth metadata resource name.
- Cloudflare auth metadata account ID.
- Cloudflare auth metadata gateway ID.
Config And Plugin Parity
- Legacy plugin auth loader behavior.
- Config provider merge behavior.
- Config model merge behavior.
- Variant generation from model metadata.
- Config variant merge behavior.
- Config variant disable behavior.