Skip to content

chore: move API requests from claude-sonnet-4-5 to claude-sonnet-5-5 - #95

Open
jayypatel18 wants to merge 1 commit into
KryptSec:mainfrom
jayypatel18:migrate-claude-sonnet-5-5
Open

jayypatel18 wants to merge 1 commit into
KryptSec:mainfrom
jayypatel18:migrate-claude-sonnet-5-5

Conversation

@jayypatel18

Copy link
Copy Markdown

What

This moves the API requests that send claude-sonnet-4-5 to claude-sonnet-5-5.

  • src/lib/analyzer.ts: DEFAULT_ANALYZER_MODEL goes from claude-sonnet-4-5-20250929 to claude-sonnet-5-5, because the analyzer sends this default as its request model and the old id is retiring.
  • src/lib/env-check.ts: the model in the client.messages.create call inside checkApiKey changes from claude-sonnet-4-5-20250929 to claude-sonnet-5-5, so the key check runs against a model that stays available.
  • src/commands/analyze.ts: the --model help text now says the default is claude-sonnet-5-5, so it matches the new DEFAULT_ANALYZER_MODEL.
  • src/commands/run.ts: the --analyzer-model help text and the oasis config set default-model hint now name claude-sonnet-5-5 instead of claude-sonnet-4-5-20250929, so users are pointed at the model that is still served.

What changes for you

  • Thinking runs by default. A request with no thinking field ran without thinking on Claude Sonnet 4.5 and runs with adaptive thinking on Claude Sonnet 5.5. Thinking tokens are billed as output tokens, and max_tokens covers thinking plus text. max_tokens is not changed here.
  • The guide says to revisit max_tokens. What these requests send today, unchanged: src/lib/env-check.ts (max_tokens: 1).
  • The same text produces about 30% more tokens than on Claude Sonnet 4.5, depending on the content.
  • Not changed, because they describe the old model and send no request: src/commands/providers.ts (line 20), src/lib/providers.ts (line 19), tests/unit/report.test.ts (lines 14, 73, 116).

Why

Claude Sonnet 4.5 (claude-sonnet-4-5-20250929) is deprecated and retires on November 30, 2026. Requests to a retired model fail. The recommended replacement is claude-sonnet-5-5.

How

Only the places that send a request, or tell a user which model is the default, were changed. Entries that describe the old model (the provider list and the test fixtures) are left as they are. src/commands/run.ts line 21 still shows claude-sonnet-4-5-20250929 in a help example; say if you want that changed too.

Checklist

  • Tests added/updated
  • npm run typecheck passes
  • npm test passes
  • npm run build succeeds

What I checked

In a clean Node 20 container, on main (22b57a4) and then on this branch, with install scripts off:

Step main this branch
npm install ok ok
npm test 466 passed 466 passed
tsc --noEmit no errors no errors
npm run typecheck ok ok
npm run build ok ok

Not checked: No request was sent to the API, so the model's answers, cost and latency were not compared. The app was not run.

This branch has not been deployed

No deployments
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