0.87.0

playcanvas/engine0.87.0Sep 25, 2026by takahirom

Upgrading?

AI Summary

Non-AI time per step is drastically reduced by minimizing view hierarchy fetches, reading elements from a single fetch per step.

Key Highlights

  • Screen reading time reduced from ~1.4s to 0.2-0.4s per step
  • Hierarchy fetches reduced from 11-13 to 3-4 per step
  • Elements, UI tree, and focused element now come from a single hierarchy fetch

New Features

  • Optimized hierarchy fetching for faster execution

Full Release Notes

Each step now reads the device screen with far fewer view hierarchy fetches, which cuts non-AI time per step. On an Android emulator, reading the screen went from about 1.4s to 0.2–0.4s per step, and hierarchy fetches went from 11–13 to 3–4 per step.

## Fewer Hierarchy Fetches per Step (#452, #453)

- Reads no longer check the connection with an extra hierarchy fetch first. A read that fails reconnects and is retried. Actions keep the up-front check, so a tap or key press that failed part way is not repeated blindly.
- A step's elements, UI tree and focused element now come from one hierarchy fetch, so they always describe the same frame.

## What's Changed
* Reconnect on a failed device read instead of probing before every read by @takahirom in https://github.com/takahirom/arbigent/pull/452
* Read a step's elements, tree and focus from one hierarchy fetch by @takahirom in https://github.com/takahirom/arbigent/pull/453


**Full Changelog**: https://github.com/takahirom/arbigent/compare/0.86.0...0.87.0

Related Repositories