🐛 OpenCode UI shows invalid Google Vertex model version for Claude Opus 4.6 (@20260205 returns 404) #8631

Open
opened 2026-02-16 18:10:26 -05:00 by yindo · 1 comment
Owner

Originally created by @marcingen9 on GitHub (Feb 5, 2026).

Originally assigned to: @fwang on GitHub.

Description

Description

Summary

OpenCode UI displays an invalid model version for Claude Opus 4.6 on Google Vertex AI. The UI shows claude-opus-4-6@20260205, which does not exist and returns a 404 error when called via the Vertex AI API.

Environment

  • OpenCode Version: v1.1.52
  • Provider: Google Vertex AI (google-vertex-anthropic)
  • Model: Claude Opus 4.6
  • Platform: macOS Sequoia

Steps to Reproduce

  1. Open OpenCode UI
  2. Navigate to model selector for any mode (e.g., Design-Reviewer)
  3. Select Claude Opus 4.6 on Google Vertex
  4. Observe the model identifier shown: claude-opus-4-6@20260205

Expected Behavior

According to Google Vertex AI documentation and Anthropic's model card, the correct model version should be:

claude-opus-4-6@default

Or without version suffix (which defaults to @default):

claude-opus-4-6

Actual Behavior

OpenCode UI shows:

claude-opus-4-6@20260205

This model version does not exist and causes API failures.

API Verification

I verified this by making direct API calls to Google Vertex AI:

Working (Correct):

curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -d '{
    "anthropic_version": "vertex-2023-10-16",
    "messages": [{"role": "user", "content": "Hi"}],
    "max_tokens": 10
  }' \
  "https://aiplatform.googleapis.com/v1/projects/XXXX/locations/global/publishers/anthropic/models/claude-opus-4-6@default:streamRawPredict"

Response:

{
  "model": "claude-opus-4-6",
  "type": "message",
  "role": "assistant",
  "content": [{"type": "text", "text": "Hi there! 👋 How are you"}],
  "usage": {"input_tokens": 8, "output_tokens": 10}
}

Failing (Invalid - shown in OpenCode UI):

curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -d '{
    "anthropic_version": "vertex-2023-10-16",
    "messages": [{"role": "user", "content": "Hi"}],
    "max_tokens": 10
  }' \
  "https://aiplatform.googleapis.com/v1/projects/XXXX/locations/global/publishers/anthropic/models/claude-opus-4-6@20260205:streamRawPredict"

Response:

{
  "error": {
    "code": 404,
    "message": "Requested entity was not found.",
    "status": "NOT_FOUND"
  }
}

Test Results Summary

Model Version API Status Notes
claude-opus-4-6@default 200 OK Correct version per documentation
claude-opus-4-6 200 OK Defaults to @default
claude-opus-4-6@20260205 404 NOT FOUND Invalid - shown in OpenCode UI

Impact

Severity: High

  • Users selecting this model in OpenCode UI will experience API failures
  • Error messages may be confusing as the model appears to be available in the UI
  • This affects production usage of Claude Opus 4.6 on Google Vertex

Root Cause Hypothesis

The issue appears to be in OpenCode's model registry or dynamic model version generation:

  1. Hypothesis 1: OpenCode is dynamically generating dated build versions based on current date (@20260205 = February 5, 2026)
  2. Hypothesis 2: OpenCode has a cached/hardcoded list of model versions that's outdated
  3. Hypothesis 3: OpenCode is fetching from a stale model registry that doesn't match actual Google Vertex availability

Plugins

No response

OpenCode version

v1.1.52

Steps to reproduce

  1. Select opus 4.6
  2. send any message

Screenshot and/or share link

No response

Operating System

macos

Terminal

warp

Originally created by @marcingen9 on GitHub (Feb 5, 2026). Originally assigned to: @fwang on GitHub. ### Description ## Description ### Summary OpenCode UI displays an invalid model version for Claude Opus 4.6 on Google Vertex AI. The UI shows `claude-opus-4-6@20260205`, which does not exist and returns a 404 error when called via the Vertex AI API. ### Environment - **OpenCode Version**: v1.1.52 - **Provider**: Google Vertex AI (`google-vertex-anthropic`) - **Model**: Claude Opus 4.6 - **Platform**: macOS Sequoia ### Steps to Reproduce 1. Open OpenCode UI 2. Navigate to model selector for any mode (e.g., Design-Reviewer) 3. Select Claude Opus 4.6 on Google Vertex 4. Observe the model identifier shown: `claude-opus-4-6@20260205` ### Expected Behavior According to [Google Vertex AI documentation](https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-claude) and [Anthropic's model card](https://platform.claude.com/docs/en/build-with-claude/claude-on-vertex-ai), the correct model version should be: ``` claude-opus-4-6@default ``` Or without version suffix (which defaults to `@default`): ``` claude-opus-4-6 ``` ### Actual Behavior OpenCode UI shows: ``` claude-opus-4-6@20260205 ``` This model version **does not exist** and causes API failures. ### API Verification I verified this by making direct API calls to Google Vertex AI: #### ✅ Working (Correct): ```bash curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "anthropic_version": "vertex-2023-10-16", "messages": [{"role": "user", "content": "Hi"}], "max_tokens": 10 }' \ "https://aiplatform.googleapis.com/v1/projects/XXXX/locations/global/publishers/anthropic/models/claude-opus-4-6@default:streamRawPredict" ``` **Response:** ```json { "model": "claude-opus-4-6", "type": "message", "role": "assistant", "content": [{"type": "text", "text": "Hi there! 👋 How are you"}], "usage": {"input_tokens": 8, "output_tokens": 10} } ``` #### ❌ Failing (Invalid - shown in OpenCode UI): ```bash curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "anthropic_version": "vertex-2023-10-16", "messages": [{"role": "user", "content": "Hi"}], "max_tokens": 10 }' \ "https://aiplatform.googleapis.com/v1/projects/XXXX/locations/global/publishers/anthropic/models/claude-opus-4-6@20260205:streamRawPredict" ``` **Response:** ```json { "error": { "code": 404, "message": "Requested entity was not found.", "status": "NOT_FOUND" } } ``` ### Test Results Summary | Model Version | API Status | Notes | |---------------|------------|-------| | `claude-opus-4-6@default` | ✅ **200 OK** | Correct version per documentation | | `claude-opus-4-6` | ✅ **200 OK** | Defaults to `@default` | | `claude-opus-4-6@20260205` | ❌ **404 NOT FOUND** | Invalid - shown in OpenCode UI | ### Impact **Severity:** High - Users selecting this model in OpenCode UI will experience API failures - Error messages may be confusing as the model appears to be available in the UI - This affects production usage of Claude Opus 4.6 on Google Vertex ### Root Cause Hypothesis The issue appears to be in OpenCode's model registry or dynamic model version generation: 1. **Hypothesis 1:** OpenCode is dynamically generating dated build versions based on current date (`@20260205` = February 5, 2026) 2. **Hypothesis 2:** OpenCode has a cached/hardcoded list of model versions that's outdated 3. **Hypothesis 3:** OpenCode is fetching from a stale model registry that doesn't match actual Google Vertex availability ### Plugins _No response_ ### OpenCode version v1.1.52 ### Steps to reproduce 1. Select opus 4.6 2. send any message ### Screenshot and/or share link _No response_ ### Operating System macos ### Terminal warp
yindo added the bugzen labels 2026-02-16 18:10:26 -05:00
Author
Owner

@github-actions[bot] commented on GitHub (Feb 5, 2026):

This issue appears to be part of a broader problem with Claude Opus 4.6 model identifier configuration across multiple providers. Please check:

  • #12330: Model IDs are wrong for Opus 4.6 on AWS Bedrock (similar model identifier issue on a different provider)

The pattern suggests OpenCode may have incorrect model version configurations for Opus 4.6 across multiple cloud providers (Google Vertex AI and AWS Bedrock). Fixing the underlying model registry or configuration system might resolve both issues.

@github-actions[bot] commented on GitHub (Feb 5, 2026): This issue appears to be part of a broader problem with Claude Opus 4.6 model identifier configuration across multiple providers. Please check: - #12330: Model IDs are wrong for Opus 4.6 on AWS Bedrock (similar model identifier issue on a different provider) The pattern suggests OpenCode may have incorrect model version configurations for Opus 4.6 across multiple cloud providers (Google Vertex AI and AWS Bedrock). Fixing the underlying model registry or configuration system might resolve both issues.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: anomalyco/opencode#8631