Conversation
|
🧪 Testing To try out this version of the SDK: Expires at: Thu, 09 Apr 2026 16:07:02 GMT |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
| if (!(timeoutMillis && 0 <= timeoutMillis && timeoutMillis < 60 * 1000)) { | ||
| // If the API asks us to wait a certain amount of time, just do what it | ||
| // says, but otherwise calculate a default | ||
| if (timeoutMillis === undefined) { |
There was a problem hiding this comment.
Missing validation allows NaN/negative retry timeouts
Medium Severity
The old guard !(timeoutMillis && 0 <= timeoutMillis && timeoutMillis < 60 * 1000) validated that timeoutMillis was a positive, finite, reasonable number. The new check timeoutMillis === undefined only catches the undefined case. When Date.parse(retryAfterHeader) fails on an invalid date string, timeoutMillis becomes NaN (since NaN - Date.now() is NaN). Since NaN !== undefined, the fallback is skipped and sleep(NaN) is called, which resolves immediately via setTimeout(resolve, NaN). Similarly, a past-date retry-after header produces a negative timeoutMillis, also resolving immediately. Both cases bypass exponential backoff entirely, risking a retry storm against an already-struggling server.
c4a7e8c to
b883f9e
Compare
b883f9e to
293d9e1
Compare
293d9e1 to
21eb629
Compare
21eb629 to
c5c765f
Compare
c5c765f to
084307b
Compare
084307b to
8893279
Compare
|
🤖 Release is at https://github.com/kernel/kernel-node-sdk/releases/tag/v0.43.0 🌻 |


Automated Release PR
0.43.0 (2026-03-10)
Full Changelog: v0.42.1...v0.43.0
Features
Bug Fixes
Chores
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
Medium Risk
Medium risk because it changes core HTTP client URL/query merging and retry backoff behavior, which can affect request correctness and rate-limit handling. Other changes are mostly release/version bumps and CI/dependency hygiene.
Overview
Bumps the SDK to
0.43.0(manifest,package.json, lockfiles,src/version.ts, changelog) and updates the pinned OpenAPI spec metadata.API surface: browser session-related responses now include
webdriver_ws_urlacross browsers, browser pools, and invocation browser listings.Client behavior:
buildURLnow preserves query params embedded in the provided path by mergingurl.searchParamswithdefaultQueryand per-request query, and retry handling now always honors server-providedretry-after/retry-after-msdelays instead of falling back when the delay is “too large.”Ops/deps: CI artifact upload (OIDC + tarball) is skipped on
stl/*branches, andminimatchis force-upgraded viaoverrides/resolutions(reflected inyarn.lock).Written by Cursor Bugbot for commit 8893279. This will update automatically on new commits. Configure here.