Skip to content

Add Claude Opus 4.8 to UCSF Versa API Bedrock model list (now entitled) #29

Description

@Broccolito

Summary

Add Claude Opus 4.8 (us.anthropic.claude-opus-4-8-v1) to the UCSF Versa API Bedrock provider's model list. The Claude 4.8 models are now available/entitled on UCSF's Bedrock account, so the reason the model was originally omitted no longer applies.

Background

VERSA_BEDROCK_KNOWN_MODELS in crates/biorouter/src/providers/versa_bedrock.rs currently lists Opus 4.6, Sonnet 4.6, Opus 4.5, and Haiku 4.5. Opus 4.7/4.8 were intentionally excluded, per the in-code comment:

Only models that UCSF's Bedrock account is entitled to invoke are listed — every entry below has been verified end-to-end via the Versa proxy. Opus 4.7 and 4.8 are intentionally omitted because UCSF returns AccessDeniedException for them; users can still type a newer ID via the "Enter a model not listed…" option once UCSF enables it.

Now that UCSF has enabled the 4.8 models, Opus 4.8 should be promoted from "type-it-yourself" to a first-class listed model.

What's already in place

Most of the supporting plumbing already anticipates Opus 4.8 — only the provider's known-model list needs the entry:

  • Context windowcrates/biorouter/src/model.rs:113 already maps ("claude-opus-4-8", 1_000_000), so the 1M-context window is handled.
  • Canonical/usage mappingcrates/biorouter/src/providers/canonical/name_builder.rs:426 already maps versa_bedrock / us.anthropic.claude-opus-4-8-v1anthropic/claude-opus-4.8 (this also confirms the expected Bedrock model ID: us.anthropic.claude-opus-4-8-v1, matching the short -v1 form used by the existing us.anthropic.claude-opus-4-6-v1 entry).

Proposed change

In crates/biorouter/src/providers/versa_bedrock.rs:

  1. Add "us.anthropic.claude-opus-4-8-v1" to the top of VERSA_BEDROCK_KNOWN_MODELS (the list is ordered newest → oldest; the UI auto-selects the first entry as the default when switching providers). Consider adding Opus 4.7 too if UCSF entitled both.
  2. Update the explanatory comment above the array so it no longer says 4.7/4.8 are omitted for AccessDeniedException.
  3. Optional: update VERSA_BEDROCK_DEFAULT_MODEL (currently us.anthropic.claude-opus-4-6-v1) to us.anthropic.claude-opus-4-8-v1 if 4.8 should become the provider's default.

The frontend model picker reads the provider's known_models/ModelInfo from the backend, so no separate UI list needs editing.

Verification (please confirm before merging)

The existing invariant is that every listed model is verified end-to-end via the Versa proxy (no AccessDeniedException). Before shipping:

  • Confirm UCSF's Bedrock account returns a successful converse/converse_stream for us.anthropic.claude-opus-4-8-v1 through the MuleSoft proxy (https://unified-api.ucsf.edu/general/awsai) — i.e. the AccessDeniedException that caused the original omission is gone.
  • Double-check the exact Bedrock model ID against AWS's catalog for the us. cross-region inference profile (expected us.anthropic.claude-opus-4-8-v1 per the canonical map above; adjust if AWS uses a date-stamped …-YYYYMMDD-v1:0 form instead).

(Note: I can't verify UCSF's entitlement or invoke the proxy from here — this request is filed on the report that the 4.8 models are now available.)

Environment

  • Provider: UCSF Versa API Bedrock (versa_bedrock).
  • Model requested: Claude Opus 4.8 (us.anthropic.claude-opus-4-8-v1, 1M context).

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions