Skip to content

feat: parallel testing support and screen recording for SDK#16

Merged
saikrishna321 merged 10 commits into
mainfrom
feat/parallel-testing-video-recording
Apr 15, 2026
Merged

feat: parallel testing support and screen recording for SDK#16
saikrishna321 merged 10 commits into
mainfrom
feat/parallel-testing-video-recording

Conversation

@saikrishna321
Copy link
Copy Markdown
Member

  • Add deviceUdid option to pin specific device per AppClaw instance
  • Add video option to record screen and embed mp4 in report
  • Auto-allocate unique ports (systemPort, mjpegServerPort, wdaLocalPort) per instance to prevent parallel test collisions
  • Pass appResolver through session connect to step runner
  • Improve screenshot handling: use vision pre-action shot (tap dot overlay) when available, fallback to post-action in DOM mode
  • Attach tapCoordinates and deviceScreenSize to step reports
  • Add test:e2e:android npm script and android e2e test file
  • Bump version to 0.1.7

saikrishna321 and others added 10 commits April 14, 2026 20:06
- Add `deviceUdid` option to pin specific device per AppClaw instance
- Add `video` option to record screen and embed mp4 in report
- Auto-allocate unique ports (systemPort, mjpegServerPort, wdaLocalPort) per instance to prevent parallel test collisions
- Pass appResolver through session connect to step runner
- Improve screenshot handling: use vision pre-action shot (tap dot overlay) when available, fallback to post-action in DOM mode
- Attach tapCoordinates and deviceScreenSize to step reports
- Add test:e2e:android npm script and android e2e test file
- Bump version to 0.1.7

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
…K tests

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
…iability

- Skip oscillation/repetition stuck signals for data-entry goals (PIN, timer, keypad) where ABAB hash alternation is expected during digit correction
- Force vision-locate for keypad digit/backspace selectors via new vision-tap-policy module (LLM normalized coords too inaccurate on dense pads)
- Run done-verification unconditionally (not just in vision+screenshot mode) so DOM-only runs also guard against hallucinated completion
- Add computePerceptionHash that fingerprints screenshots when DOM is empty, fixing stuck detection in vision-only mode
- Infer drag/swipe destination from direction keywords when vision returns zero/null coords for the target element
- Give each sub-goal the full MAX_STEPS budget instead of a proportional share
- Add Gemini 3.x thinking support (LLM_GEMINI_THINKING_LEVEL, LLM_GEMINI_INCLUDE_THOUGHTS) and expose reasoning-delta chunks in stream
- Tighten done/skip prompts across planner, agent loop, and tool description to require specific visible evidence

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

Co-authored-by: Srinivasan Sekar <srinivasan.sekar1990@gmail.com>
@saikrishna321 saikrishna321 merged commit 7d14e7b into main Apr 15, 2026
2 checks passed
@saikrishna321 saikrishna321 deleted the feat/parallel-testing-video-recording branch April 15, 2026 14:37
github-actions Bot pushed a commit that referenced this pull request Apr 16, 2026
## 1.0.0 (2026-04-16)

### Features

* integrate ai-sdk-ollama for LLM support and update configuration ([#9](#9)) ([c6794d7](c6794d7))
* parallel testing support and screen recording for SDK ([#16](#16)) ([7d14e7b](7d14e7b))
* strict playground tap matching, waitUntil pre-check, faster vision assert ([59b8c29](59b8c29))
* vision improvements — drag support, screenshot optimization, an… ([#7](#7)) ([8cfbcb4](8cfbcb4))

### Bug Fixes

* add semantic-release for automated versioning and npm publishing ([#19](#19)) ([66c73a6](66c73a6))
* ci ([#10](#10)) ([dfcd62f](dfcd62f))
* DOM locator resolution, vision assert parsing, and appium-mcp coordinate scaling ([9272c36](9272c36))
* read CLI version from package.json instead of hardcoded string ([#14](#14)) ([fcb3a64](fcb3a64))
* screenshot parsing ([e449a23](e449a23))
* scroll-aware stuck detection, press_enter tool, and post-done verification ([c03bbe4](c03bbe4))
* terminal UI ([294a780](294a780))
* terminal view ([42c0e75](42c0e75))
@github-actions
Copy link
Copy Markdown

🎉 This PR is included in version 1.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant