You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
src/generated/api.ts / openapi.json — Two new endpoints (POST …/access-token and POST …/switch-mode) land as generated types but there is no matching resource-layer wrapper in this PR, so consumers cannot reach them through the typed client.
Why: Rule 7 — public surface additions should ship with the resource wiring and tests that make them usable; otherwise the type sync produces dead API surface.
Fix: Confirm whether resource methods are auto-derived. If not, land the resource additions + tests (and api.md updates) before or alongside the patch release, or explicitly defer in the PR body.
PR checklist — "Review generated type diffs for breaking changes" is unchecked on an automated sync PR.
Why: Rule 4 — generated diffs are the only place where breaking changes to the public surface can slip in silently on a bot PR.
Fix: Human reviewer should tick the box after confirming the diff is purely additive (spot-check: no removed operations, no renamed schema components, no narrowed types on existing operations). The diff as reviewed appears additive.
Suggestions
openapi.json — RunAccessTokenResponse.token is a bearer credential typed as a plain string. Consider annotating it (format: password or x-sensitive: true) upstream so any future logging/serialization helper in the SDK can redact it.
openapi.json — The /access-token description lacks the "no impersonation" qualifier that /switch-mode carries, even though the body accepts operator_id. Worth confirming server-side enforcement and mirroring the qualifier in the spec description so SDK consumers don't assume they can mint tokens for arbitrary operators.
openapi.json:RunSwitchModeRequest.participant_call_sid — maxLength: 64 is dropped by codegen. If the SDK does client-side validation elsewhere, add it at the resource layer when wiring the endpoint.
If neighboring run operations use branded ID types for workspace_id/run_id, update the generator config so the two new operations emit the same brands rather than raw string.
What's good
Purely additive change; no existing operations, schemas, exports, or signatures modified.
Generated types faithfully mirror the spec: conference_sid correctly rendered as string | null | undefined, mode narrowed to the "listen" | "takeover" literal union.
No hand-written duplicates of generated types; codegen path respected.
No runtime dependencies or workflow files touched.
Verdict
MERGE AFTER BLOCKERS FIXED — no hard blockers, but a human reviewer should complete the breaking-change checklist item and confirm the resource-layer follow-up plan before this bot PR ships in a patch release.
Skip automated reviews by including [skip review] in the PR title.
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
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
openapi.jsonfromamigo-ai/platformspec changesrc/generated/api.tsvianpm run gen-typesTest plan
npm run typecheckpassesnpm run buildpassesnpm testpassesGenerated automatically by SDK Type Sync