@google/genai 1.50.1 renamed one method in a patch release. ai.webhooks.retrieve became ai.webhooks.get, and the old name was not kept: 1.50.0 declares retrieve, 1.50.1 declares get. The return type narrowed at the same time, from a WebhookRetrieveResponse wrapper to the Webhook itself.
What changed
One method on one resource, renamed to match how the rest of the client reads a single item. Arguments are unchanged. What comes back is one hop shorter: the webhook rather than a response wrapping it.
It earns a page because it is a break in a patch release. A range of ^1.50.0 picks it up on the next install, with no deliberate upgrade.
Before and after
The old name on a client held in a variable:
import { GoogleGenAI } from '@google/genai';
const ai = new GoogleGenAI({ apiKey: process.env['GEMINI_API_KEY'] ?? '' });
export async function webhook(id: string) { const response = await ai.webhooks.retrieve(id); return response;}After npx emendant fix:
import { GoogleGenAI } from '@google/genai';
const ai = new GoogleGenAI({ apiKey: process.env['GEMINI_API_KEY'] ?? '' });
export async function webhook(id: string) { const response = await ai.webhooks.get(id); return response;}Migration guidance and its limits
Apply the patch. It is a deterministic rename, proved against your own typecheck and tests before it is offered.
The return type is the part it does not do. Code that read a field off the old wrapper now reads it off the Webhook, and your typecheck will point at it; Emendant does not edit those reads.
The call is attributed through the GoogleGenAI binding. A client passed in as an untyped parameter, or reached through a wrapper the file does not construct, is not reported. A site the tool cannot prove is one it does not name.
What Emendant detects, fixes and verifies
1 change in @google/genai 1.50.1. 1 automatic fixes, 0 fixes requiring a model provider you choose, 0 report only. Each patch states which checks passed. Understand patch evidence.
| Change | Severity | Detects | Fix | Verified by |
|---|---|---|---|---|
webhooks.retrieve became webhooks.getgoogle-genai-npm-1.50.1-webhooks-retrieve-renamed | Breaking |
| Patch, written by the rename-property transform | Your typecheck and tests |
emendant explain <change-id> prints any row's entry, guidance and sources at the terminal.
The error TS lines are what TypeScript 5.9.3 printed when code that compiled against @google/genai 1.50.0 was compiled against 1.50.1. A row without one is a change the compiler does not report, such as a deprecation or a change in behaviour.
Coverage
Requires emendant@0.1.0 or later. Run emendant feed update to get the latest coverage.
Coverage details
- Snapshot
2026-08-28.1, sequence 11, signed 28 August 2026- Feed entry
feed/npm/@google/genai/1.50.1.json
emendant feed status shows the snapshot your machine holds.
Primary sources
Scan your repository
Find affected code without editing your files.
npx emendant scanThen npx emendant fix writes the patches the table says exist. The getting started guide covers the flags and the patch grades.
Related release pages
- Later @google/genai release: @google/genai 2.8.0: StreamTranslationConfig removed from all three entry points
Every @google/genai release page is listed on one page.