Skip to content

release: 0.70.0#121

Open
stainless-app[bot] wants to merge 7 commits into
mainfrom
release-please--branches--main--changes--next
Open

release: 0.70.0#121
stainless-app[bot] wants to merge 7 commits into
mainfrom
release-please--branches--main--changes--next

Conversation

@stainless-app

@stainless-app stainless-app Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Automated Release PR

0.70.0 (2026-06-23)

Full Changelog: v0.69.0...v0.70.0

Features

  • Add GET /browsers/{id}/telemetry/events (read from S2) (9a84bff)
  • Align browser-pool timeout/viewport/fill-rate contract with implementation; reject save_changes on update (5fdc97b)
  • api: add GET /extensions/{id_or_name}/metadata (a88cbff)
  • api: resolve GET /org/projects/{id} by ID or name (b5ff4c6)
  • Forward replay param through telemetry stream passthrough (e330f60)

This pull request is managed by Stainless's GitHub App.

The semver version number is based on included commit messages. Alternatively, you can manually set the version number in the title of this pull request.

For a better experience, it is recommended to use either rebase-merge or squash-merge when merging this pull request.

🔗 Stainless website
📚 Read the docs
🙋 Reach out for help or questions


Note

Low Risk
OpenAPI-driven SDK release with additive endpoints and documentation alignment; no auth or breaking signature removals in the diff.

Overview
Release 0.70.0 bumps the package and OpenAPI/Stainless metadata (122 endpoints) and ships generated client updates from the latest API spec.

Browser telemetry gains paginated historical reads via client.browsers.telemetry.events() (TelemetryEventsResponse, filters for category/time window and offset pagination). The live SSE stream() method now accepts an optional replay query param (e.g. all for oldest retained events) and documents that behavior in docstrings.

Extensions add client.extensions.get(id_or_name) for GET /extensions/{id_or_name}/metadata returning ExtensionGetResponse without downloading the archive.

Projects retrieve() docstrings now state the path segment can be project ID or name (unique within the org).

Browser pool / viewport docs align with the server: timeout_seconds documents min 10 / max 259200 (72h), fill_rate_per_minute notes org-specific caps, and viewport width/height/refresh_rate fields note any positive integer is accepted. Browser pool tests use timeout_seconds=10 to match the documented minimum.

Reviewed by Cursor Bugbot for commit c0b966f. Bugbot is set up for automated code reviews on this repo. Configure here.

@stainless-app

stainless-app Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor Author

🧪 Testing

To try out this version of the SDK:

pip install 'https://pkg.stainless.com/s/kernel-python/9a84bff15de4d6ed1930f0d9dc01ace64548866c/kernel-0.69.0-py3-none-any.whl'

Expires at: Thu, 23 Jul 2026 16:37:20 GMT
Updated at: Tue, 23 Jun 2026 16:37:20 GMT

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 77d5b56. Configure here.


Defaults to 10. The cap is 25 for most organizations but can be raised
per-organization, so only the lower bound is enforced here.
"""

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Update still allows save_changes

Medium Severity

Release 0.70.0 documents that save_changes is rejected on browser pool update, but BrowserPoolUpdateParams still types profile as BrowserProfile with save_changes, and browser_pools.update forwards that field unchanged. Callers following the SDK can send a field the API rejects.

Additional Locations (2)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 77d5b56. Configure here.

@firetiger-agent

Copy link
Copy Markdown

Created a monitoring plan for this PR.

What this PR does: Updates the Python SDK to v0.70.0, clarifying documented constraints for browser-pool parameters (timeout_seconds, fill_rate_per_minute, and viewport dimensions) to match what the server already enforces.

Intended effect:

  • Browser-pool create/update error rate: baseline 0 errors on /browser_pools and /browser_pools/{id_or_name} (confirmed over 24h pre-deploy); confirmed if it stays at 0 after adoption.
  • Browser-pool acquire/release error rate: baseline ~0% (3,000–7,300 acquire spans/hr, effectively 0 errors); confirmed if no sustained elevation post-SDK adoption.

Risks:

  • New 400s from stricter client code — if SDK consumers treat the newly documented timeout_seconds minimum (10) or maximum (259200) as newly enforced and change their call sites to wrong values, check /browser_pools and /browser_pools/{id_or_name} 5xx spans in traces; alert if errors > 0 for 2+ consecutive hours (baseline is 0).
  • Misread fill_rate cap — if consumers interpret the fill_rate_per_minute cap of 25 as newly enforced and submit values >25 expecting them to be rejected, watch for new 400 spikes on pool create/update; alert if 4xx rate rises above pre-deploy 0%.

Status updates will be posted automatically on this PR as monitoring progresses.

View monitor

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 77d5b56 to 47c0e24 Compare June 23, 2026 14:14
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 47c0e24 to 2614178 Compare June 23, 2026 14:44
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 2614178 to 5c33147 Compare June 23, 2026 16:18
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 5c33147 to c0b966f Compare June 23, 2026 16:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants