Skip to content

Conversation

@seanmcguire12
Copy link
Member

@seanmcguire12 seanmcguire12 commented Dec 5, 2025

why

  • to make this util available, but with a cautionary warning that extract() usage is the stable alternative

what changed

  • exported getAccessibilityTree() and its return type through index.ts

Summary by cubic

Expose getAccessibilityTree() in the public API for troubleshooting the AX tree, and export its TreeResult type. The helper is marked deprecated; prefer extract() for supported usage.

Written for commit 01f43da. Summary will update automatically on new commits.

@changeset-bot
Copy link

changeset-bot bot commented Dec 5, 2025

🦋 Changeset detected

Latest commit: 01f43da

The changes in this PR will be included in the next version bump.

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 3 files

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Dec 5, 2025

Greptile Overview

Greptile Summary

Exports getAccessibilityTree() utility function as an escape hatch for troubleshooting accessibility tree retrieval, with appropriate deprecation warnings recommending users prefer extract() for stable usage.

  • Added TreeResult type export for proper typing of the return value
  • Added @deprecated JSDoc comment in lib/a11y/utils.ts to warn developers
  • Added deprecation comment at the export site in lib/index.ts

Confidence Score: 5/5

  • This PR is safe to merge - it simply exposes an existing internal utility with appropriate deprecation warnings.
  • The changes are minimal and well-documented: adds JSDoc deprecation to an existing function and exports it along with its return type. No logic changes, no breaking changes to existing functionality.
  • No files require special attention.

Important Files Changed

File Analysis

Filename Score Overview
.changeset/whole-ducks-yell.md 5/5 Standard changeset file for patch release documenting the getAccessibilityTree() export.
lib/a11y/utils.ts 5/5 Added @deprecated JSDoc to getAccessibilityTree() warning users to prefer extract() for stable usage.
lib/index.ts 5/5 Exports getAccessibilityTree and TreeResult type with deprecation warning. Function requires StagehandPage which is not publicly exported, limiting external usability.

Sequence Diagram

sequenceDiagram
    participant User
    participant Stagehand
    participant getAccessibilityTree
    participant CDP as Chrome DevTools Protocol

    User->>Stagehand: import { getAccessibilityTree }
    Note over User: Deprecated - prefer extract()
    User->>getAccessibilityTree: Call with StagehandPage, logger
    getAccessibilityTree->>CDP: Enable Accessibility domain
    getAccessibilityTree->>CDP: Accessibility.getFullAXTree
    CDP-->>getAccessibilityTree: AXNode[]
    getAccessibilityTree->>getAccessibilityTree: Build hierarchical tree
    getAccessibilityTree-->>User: TreeResult
Loading

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2 files reviewed, no comments

Edit Code Review Agent Settings | Greptile

@seanmcguire12 seanmcguire12 merged commit 2f71b02 into v2 Dec 5, 2025
15 of 16 checks passed
@github-actions github-actions bot mentioned this pull request Dec 5, 2025
seanmcguire12 pushed a commit that referenced this pull request Dec 5, 2025
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to v2, this PR will
be updated.


# Releases
## @browserbasehq/[email protected]

### Patch Changes

- [#1275](#1275)
[`a372b3c`](a372b3c)
Thanks [@miguelg719](https://github.com/miguelg719)! - Remove process
exit on signal handler

- [#1143](#1143)
[`fc06d40`](fc06d40)
Thanks [@seanmcguire12](https://github.com/seanmcguire12)! - add logger
param to external aisdk client

- [#1137](#1137)
[`2dbac99`](2dbac99)
Thanks [@miguelg719](https://github.com/miguelg719)! - Add haiku 4.5
computer use support

- [#1116](#1116)
[`b419fc3`](b419fc3)
Thanks [@tkattkat](https://github.com/tkattkat)! - patch stagehand agent
api support

- [#1362](#1362)
[`f26333e`](f26333e)
Thanks [@seanmcguire12](https://github.com/seanmcguire12)! - use CDP to
find scrollable nodes instead of injected JS

- [#1125](#1125)
[`cbff109`](cbff109)
Thanks [@tkattkat](https://github.com/tkattkat)! - update cua agents key
& system prompt handling

- [#1363](#1363)
[`223e158`](223e158)
Thanks [@seanmcguire12](https://github.com/seanmcguire12)! - add
causedBy to StagehandDefaultError

- [#1123](#1123)
[`f426ba5`](f426ba5)
Thanks [@tkattkat](https://github.com/tkattkat)! - Add pageUrl &
timestamp to agent actions

- [#1365](#1365)
[`2f71b02`](2f71b02)
Thanks [@seanmcguire12](https://github.com/seanmcguire12)! - export
getAccessibilityTree()

- [#1366](#1366)
[`e098b0d`](e098b0d)
Thanks [@miguelg719](https://github.com/miguelg719)! - Update finding
scrollable nodes using CDP

## @browserbasehq/[email protected]

### Patch Changes

- Updated dependencies
\[[`a372b3c`](a372b3c),
[`fc06d40`](fc06d40),
[`2dbac99`](2dbac99),
[`b419fc3`](b419fc3),
[`f26333e`](f26333e),
[`cbff109`](cbff109),
[`223e158`](223e158),
[`f426ba5`](f426ba5),
[`2f71b02`](2f71b02),
[`e098b0d`](e098b0d)]:
    -   @browserbasehq/[email protected]

## @browserbasehq/[email protected]

### Patch Changes

- Updated dependencies
\[[`a372b3c`](a372b3c),
[`fc06d40`](fc06d40),
[`2dbac99`](2dbac99),
[`b419fc3`](b419fc3),
[`f26333e`](f26333e),
[`cbff109`](cbff109),
[`223e158`](223e158),
[`f426ba5`](f426ba5),
[`2f71b02`](2f71b02),
[`e098b0d`](e098b0d)]:
    -   @browserbasehq/[email protected]


<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Publish Stagehand 2.5.3 and bump evals (1.1.3) and examples (1.0.12).
Improves stability, CDP-based scrolling, and adds better logging and
error context.

- **New Features**
  - Haiku 4.5 computer-use support.
  - Export getAccessibilityTree().
  - Logger param for the external AISDK client.
  - Page URL and timestamp on agent actions.
  - causedBy on StagehandDefaultError for richer error context.

- **Bug Fixes**
  - Detect scrollable nodes via CDP (removed injected JS).
  - Refined CDP scrollable node detection.
  - Do not exit the process on signal handler.
  - Patch agent API support and update CUA key/system prompt handling.

<sup>Written for commit 6b62062.
Summary will update automatically on new commits.</sup>

<!-- End of auto-generated description by cubic. -->

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants