Skip to content

Commit 2923138

Browse files
author
semantic-release
committed
chore: release 0.5.1
1 parent 505eb05 commit 2923138

File tree

2 files changed

+51
-1
lines changed

2 files changed

+51
-1
lines changed

CHANGELOG.md

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,56 @@
11
# CHANGELOG
22

33

4+
## v0.5.1 (2026-03-17)
5+
6+
### Bug Fixes
7+
8+
- Browser capture end-to-end pipeline
9+
([#15](https://github.com/OpenAdaptAI/openadapt-capture/pull/15),
10+
[`505eb05`](https://github.com/OpenAdaptAI/openadapt-capture/commit/505eb05a2153a462e86ed2347ed2f41f3bc00562))
11+
12+
* fix: browser capture end-to-end pipeline
13+
14+
Three bugs prevented browser events from being captured and parsed:
15+
16+
1. background.js only relayed DOM_EVENT messages but the content script sends USER_EVENT — events
17+
were silently dropped.
18+
19+
2. background.js handleSetMode only read message.payload?.mode but the recorder sends flat {mode:
20+
"record"} — mode was never set to "record" so the content script never attached record listeners.
21+
22+
3. The BrowserEventType enum used "browser.click" prefix format but the content script sends raw DOM
23+
event names ("click", "keydown", etc.). This was an artificial convention introduced during the
24+
port from legacy OpenAdapt that was never tested end-to-end. Legacy used raw names throughout.
25+
26+
Changes: - background.js: add USER_EVENT relay, fix SET_MODE format handling - browser_events.py:
27+
change enum values to raw DOM names matching the content script and legacy OpenAdapt, add
28+
BrowserMouseMoveEvent - capture.py: add _parse_element_ref() and rewrite _convert_browser_event()
29+
to handle actual content-script message format including the recorder's {"message": <raw>}
30+
wrapper, add browser_events() and browser_event_count to CaptureSession - cli.py: add
31+
--browser-events flag to record, show browser event breakdown in info command - tests: add 15 e2e
32+
tests covering both DB roundtrip and raw content-script format parsing
33+
34+
Verified with live recording: 84/84 events captured and parsed from Chrome extension on Hacker News.
35+
36+
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
37+
38+
* fix: clean up stale docstring and unused import
39+
40+
* fix: address review feedback
41+
42+
- Replace bare except with debug logging in _convert_browser_event - Move lazy imports to module
43+
level (BoundingBox, ElementState, etc.) - Remove unused imports (pytest, Recording) from test file
44+
- Update test class names to reflect structure tested, not removed format - Fix stale docstring in
45+
_parse_element_ref
46+
47+
* fix: remove unused BrowserEventType import from tests
48+
49+
---------
50+
51+
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
52+
53+
454
## v0.5.0 (2026-03-04)
555

656
### Features

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "openadapt-capture"
3-
version = "0.5.0"
3+
version = "0.5.1"
44
description = "GUI interaction capture - platform-agnostic event streams with time-aligned media"
55
readme = "README.md"
66
requires-python = ">=3.10"

0 commit comments

Comments
 (0)