From 2291135c03c93f1e7469014bc44d001f985c6e83 Mon Sep 17 00:00:00 2001 From: Sayan Samanta Date: Wed, 3 Jun 2026 16:25:05 -0700 Subject: [PATCH 1/2] Switch telemetry categories to opt-in with a lightweight default set Selection is now opt-in: a provided browser config captures exactly the categories set to enabled:true, and anything omitted is off (previously an omitted category defaulted to on). A request that enables nothing clears the configuration. The default set (used when no browser config is given) drops the CDP categories and screenshot, leaving the lightweight operational signals (control, connection, system, captcha). "Just turn it on" therefore never starts the CDP collector or emits high-volume streams; CDP and screenshots are opt-in. Reverts the opt-out fill from #268 (not yet consumed by anything). Co-authored-by: Cursor --- server/cmd/api/api/telemetry.go | 12 +- server/cmd/api/api/telemetry_test.go | 66 ++- server/lib/events/event.go | 9 +- server/lib/oapi/oapi.go | 718 +++++++++++++------------ server/lib/telemetry/telemetry_test.go | 10 +- server/openapi.yaml | 37 +- 6 files changed, 425 insertions(+), 427 deletions(-) diff --git a/server/cmd/api/api/telemetry.go b/server/cmd/api/api/telemetry.go index 8f1f905e..4ea50992 100644 --- a/server/cmd/api/api/telemetry.go +++ b/server/cmd/api/api/telemetry.go @@ -199,8 +199,9 @@ func containsCategory(cats []oapi.TelemetryEventCategory, target oapi.TelemetryE } // telemetryConfigFromOAPI converts an *oapi.BrowserTelemetryConfig to a telemetry.TelemetryConfig. -// An omitted category resolves to its default state (events.DefaultCategories). Returns the -// config, whether every configurable category ended up disabled (stop signal), and any error. +// Selection is opt-in: with no browser config the default set is used; with a browser config only +// the categories explicitly enabled there are captured (anything omitted is off). Returns the +// config, whether the result is empty (stop signal), and any error. func telemetryConfigFromOAPI(cfg *oapi.BrowserTelemetryConfig) (telemetry.TelemetryConfig, bool, error) { if cfg == nil || cfg.Browser == nil { // No per-category settings: resolve to the explicit default set so the @@ -209,14 +210,9 @@ func telemetryConfigFromOAPI(cfg *oapi.BrowserTelemetryConfig) (telemetry.Teleme return telemetry.TelemetryConfig{Categories: cats}, false, nil } - defaultOn := categorySetOf(events.DefaultCategories) cats := make([]oapi.TelemetryEventCategory, 0, len(events.UserCategories)) for _, f := range categoryFields(cfg.Browser) { - on := defaultOn[f.category] - if f.config != nil && f.config.Enabled != nil { - on = *f.config.Enabled - } - if on { + if f.config != nil && f.config.Enabled != nil && *f.config.Enabled { cats = append(cats, f.category) } } diff --git a/server/cmd/api/api/telemetry_test.go b/server/cmd/api/api/telemetry_test.go index 75466304..126e9e63 100644 --- a/server/cmd/api/api/telemetry_test.go +++ b/server/cmd/api/api/telemetry_test.go @@ -48,68 +48,58 @@ func TestTelemetryConfigFromOAPI(t *testing.T) { assert.ElementsMatch(t, events.DefaultCategories, cfg.Categories) }) - t.Run("omitted enabled resolves to default state", func(t *testing.T) { + t.Run("opt-in captures exactly the enabled categories", func(t *testing.T) { + tr := true cfg, allDisabled, err := telemetryConfigFromOAPI(&oapi.BrowserTelemetryConfig{ Browser: &oapi.BrowserTelemetryCategoriesConfig{ - Console: &oapi.BrowserTelemetryCategoryConfig{}, // Enabled nil → default state (on) + Console: &oapi.BrowserTelemetryCategoryConfig{Enabled: &tr}, + Network: &oapi.BrowserTelemetryCategoryConfig{Enabled: &tr}, }, }) require.NoError(t, err) assert.False(t, allDisabled) - assert.Contains(t, cfg.Categories, events.Console) - // Screenshot is off by default and must stay off when unspecified. - assert.NotContains(t, cfg.Categories, events.Screenshot) + assert.ElementsMatch(t, []oapi.TelemetryEventCategory{events.Console, events.Network}, cfg.Categories) }) - t.Run("screenshot is opt-in", func(t *testing.T) { + t.Run("omitted category is off (opt-in)", func(t *testing.T) { tr := true cfg, _, err := telemetryConfigFromOAPI(&oapi.BrowserTelemetryConfig{ Browser: &oapi.BrowserTelemetryCategoriesConfig{ - Screenshot: &oapi.BrowserTelemetryCategoryConfig{Enabled: &tr}, + Console: &oapi.BrowserTelemetryCategoryConfig{Enabled: &tr}, }, }) require.NoError(t, err) - assert.Contains(t, cfg.Categories, events.Screenshot) + // Only console is enabled; default-bundle categories are not added in. + assert.Equal(t, []oapi.TelemetryEventCategory{events.Console}, cfg.Categories) }) - t.Run("all configurable categories false returns allDisabled=true", func(t *testing.T) { + t.Run("enabled:nil is treated as off", func(t *testing.T) { _, allDisabled, err := telemetryConfigFromOAPI(&oapi.BrowserTelemetryConfig{ - Browser: allCategoriesDisabled(), + Browser: &oapi.BrowserTelemetryCategoriesConfig{ + Console: &oapi.BrowserTelemetryCategoryConfig{}, // Enabled nil → off + }, }) require.NoError(t, err) - assert.True(t, allDisabled) + assert.True(t, allDisabled, "a browser config that enables nothing clears telemetry") }) - t.Run("disabling only the default-on categories does not clear", func(t *testing.T) { - f := false - _, allDisabled, err := telemetryConfigFromOAPI(&oapi.BrowserTelemetryConfig{ + t.Run("screenshot is opt-in", func(t *testing.T) { + tr := true + cfg, _, err := telemetryConfigFromOAPI(&oapi.BrowserTelemetryConfig{ Browser: &oapi.BrowserTelemetryCategoriesConfig{ - Console: &oapi.BrowserTelemetryCategoryConfig{Enabled: &f}, - Network: &oapi.BrowserTelemetryCategoryConfig{Enabled: &f}, - Page: &oapi.BrowserTelemetryCategoryConfig{Enabled: &f}, - Interaction: &oapi.BrowserTelemetryCategoryConfig{Enabled: &f}, + Screenshot: &oapi.BrowserTelemetryCategoryConfig{Enabled: &tr}, }, }) require.NoError(t, err) - // control/connection/system/captcha remain at their default-on state. - assert.False(t, allDisabled) + assert.Contains(t, cfg.Categories, events.Screenshot) }) - t.Run("mixed enabled flags resolve unspecified to default", func(t *testing.T) { - tr, f := true, false - cfg, allDisabled, err := telemetryConfigFromOAPI(&oapi.BrowserTelemetryConfig{ - Browser: &oapi.BrowserTelemetryCategoriesConfig{ - Console: &oapi.BrowserTelemetryCategoryConfig{Enabled: &tr}, - Network: &oapi.BrowserTelemetryCategoryConfig{Enabled: &f}, - }, + t.Run("empty browser config clears", func(t *testing.T) { + _, allDisabled, err := telemetryConfigFromOAPI(&oapi.BrowserTelemetryConfig{ + Browser: &oapi.BrowserTelemetryCategoriesConfig{}, }) require.NoError(t, err) - assert.False(t, allDisabled) - // network off; screenshot default off; the other 7 default-on categories remain. - assert.Contains(t, cfg.Categories, events.Console) - assert.NotContains(t, cfg.Categories, events.Network) - assert.NotContains(t, cfg.Categories, events.Screenshot) - assert.Len(t, cfg.Categories, len(events.DefaultCategories)-1) + assert.True(t, allDisabled) }) } @@ -373,7 +363,15 @@ func TestTelemetryCollectorFailureLeavesConfigUnchanged(t *testing.T) { svc := newTestService(t, newMockRecordManager()) svc.cdpMonitor = &failingCdpMonitor{} - resp, err := svc.PutTelemetry(ctx, oapi.PutTelemetryRequestObject{}) + // Enable a CDP category so the (failing) collector start is attempted. + tr := true + resp, err := svc.PutTelemetry(ctx, oapi.PutTelemetryRequestObject{ + Body: &oapi.BrowserTelemetryConfig{ + Browser: &oapi.BrowserTelemetryCategoriesConfig{ + Console: &oapi.BrowserTelemetryCategoryConfig{Enabled: &tr}, + }, + }, + }) require.NoError(t, err) assert.IsType(t, oapi.PutTelemetry500JSONResponse{}, resp) assert.False(t, svc.telemetrySession.Active(), "failed collector start must not leave a session active") diff --git a/server/lib/events/event.go b/server/lib/events/event.go index cdffc74c..fd27636d 100644 --- a/server/lib/events/event.go +++ b/server/lib/events/event.go @@ -41,13 +41,10 @@ var UserCategories = []oapi.TelemetryEventCategory{ } // DefaultCategories is captured when the caller enables telemetry without -// per-category settings: every configurable category except Screenshot, which -// is high-volume base64 image data and therefore opt-in. +// per-category settings: the lightweight operational signals. CDP categories +// (console/network/page/interaction) and screenshot are excluded so the default +// never starts the CDP collector or emits high-volume streams; they are opt-in. var DefaultCategories = []oapi.TelemetryEventCategory{ - Console, - Network, - Page, - Interaction, Control, Connection, System, diff --git a/server/lib/oapi/oapi.go b/server/lib/oapi/oapi.go index e5a1fa64..f73fc1a1 100644 --- a/server/lib/oapi/oapi.go +++ b/server/lib/oapi/oapi.go @@ -3011,11 +3011,11 @@ type BrowserTelemetryCategoriesConfig struct { // BrowserTelemetryCategoryConfig Configuration for a single telemetry category. type BrowserTelemetryCategoryConfig struct { - // Enabled Whether this category is captured. In PUT requests, omitting this field leaves the category at its default state (every category on except `screenshot`). In PATCH requests, omitting this field (or sending an empty object `{}`) is a no-op; the category retains its current state. To enable or disable a category via PATCH, you must send an explicit `true` or `false`. + // Enabled Whether this category is captured. In PUT requests selection is opt-in: omitting this field (or the whole category) leaves the category off, so a PUT captures exactly the categories set to true. In PATCH requests, omitting this field (or sending an empty object `{}`) is a no-op; the category retains its current state. To enable or disable a category via PATCH, you must send an explicit `true` or `false`. Enabled *bool `json:"enabled,omitempty"` } -// BrowserTelemetryConfig Telemetry configuration for a browser. Per-category capture settings. Omit the browser key (or send an empty object) to capture the default set: every category except `screenshot`, which is heavy and opt-in. Within `browser`, omit a category to leave it at its default state, or set enabled true/false to override. Set every configurable category to enabled: false to clear the telemetry configuration. The `monitor` category (CDP collector health) is not configurable here; it flows automatically whenever a CDP category is captured. +// BrowserTelemetryConfig Telemetry configuration for a browser. Selection is opt-in. Omit the browser key (or send an empty object) to capture the default set: lightweight operational signals (control, connection, system, captcha). Within `browser`, only the categories you set enabled: true are captured; anything omitted is off. The CDP categories (console, network, page, interaction) and `screenshot` are off by default and must be opted into. A `browser` config with nothing enabled clears the telemetry configuration. The `monitor` category (CDP collector health) is not configurable here; it flows automatically whenever a CDP category is captured. type BrowserTelemetryConfig struct { // Browser Per-category telemetry capture settings for browser events. Browser *BrowserTelemetryCategoriesConfig `json:"browser,omitempty"` @@ -3643,7 +3643,7 @@ type TelemetryState struct { // AppliedAt Wall-clock time at which the current configuration was applied. Omitted when telemetry is not configured. AppliedAt *time.Time `json:"applied_at,omitempty"` - // Config Telemetry configuration for a browser. Per-category capture settings. Omit the browser key (or send an empty object) to capture the default set: every category except `screenshot`, which is heavy and opt-in. Within `browser`, omit a category to leave it at its default state, or set enabled true/false to override. Set every configurable category to enabled: false to clear the telemetry configuration. The `monitor` category (CDP collector health) is not configurable here; it flows automatically whenever a CDP category is captured. + // Config Telemetry configuration for a browser. Selection is opt-in. Omit the browser key (or send an empty object) to capture the default set: lightweight operational signals (control, connection, system, captcha). Within `browser`, only the categories you set enabled: true are captured; anything omitted is off. The CDP categories (console, network, page, interaction) and `screenshot` are off by default and must be opted into. A `browser` config with nothing enabled clears the telemetry configuration. The `monitor` category (CDP collector health) is not configurable here; it flows automatically whenever a CDP category is captured. Config BrowserTelemetryConfig `json:"config"` // Seq Process-monotonic sequence number of the last published event. Does not reset across configuration changes. @@ -18793,361 +18793,363 @@ func (sh *strictHandler) StreamTelemetryEvents(w http.ResponseWriter, r *http.Re // Base64 encoded, gzipped, json marshaled Swagger object var swaggerSpec = []string{ - "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", - "ovYuHZF4snSj/98AAAD///KQFumjvQEA", + "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", + "Q3Zw4ZDEo6Ub/f8GAAD//0eOya94vgEA", } // GetSwagger returns the content of the embedded swagger specification file diff --git a/server/lib/telemetry/telemetry_test.go b/server/lib/telemetry/telemetry_test.go index 9258c2ef..18d2929d 100644 --- a/server/lib/telemetry/telemetry_test.go +++ b/server/lib/telemetry/telemetry_test.go @@ -24,7 +24,9 @@ func newTestEventStream(t *testing.T, capacity int) *events.EventStream { func newTestTelemetrySession(t *testing.T) *TelemetrySession { t.Helper() ts := NewTelemetrySession(newTestEventStream(t, 100)) - ts.Start("test-session", TelemetryConfig{}) + // Capture all user categories so publish-mechanics tests are independent of + // the default-set composition. + ts.Start("test-session", TelemetryConfig{Categories: events.UserCategories}) return ts } @@ -55,7 +57,7 @@ func TestTelemetrySession(t *testing.T) { const total = goroutines * eventsEach ts := NewTelemetrySession(newTestEventStream(t, total)) - ts.Start("test-concurrent", TelemetryConfig{}) + ts.Start("test-concurrent", TelemetryConfig{Categories: events.UserCategories}) reader := ts.NewReader(0) var wg sync.WaitGroup @@ -149,7 +151,7 @@ func TestTelemetrySession(t *testing.T) { t.Run("start_sets_telemetry_session_id_in_source_metadata", func(t *testing.T) { ts := newTestTelemetrySession(t) - ts.Start("test-uuid", TelemetryConfig{}) + ts.Start("test-uuid", TelemetryConfig{Categories: events.UserCategories}) reader := ts.NewReader(0) ts.Publish(events.Event{Type: "page.navigation", Category: events.Page, Source: oapi.BrowserEventSource{Kind: oapi.Cdp}, Ts: 1}) @@ -163,7 +165,7 @@ func TestTelemetrySession(t *testing.T) { t.Run("data_unchanged_when_telemetry_session_id_in_metadata", func(t *testing.T) { ts := newTestTelemetrySession(t) - ts.Start("merge-session", TelemetryConfig{}) + ts.Start("merge-session", TelemetryConfig{Categories: events.UserCategories}) reader := ts.NewReader(0) ts.Publish(events.Event{ diff --git a/server/openapi.yaml b/server/openapi.yaml index ee2d4f5d..017f99da 100644 --- a/server/openapi.yaml +++ b/server/openapi.yaml @@ -1298,9 +1298,10 @@ paths: summary: Set telemetry configuration description: > Sets the telemetry configuration. Returns 201 if telemetry was not - previously configured; returns 200 if it was. Setting every configurable - category to enabled: false clears the configuration; this is idempotent - when telemetry is not configured. + previously configured; returns 200 if it was. Selection is opt-in: a + request that enables no categories (a browser config with nothing set to + true, or every category disabled) clears the configuration; this is + idempotent when telemetry is not configured. operationId: putTelemetry requestBody: required: false @@ -1565,14 +1566,16 @@ components: BrowserTelemetryConfig: type: object description: > - Telemetry configuration for a browser. Per-category capture settings. - Omit the browser key (or send an empty object) to capture the default - set: every category except `screenshot`, which is heavy and opt-in. - Within `browser`, omit a category to leave it at its default state, or - set enabled true/false to override. Set every configurable category to - enabled: false to clear the telemetry configuration. The `monitor` - category (CDP collector health) is not configurable here; it flows - automatically whenever a CDP category is captured. + Telemetry configuration for a browser. Selection is opt-in. Omit the + browser key (or send an empty object) to capture the default set: + lightweight operational signals (control, connection, system, captcha). + Within `browser`, only the categories you set enabled: true are + captured; anything omitted is off. The CDP categories (console, network, + page, interaction) and `screenshot` are off by default and must be + opted into. A `browser` config with nothing enabled clears the + telemetry configuration. The `monitor` category (CDP collector health) + is not configurable here; it flows automatically whenever a CDP category + is captured. properties: browser: $ref: "#/components/schemas/BrowserTelemetryCategoriesConfig" @@ -1616,12 +1619,12 @@ components: enabled: type: boolean description: > - Whether this category is captured. In PUT requests, omitting this field - leaves the category at its default state (every category on except - `screenshot`). In PATCH requests, omitting this field (or sending an - empty object `{}`) is a no-op; the category retains its current state. - To enable or disable a category via PATCH, you must send an explicit - `true` or `false`. + Whether this category is captured. In PUT requests selection is opt-in: + omitting this field (or the whole category) leaves the category off, so + a PUT captures exactly the categories set to true. In PATCH requests, + omitting this field (or sending an empty object `{}`) is a no-op; the + category retains its current state. To enable or disable a category via + PATCH, you must send an explicit `true` or `false`. additionalProperties: false BrowserCallStack: type: object From 71d3c047998c8834084b97ce8d6e8e8a004bbd81 Mon Sep 17 00:00:00 2001 From: Sayan Samanta Date: Thu, 4 Jun 2026 12:01:05 -0700 Subject: [PATCH 2/2] test: telemetry ignores unknown categories (forward-compat) Pin the forward-compatibility guarantee that a newer control plane can send a telemetry category this image does not yet know: the strict handler decodes the body with encoding/json (no DisallowUnknownFields), so unknown categories are ignored, not rejected, and known categories still apply. Co-authored-by: Cursor --- server/cmd/api/api/telemetry_test.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/server/cmd/api/api/telemetry_test.go b/server/cmd/api/api/telemetry_test.go index 126e9e63..258b6987 100644 --- a/server/cmd/api/api/telemetry_test.go +++ b/server/cmd/api/api/telemetry_test.go @@ -2,6 +2,7 @@ package api import ( "context" + "encoding/json" "errors" "testing" @@ -103,6 +104,28 @@ func TestTelemetryConfigFromOAPI(t *testing.T) { }) } +func TestPutTelemetryIgnoresUnknownCategory(t *testing.T) { + // Forward-compat: a newer control plane may send a telemetry category this + // image does not yet know. The strict handler decodes the body with + // encoding/json (no DisallowUnknownFields), so an unknown category must be + // ignored, not rejected, and known categories must still apply. + ctx := context.Background() + svc := newTestService(t, newMockRecordManager()) + + var body oapi.PutTelemetryJSONRequestBody + raw := []byte(`{"browser":{"console":{"enabled":true},"future_category":{"enabled":true}}}`) + require.NoError(t, json.Unmarshal(raw, &body)) + + resp, err := svc.PutTelemetry(ctx, oapi.PutTelemetryRequestObject{Body: &body}) + require.NoError(t, err) + r201, ok := resp.(oapi.PutTelemetry201JSONResponse) + require.True(t, ok, "expected 201, got %T", resp) + require.NotNil(t, r201.Config.Browser) + require.NotNil(t, r201.Config.Browser.Console) + require.NotNil(t, r201.Config.Browser.Console.Enabled) + assert.True(t, *r201.Config.Browser.Console.Enabled, "known category should be captured") +} + func TestPutTelemetry(t *testing.T) { ctx := context.Background()