Skip to content

feat(runner): tap, swipe and fill in runner actions sequences (AGE-5427) - #1642

Merged
Erzhan Torokulov (erzhtor) merged 2 commits into
mainfrom
erzhan/age-5427-runner-actions-mobile
Oct 5, 2026
Merged

Erzhan Torokulov (erzhtor) merged 2 commits into
mainfrom
erzhan/age-5427-runner-actions-mobile

Conversation

@erzhtor

@erzhtor Erzhan Torokulov (erzhtor) commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Relates to AGE-5427. Platform side: qawolf/platform#34509 (merged and deployed). Follows #1638.

Overview of Changes

After #1638, runner actions said it takes "the same actions runner act takes", but it checked each step against the browser-only schema, so tap, swipe and fill were refused locally before any request went out. The platform now accepts them in sequences, so this PR:

  • validates each step with parseRunnerAction, the same check runner act uses (and drops the now-unused parseBrowserAction)
  • reports the new action-not-supported-on-browser step reason (exit code 2) when a browser runner refuses a mobile step; with --continue-on-failure the rest still runs
  • adds mobile examples to runner actions --help

The description is unchanged, because it is now accurate.

Contracts 0.81.0 (separate commit): the first published version with both the mobile sequence contract and the screenshot baseline commands that 0.77.0 brought in, so no command is dropped. It also brings two changes from other platform PRs that the CLI picks up with any bump:

  • every contract now carries annotationJustifications, so the stand-in contracts in tests use a shared standInAnnotationJustifications fixture
  • issue.update takes a backlog status, and run.get attempts gain canceledReason (regenerated in run-results.md)

Testing

bun run typecheck && bun run lint && bun run format:check && bun run knip && bun run test && bun run build

All pass, except 3 keychain tests that also fail on main on this machine. New tests are in performActions.touchscreen.test.ts.

Checklist

  • Changes follow the code style of this project
  • Self-review completed
  • Tests added/updated (or not applicable)
  • No breaking changes (or described below)

runner actions validated each step as a browser action, so a sequence
refused tap, swipe and fill locally even though its description says it
takes the same actions as runner act. api-contracts 0.74.0 widens the
sequence contract to every runner action and adds the
action-not-supported-on-browser step reason.

bun.lock is left for after 0.74.0 publishes.
@erzhtor
Erzhan Torokulov (erzhtor) force-pushed the erzhan/age-5427-runner-actions-mobile branch from 4009c15 to 02bc353 Compare October 2, 2026 08:35
0.81.0 is the first published version with both the runner actions
sequence contract and the screenshot baseline commands 0.77.0 carried.

It also makes every contract carry annotationJustifications and adds a
backlog issue status, so the stand-in contracts in tests carry
justifications and the issue.update flag test lists backlog.
@erzhtor
Erzhan Torokulov (erzhtor) marked this pull request as ready for review October 5, 2026 17:37
@erzhtor
Erzhan Torokulov (erzhtor) deleted the erzhan/age-5427-runner-actions-mobile branch October 5, 2026 17:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants