chore: 🐝 Update SDK - Generate 0.10.1#347
Conversation
* `open_router.benchmarks.get_benchmarks()`: **Added** * `open_router.datasets.get_benchmarks_artificial_analysis()`: **Deleted** **Breaking**⚠️ * `open_router.datasets.get_benchmarks_design_arena()`: **Deleted** **Breaking**⚠️ * `open_router.chat.send()`: `response` **Changed** * `open_router.embeddings.generate()`: `response.usage` **Changed** * `open_router.embeddings.list_models()`: `response.data.[].reasoning` **Added** * `open_router.models.get()`: `response.data.reasoning` **Added** * `open_router.models.list()`: `response.data.[].reasoning` **Added** * `open_router.models.list_for_user()`: `response.data.[].reasoning` **Added**
958a620 to
9454ae7
Compare
There was a problem hiding this comment.
Perry's Review
Incremental re-review of the Speakeasy SDK 0.10.1 regen — the only change since my last review (at 958a620) is regenerator bookkeeping.
Verdict: 💬 Comments / questions
Details
Risk: 🟡 Medium — intentional public-API removal (covered by the standing thread below); the generated SDK code itself is byte-for-byte unchanged this push.
CI: none reported on the head SHA.
Scope: incremental — 3 new lines since prior review (all regen metadata).
Delta since 958a620: the entire diff vs the previously-reviewed snapshot is three lines — a fresh generation_id, a new pristine_commit_hash in the Speakeasy gen.lock, and a RELEASES.md timestamp. Crucially the pristine_tree_hash is identical (a5b3d8dc → efb6e09e) in both the prior and current regen, which means the generated SDK output tree is byte-for-byte unchanged from what I reviewed at 958a620. No source, schema, or public-API change in this push.
Findings: no net-new findings on this push. I did not re-litigate already-reviewed content per incremental scoping.
Carried-forward (still open, not re-posted): my prior suggestion on the version bump remains valid and unresolved — the breaking removal of two public benchmark methods (datasets.get_benchmarks_artificial_analysis / get_benchmarks_design_arena and their async variants, replaced by the unified benchmarks.get_benchmarks source-param) still ships as a patch (0.10.0 → 0.10.1). Verified at HEAD: pyproject version is still 0.10.1 and the OpenAPI doc version is still 1.0.0, so the bump is unchanged. This is a release-policy call, not an SDK-code defect.
Codex (HEAVY_SECONDARY_MODEL): no additional findings (no valid findings survived verification).
Analysis lanes: candidates were all against already-reviewed regen artifacts (gen.lock checksums, openapi.yaml additions) outside this push's delta — none substantiated as net-new.
Research: re-confirmed Speakeasy's versioning model — bump type is derived only from OpenAPI info.version + a document checksum and never inspects removed operations, so a breaking removal silently registers as a patch. Fix is to bump info.version (minor) at source, apply a minor/major PR label, or set SPEAKEASY_BUMP_OVERRIDE — not to hand-edit the version line.
Security: no concerns — secret-pattern grep over the added lines was clean; the net-new content is regen metadata only.
Test coverage: generated SDK; no test surface affected by this push.
Unresolved threads: 1 — the carried-forward versioning suggestion above (opened at 958a620).
Scope: incremental — 3 new lines since prior review (regen metadata only)
Review: tier=large · model=claude-opus-latest · score=37.0
SDK update
Versioning
Version Bump Type: [patch] - 🤖 (automated)
Tip
If updates to your OpenAPI document introduce breaking changes, be sure to update the
info.versionfield to trigger the correct version bump.Speakeasy supports manual control of SDK versioning through multiple methods.
Python SDK Changes:
open_router.benchmarks.get_benchmarks(): Addedopen_router.datasets.get_benchmarks_artificial_analysis(): Deleted Breakingopen_router.datasets.get_benchmarks_design_arena(): Deleted Breakingopen_router.chat.send():responseChangedopen_router.embeddings.generate():response.usageChangedopen_router.embeddings.list_models():response.data.[].reasoningAddedopen_router.models.get():response.data.reasoningAddedopen_router.models.list():response.data.[].reasoningAddedopen_router.models.list_for_user():response.data.[].reasoningAddedOpenAPI Change Summary
PYTHON CHANGELOG
No relevant generator changes
Based on Speakeasy CLI 1.680.0
Last updated by Speakeasy workflow