Skip to content

Commit 06a2f7b

Browse files
feat: api: surface category field on browser telemetry events
1 parent 140eada commit 06a2f7b

23 files changed

Lines changed: 46 additions & 2 deletions

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 117
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-04da2c2ed5f83c54f59f6c148abcf013cc37282fde2b3b5b263dffab927d5ba2.yml
3-
openapi_spec_hash: 9b05d6877797e55051a83222fa7652d0
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-4bada2a5bdbde93018e5a1b1e80e134acbc5509cfdea94db6e4c5b799eba7b82.yml
3+
openapi_spec_hash: e0d541d480f5663b1e6bd3bb19a0fe61
44
config_hash: e0741f8035aea13f71e54e0fdb88eaa4

src/kernel/types/browsers/browser_console_error_event.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ class BrowserConsoleErrorEvent(BaseModel):
6565
Emitted from two distinct CDP sources with different data shapes. Runtime.consoleAPICalled (console.error calls) produces level, text, args, and stack_trace. Runtime.exceptionThrown (uncaught exceptions) produces text, line, column, source_url, and stack_trace. Fields not applicable to the source are absent.
6666
"""
6767

68+
category: Literal["console"]
69+
6870
source: BrowserEventSource
6971
"""Provenance metadata identifying which producer emitted the event."""
7072

src/kernel/types/browsers/browser_console_log_event.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,8 @@ class Data(BrowserEventContext):
4242
class BrowserConsoleLogEvent(BaseModel):
4343
"""A browser console log event (console.log, console.info, console.warn, etc.)."""
4444

45+
category: Literal["console"]
46+
4547
source: BrowserEventSource
4648
"""Provenance metadata identifying which producer emitted the event."""
4749

src/kernel/types/browsers/browser_interaction_click_event.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ class Data(BrowserEventContext):
3535
class BrowserInteractionClickEvent(BaseModel):
3636
"""A browser user click event captured via injected page script."""
3737

38+
category: Literal["interaction"]
39+
3840
source: BrowserEventSource
3941
"""Provenance metadata identifying which producer emitted the event."""
4042

src/kernel/types/browsers/browser_interaction_key_event.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ class Data(BrowserEventContext):
2929
class BrowserInteractionKeyEvent(BaseModel):
3030
"""A browser keyboard event captured via injected page script."""
3131

32+
category: Literal["interaction"]
33+
3234
source: BrowserEventSource
3335
"""Provenance metadata identifying which producer emitted the event."""
3436

src/kernel/types/browsers/browser_interaction_scroll_settled_event.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ class BrowserInteractionScrollSettledEvent(BaseModel):
3737
A browser scroll settled event emitted after scroll position stops changing, captured via injected page script.
3838
"""
3939

40+
category: Literal["interaction"]
41+
4042
source: BrowserEventSource
4143
"""Provenance metadata identifying which producer emitted the event."""
4244

src/kernel/types/browsers/browser_monitor_disconnected_event.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ class BrowserMonitorDisconnectedEvent(BaseModel):
2020
Telemetry events may be dropped until monitor_reconnected arrives. Treat any in-progress computed state (network_idle, page_layout_settled) as unreliable until then.
2121
"""
2222

23+
category: Literal["system"]
24+
2325
source: BrowserEventSource
2426
"""Provenance metadata identifying which producer emitted the event."""
2527

src/kernel/types/browsers/browser_monitor_init_failed_event.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ class Data(BaseModel):
1717
class BrowserMonitorInitFailedEvent(BaseModel):
1818
"""The CDP session could not be initialized."""
1919

20+
category: Literal["system"]
21+
2022
source: BrowserEventSource
2123
"""Provenance metadata identifying which producer emitted the event."""
2224

src/kernel/types/browsers/browser_monitor_reconnect_failed_event.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ class BrowserMonitorReconnectFailedEvent(BaseModel):
2323
The CDP connection to Chrome could not be re-established after exhausting all reconnection attempts. No further telemetry events will arrive on this session.
2424
"""
2525

26+
category: Literal["system"]
27+
2628
source: BrowserEventSource
2729
"""Provenance metadata identifying which producer emitted the event."""
2830

src/kernel/types/browsers/browser_monitor_reconnected_event.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ class BrowserMonitorReconnectedEvent(BaseModel):
1919
The CDP connection to Chrome was successfully re-established after a disconnection. Events emitted during the gap are lost. Computed state is reset, so navigation and network tracking restart fresh from this point.
2020
"""
2121

22+
category: Literal["system"]
23+
2224
source: BrowserEventSource
2325
"""Provenance metadata identifying which producer emitted the event."""
2426

0 commit comments

Comments
 (0)