From dda0e7b80fe6b104bde97a0b06cf060557501824 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 17 Jan 2026 21:34:31 +0000
Subject: [PATCH 1/3] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 2857ba8..8e09c0a 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 91
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel%2Fkernel-fc2c80b398a8dd511010ae7cda5e21c353e388ee130aa288974b47af4208b5b8.yml
-openapi_spec_hash: 5e06586dbbb9fce12b907f4e32497006
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel%2Fkernel-1e490dbef30dfa53ccba72524fcba4079f244f2530a4f770c00f8fee707eaa72.yml
+openapi_spec_hash: 1fd15429610959f19aed6d3cb170ab9e
config_hash: cc7fdd701d995d4b3456d77041c604cf
From 33f2a9cd0b5391bd058f6c74900c8d3731b3f990 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 18 Jan 2026 22:56:52 +0000
Subject: [PATCH 2/3] feat(dashboard): add browser replays support for past
browsers
---
.stats.yml | 4 ++--
api.md | 2 +-
browser.go | 45 +++++++++++++++++++++++++++++++++++++--------
browser_test.go | 11 +++++++++--
4 files changed, 49 insertions(+), 13 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 8e09c0a..37fa5b7 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 91
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel%2Fkernel-1e490dbef30dfa53ccba72524fcba4079f244f2530a4f770c00f8fee707eaa72.yml
-openapi_spec_hash: 1fd15429610959f19aed6d3cb170ab9e
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel%2Fkernel-68729f2ff40476377ead9019c18ea140fc4efbc2e68d7c4fc323bd61ae81f768.yml
+openapi_spec_hash: 9eec61481f9059b5fedc13abc3e39338
config_hash: cc7fdd701d995d4b3456d77041c604cf
diff --git a/api.md b/api.md
index f5dfb8c..5a00389 100644
--- a/api.md
+++ b/api.md
@@ -81,7 +81,7 @@ Response Types:
Methods:
- client.Browsers.New(ctx context.Context, body kernel.BrowserNewParams) (\*kernel.BrowserNewResponse, error)
-- client.Browsers.Get(ctx context.Context, id string) (\*kernel.BrowserGetResponse, error)
+- client.Browsers.Get(ctx context.Context, id string, query kernel.BrowserGetParams) (\*kernel.BrowserGetResponse, error)
- client.Browsers.Update(ctx context.Context, id string, body kernel.BrowserUpdateParams) (\*kernel.BrowserUpdateResponse, error)
- client.Browsers.List(ctx context.Context, query kernel.BrowserListParams) (\*pagination.OffsetPagination[kernel.BrowserListResponse], error)
- client.Browsers.Delete(ctx context.Context, body kernel.BrowserDeleteParams) error
diff --git a/browser.go b/browser.go
index c8da385..0c27f87 100644
--- a/browser.go
+++ b/browser.go
@@ -66,14 +66,14 @@ func (r *BrowserService) New(ctx context.Context, body BrowserNewParams, opts ..
}
// Get information about a browser session.
-func (r *BrowserService) Get(ctx context.Context, id string, opts ...option.RequestOption) (res *BrowserGetResponse, err error) {
+func (r *BrowserService) Get(ctx context.Context, id string, query BrowserGetParams, opts ...option.RequestOption) (res *BrowserGetResponse, err error) {
opts = slices.Concat(r.Options, opts)
if id == "" {
err = errors.New("missing required id parameter")
return
}
path := fmt.Sprintf("browsers/%s", id)
- err = requestconfig.ExecuteNewRequest(ctx, http.MethodGet, path, nil, &res, opts...)
+ err = requestconfig.ExecuteNewRequest(ctx, http.MethodGet, path, query, &res, opts...)
return
}
@@ -89,8 +89,8 @@ func (r *BrowserService) Update(ctx context.Context, id string, body BrowserUpda
return
}
-// List all browser sessions with pagination support. Use include_deleted=true to
-// include soft-deleted sessions in the results.
+// List all browser sessions with pagination support. Use status parameter to
+// filter by session state.
func (r *BrowserService) List(ctx context.Context, query BrowserListParams, opts ...option.RequestOption) (res *pagination.OffsetPagination[BrowserListResponse], err error) {
var raw *http.Response
opts = slices.Concat(r.Options, opts)
@@ -108,8 +108,8 @@ func (r *BrowserService) List(ctx context.Context, query BrowserListParams, opts
return res, nil
}
-// List all browser sessions with pagination support. Use include_deleted=true to
-// include soft-deleted sessions in the results.
+// List all browser sessions with pagination support. Use status parameter to
+// filter by session state.
func (r *BrowserService) ListAutoPaging(ctx context.Context, query BrowserListParams, opts ...option.RequestOption) *pagination.OffsetPaginationAutoPager[BrowserListResponse] {
return pagination.NewOffsetPaginationAutoPager(r.List(ctx, query, opts...))
}
@@ -532,6 +532,20 @@ func (r *BrowserNewParams) UnmarshalJSON(data []byte) error {
return apijson.UnmarshalRoot(data, r)
}
+type BrowserGetParams struct {
+ // When true, includes soft-deleted browser sessions in the lookup.
+ IncludeDeleted param.Opt[bool] `query:"include_deleted,omitzero" json:"-"`
+ paramObj
+}
+
+// URLQuery serializes [BrowserGetParams]'s query parameters as `url.Values`.
+func (r BrowserGetParams) URLQuery() (v url.Values, err error) {
+ return apiquery.MarshalWithSettings(r, apiquery.QuerySettings{
+ ArrayFormat: apiquery.ArrayQueryFormatComma,
+ NestedFormat: apiquery.NestedQueryFormatBrackets,
+ })
+}
+
type BrowserUpdateParams struct {
// ID of the proxy to use. Omit to leave unchanged, set to empty string to remove
// proxy.
@@ -548,13 +562,18 @@ func (r *BrowserUpdateParams) UnmarshalJSON(data []byte) error {
}
type BrowserListParams struct {
- // When true, includes soft-deleted browser sessions in the results alongside
- // active sessions.
+ // Deprecated: Use status=all instead. When true, includes soft-deleted browser
+ // sessions in the results alongside active sessions.
IncludeDeleted param.Opt[bool] `query:"include_deleted,omitzero" json:"-"`
// Maximum number of results to return. Defaults to 20, maximum 100.
Limit param.Opt[int64] `query:"limit,omitzero" json:"-"`
// Number of results to skip. Defaults to 0.
Offset param.Opt[int64] `query:"offset,omitzero" json:"-"`
+ // Filter sessions by status. "active" returns only active sessions (default),
+ // "deleted" returns only soft-deleted sessions, "all" returns both.
+ //
+ // Any of "active", "deleted", "all".
+ Status BrowserListParamsStatus `query:"status,omitzero" json:"-"`
paramObj
}
@@ -566,6 +585,16 @@ func (r BrowserListParams) URLQuery() (v url.Values, err error) {
})
}
+// Filter sessions by status. "active" returns only active sessions (default),
+// "deleted" returns only soft-deleted sessions, "all" returns both.
+type BrowserListParamsStatus string
+
+const (
+ BrowserListParamsStatusActive BrowserListParamsStatus = "active"
+ BrowserListParamsStatusDeleted BrowserListParamsStatus = "deleted"
+ BrowserListParamsStatusAll BrowserListParamsStatus = "all"
+)
+
type BrowserDeleteParams struct {
// Persistent browser identifier
PersistentID string `query:"persistent_id,required" json:"-"`
diff --git a/browser_test.go b/browser_test.go
index d0ab6f5..f0df76c 100644
--- a/browser_test.go
+++ b/browser_test.go
@@ -63,7 +63,7 @@ func TestBrowserNewWithOptionalParams(t *testing.T) {
}
}
-func TestBrowserGet(t *testing.T) {
+func TestBrowserGetWithOptionalParams(t *testing.T) {
t.Skip("Prism tests are disabled")
baseURL := "http://localhost:4010"
if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
@@ -76,7 +76,13 @@ func TestBrowserGet(t *testing.T) {
option.WithBaseURL(baseURL),
option.WithAPIKey("My API Key"),
)
- _, err := client.Browsers.Get(context.TODO(), "htzv5orfit78e1m2biiifpbv")
+ _, err := client.Browsers.Get(
+ context.TODO(),
+ "htzv5orfit78e1m2biiifpbv",
+ kernel.BrowserGetParams{
+ IncludeDeleted: kernel.Bool(true),
+ },
+ )
if err != nil {
var apierr *kernel.Error
if errors.As(err, &apierr) {
@@ -132,6 +138,7 @@ func TestBrowserListWithOptionalParams(t *testing.T) {
IncludeDeleted: kernel.Bool(true),
Limit: kernel.Int(1),
Offset: kernel.Int(0),
+ Status: kernel.BrowserListParamsStatusActive,
})
if err != nil {
var apierr *kernel.Error
From e79b73e03248ad6323ea57039e5d11f97854b036 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 18 Jan 2026 22:57:07 +0000
Subject: [PATCH 3/3] release: 0.27.0
---
.release-please-manifest.json | 2 +-
CHANGELOG.md | 15 +++++++++++++++
README.md | 2 +-
internal/version.go | 2 +-
4 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index caf5ca3..59acac4 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.26.0"
+ ".": "0.27.0"
}
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 039f057..40c01fd 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,20 @@
# Changelog
+## 0.27.0 (2026-01-18)
+
+Full Changelog: [v0.26.0...v0.27.0](https://github.com/kernel/kernel-go-sdk/compare/v0.26.0...v0.27.0)
+
+### Features
+
+* add manual dispatch trigger with optional PR number input ([b3020ea](https://github.com/kernel/kernel-go-sdk/commit/b3020eac3fb81e628345bffcab03e45e8556ebc1))
+* **dashboard:** add browser replays support for past browsers ([33f2a9c](https://github.com/kernel/kernel-go-sdk/commit/33f2a9cd0b5391bd058f6c74900c8d3731b3f990))
+
+
+### Bug Fixes
+
+* require CLI commands for all SDK methods ([8e3d9be](https://github.com/kernel/kernel-go-sdk/commit/8e3d9be2e555559533d9d935ce7e6a57c06bf29e))
+* update CLI coverage workflow to perform full SDK method enumeration ([23d4b9b](https://github.com/kernel/kernel-go-sdk/commit/23d4b9be60db33c3de40da6666e3c51ded15dba5))
+
## 0.26.0 (2026-01-17)
Full Changelog: [v0.25.0...v0.26.0](https://github.com/kernel/kernel-go-sdk/compare/v0.25.0...v0.26.0)
diff --git a/README.md b/README.md
index 9a24c47..6d76526 100644
--- a/README.md
+++ b/README.md
@@ -28,7 +28,7 @@ Or to pin the version:
```sh
-go get -u 'github.com/kernel/kernel-go-sdk@v0.26.0'
+go get -u 'github.com/kernel/kernel-go-sdk@v0.27.0'
```
diff --git a/internal/version.go b/internal/version.go
index dc72016..c2280fd 100644
--- a/internal/version.go
+++ b/internal/version.go
@@ -2,4 +2,4 @@
package internal
-const PackageVersion = "0.26.0" // x-release-please-version
+const PackageVersion = "0.27.0" // x-release-please-version