Skip to content

feat(models): add Opus 4.8 and Sonnet 5 - #447

Merged
dimakis merged 3 commits into
mainfrom
session/2026-08-31-f75e78704f91
Sep 1, 2026
Merged

feat(models): add Opus 4.8 and Sonnet 5#447
dimakis merged 3 commits into
mainfrom
session/2026-08-31-f75e78704f91

Conversation

@dimakis

@dimakis dimakis commented Aug 31, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add Claude Opus 4.8 + Max variant to available models
  • Add Claude Sonnet 5
  • Remove Opus 4.7 and Opus 4.5 (not provisioned on new Vertex project itpc-ca-638a2a9c7c)
  • Update model-spec tests

Test plan

  • model-spec.test.ts passes (11/11)
  • Verify model selector renders correctly on mobile and desktop
  • Verify Opus 4.8 sessions work end-to-end

🤖 Generated with Claude Code

Update available model list to match current Vertex AI inventory:
- Add Claude Opus 4.8 + Max variant
- Add Claude Sonnet 5
- Remove Opus 4.7 and Opus 4.5 (not provisioned on new project)
- Update tests to cover new models

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@dimakis

dimakis commented Aug 31, 2026

Copy link
Copy Markdown
Owner Author

Centaur Review

Found 3 issue(s) (2 warning).

server/chat.ts

Model list updates are consistent across all three picker locations (server, mobile, desktop). Main issue: the parseModelSpec tests and a JSDoc comment still reference the removed claude-opus-4-7 model ID.

  • 🟡 regressions (L378): JSDoc comment still references claude-opus-4-7:max — should be updated to claude-opus-4-8:max to match the new model list. [fixable]

server/__tests__/model-spec.test.ts

Model list updates are consistent across all three picker locations (server, mobile, desktop). Main issue: the parseModelSpec tests and a JSDoc comment still reference the removed claude-opus-4-7 model ID.

  • 🟡 regressions (L10): All four parseModelSpec test cases (lines 10, 17, 24, 28) still use claude-opus-4-7 as test input. The function is a generic string splitter so they pass, but they reference a model that no longer exists in AVAILABLE_MODELS. Should be updated to claude-opus-4-8 for consistency — the resolveThinking tests in the same file were updated but these were missed. [fixable]

frontend/src/lib/constants.ts

Model list updates are consistent across all three picker locations (server, mobile, desktop). Main issue: the parseModelSpec tests and a JSDoc comment still reference the removed claude-opus-4-7 model ID.

  • 🔵 regressions (L12): The multi-line comment explaining the DEFAULT_MODEL choice (lines 12-16) references "Opus 4.7" four times. Now that the picker offers 4.8, these references are stale and should say "4.8". [fixable]

Update JSDoc, test fixtures, and constants comment to reference
claude-opus-4-8 consistently after the model list update.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@dimakis

dimakis commented Sep 1, 2026

Copy link
Copy Markdown
Owner Author

Centaur Review

Found 3 issue(s) (1 warning).

server/__tests__/ws-handler-v2.test.ts

Straightforward model roster update. The pickers and AVAILABLE_MODELS are consistent, but 6 stale claude-opus-4-7 references remain in test fixtures across two test files.

  • 🟡 regressions: 4 stale references to claude-opus-4-7 remain at lines 2367, 2376, 2438, 2447. While these tests still pass (the model string is opaque passthrough data), they should be updated to claude-opus-4-8 for consistency with the rest of the PR. [fixable]

packages/client/__tests__/store.test.ts

Straightforward model roster update. The pickers and AVAILABLE_MODELS are consistent, but 6 stale claude-opus-4-7 references remain in test fixtures across two test files.

  • 🔵 regressions: 2 stale references to claude-opus-4-7 remain at lines 795 and 799. Same situation — opaque test fixture value that still passes, but should be updated for consistency. [fixable]

server/__tests__/model-spec.test.ts

Straightforward model roster update. The pickers and AVAILABLE_MODELS are consistent, but 6 stale claude-opus-4-7 references remain in test fixtures across two test files.

  • 🔵 missing_tests (L55): resolveThinking has no test case for claude-sonnet-5. The existing claude-sonnet-4-6 test covers the .includes('sonnet') branch, but since Sonnet 5 is a newly-added model with a different naming pattern (no minor version), an explicit test would guard against future regressions if the matching logic changes. [fixable]

Update ws-handler-v2 and store test fixtures, add resolveThinking
test case for claude-sonnet-5 naming pattern.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@dimakis
dimakis merged commit ea872ff into main Sep 1, 2026
1 check passed

@dimakis dimakis left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Centaur Review

LGTM — no issues found.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant