Phase 1: Foundation
Integrate openadapt-capture for real recording and replay functionality.
Goals
- Real recording: WorkflowRecorder uses openadapt-capture to record actual GUI events
- Real replay: WorkflowExecutor replays recordings with action execution
- Parameter substitution: Replace literal values (file paths, coordinates) with parameters
- Basic testing: Comprehensive test suite for core functionality
Tasks
1. Integrate openadapt-capture Recording
Files: workflows/base.py
2. Implement Replay from Recordings
Files: workflows/base.py, new playback/executor.py
3. Parameter Substitution
Example:
# Recording: Click file dialog, type "/absolute/path/to/file.html"
# Replay: Click file dialog, type parameters["html_path"]
Files: workflows/base.py, playback/parameter_substitution.py
4. Screenshot Workflow Real Implementation
Files: workflows/screenshot_workflow.py
5. Comprehensive Testing
Files: tests/test_recording.py, tests/test_replay.py, tests/test_screenshot_workflow.py
Dependencies
openadapt-capture: Already in dependencies
pyautogui or pynput: For action execution during replay
- Platform-specific automation libraries
Success Criteria
✅ Record a screenshot workflow manually
✅ Replay workflow to generate screenshots automatically
✅ Parameter substitution works (different HTML files)
✅ 95%+ test coverage
✅ Documentation updated
Estimated Effort
8-12 hours (recording integration, replay implementation, testing)
Related Issues
Resources
Phase 1: Foundation
Integrate openadapt-capture for real recording and replay functionality.
Goals
Tasks
1. Integrate openadapt-capture Recording
WorkflowRecorder.__enter__to startopenadapt_capture.Recorderrecordings/{workflow_name}/recording.dbWorkflowRecorder.__exit__to stop recorder and save manifestFiles:
workflows/base.py2. Implement Replay from Recordings
recording.dbFiles:
workflows/base.py, newplayback/executor.py3. Parameter Substitution
Example:
Files:
workflows/base.py,playback/parameter_substitution.py4. Screenshot Workflow Real Implementation
ScreenshotWorkflowto record actual browser automationFiles:
workflows/screenshot_workflow.py5. Comprehensive Testing
Files:
tests/test_recording.py,tests/test_replay.py,tests/test_screenshot_workflow.pyDependencies
openadapt-capture: Already in dependenciespyautoguiorpynput: For action execution during replaySuccess Criteria
✅ Record a screenshot workflow manually
✅ Replay workflow to generate screenshots automatically
✅ Parameter substitution works (different HTML files)
✅ 95%+ test coverage
✅ Documentation updated
Estimated Effort
8-12 hours (recording integration, replay implementation, testing)
Related Issues
Resources