[Claimed #3155] fix: accept new model IDs without a Stagehand release
Mirrored from external contributor PR #3155 after approval by @miguelg719.
Original author: @antonvishal
Original PR: https://github.com/browserbase/stagehand/pull/3155
Approved source head SHA: 4863fda8b24294a96095304ec67401a25cb7bbab
@antonvishal, please continue any follow-up discussion on this mirrored PR. When the external PR gets new commits, this same internal PR will be marked stale until the latest external commit is approved and refreshed here.
Original description
Why
Model allowlists block users from using newly released models.
What
Validate supported provider prefixes and nonempty, whitespace-free model IDs. Let providers determine model availability. Keep TypeScript, Python, and Go synchronized, with existing providers and defaults unchanged.
How
Extension, TypeScript, Python, and Go tests passed. Package builds, type checks, and generation checks passed.
Summary by cubic
Removes explicit model allowlists so newly released models work without a Stagehand release. Model names are now validated only for a supported provider prefix and a nonempty, whitespace-free ID; providers determine model availability.
- Unknown model IDs are forwarded to providers, so unavailable models surface the provider's error instead of being rejected upfront.
- Behavior is identical across TypeScript, Python, Go, and the extension.
- The fix ships as patch bumps for the protocol, extension, and all SDK packages.