Repository navigation
fix(provider): hide Zen free-tier models, deprecate freeOnly, surface 403 hint in chat - #266
Merged
Merged
Conversation
… 403 hint in chat OpenCode gates free-tier Zen models to its own clients since Sep 17 2026 (upstream anomalyco/opencode#49580; issues #235/#240). Verified live: all 10 free Zen models 403 with FreeTierError, paid Zen models 401 (not gated), Go free models only hit the credential check (unlimited for subscribers, third-party clients explicitly permitted). - config: isZenFreeTierModel() with vendor-scoped contract (Zen only) - definitions: Zen filterModel excludes free-tier models unconditionally; freeOnly setting ignored (deprecated, kept registered) - errors: free-tier / Router.Unavailable hint now replaces raw gateway detail in error.message too - chat renders message, not userMessage - package.json/README: freeOnly marked deprecated, free-tier claims removed - tests: classification + chat-surface hint assertions - docs: issue doc 112, addendum on doc 106, CHANGELOG unreleased entries
- replace the Zen free-models table with a notice: free-tier Zen models 403 for third-party clients since Sep 17 2026 (upstream #49580); paid Zen + all Go models unaffected, Go free models stay unlimited - quick start, feature table, Copilot comparison, and FAQ no longer advertise free Zen models or '$0' usage - package.json: drop 'free-models' keyword and 'free Claude Opus' from the description; replace stale -free model examples in thinking docs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to the free-tier policy handled in #235/#240 (docs/issues/106). A Marketplace review surfaced that the 0.7.6 fix only replaced the error text — the Zen picker (default
freeOnly: true) kept steering users into models upstream now 403s, and chat still rendered raw gateway JSON.Verified live (2026-10-20): all 10 free Zen models →
403 FreeTierError; paid Zen →401 AuthError(not gated); Go free models → credential check only. The gate is Zen-only — Go free models are unlimited for subscribers and third-party clients are explicitly permitted, so the filter is vendor-scoped.Changes
src/config.ts— newisZenFreeTierModel()with a CONTRACT comment (vendor-scoped, Go exceptions listed, removable if upstream reopens)src/provider/definitions.ts— ZenfilterModelexcludes free-tier models unconditionally (live/cached/bundled paths); unused imports droppedsrc/errors.ts— free-tier / Router.Unavailable hint now replaces the raw detail inerror.messagetoo (VS Code chat rendersmessage, notuserMessage); raw body still logged in the output channelpackage.json—freeOnlydeprecated (kept registered, ignored);free-modelskeyword and "free Claude Opus" removed from the description; stale-freemodel examples replacedREADME.md— all free-Zen claims removed (quick start, feature table, comparison, FAQ); dated policy notice section linking pinned announcement 📌 [ANNOUNCEMENT] OpenCode free-tier Zen models no longer work from VS Code (upstream policy, since Sep 17, 2026) — not a bug in this extension #265isZenFreeTierModelclassification + chat-surface hint assertionsdocs/issues/112-20261020-zen-free-tier-policy-followup.md, addendum on doc 106, CHANGELOG[Unreleased]Verification
npm run lint— all 7 checks pass (editorconfig, eslint, markdown, prettier, shellcheck, typecheck, unit tests)Related: pinned announcement #265, #258 (closed as duplicate)