Skip to content

Enhance accessibility tree snapshot with more properties (#14643)#3128

Merged
kblok merged 1 commit intomasterfrom
implement-upstream-change-14643
Feb 12, 2026
Merged

Enhance accessibility tree snapshot with more properties (#14643)#3128
kblok merged 1 commit intomasterfrom
implement-upstream-change-14643

Conversation

@kblok
Copy link
Member

@kblok kblok commented Feb 12, 2026

Summary

Ports upstream Puppeteer PR #14643 which enhances the accessibility tree snapshot with additional properties and improves pruning logic.

Changes

  • New SerializedAXNode properties: Busy, Live, Atomic, Relevant, Errormessage, Details — exposing live region attributes, relationship attributes, and more from the CDP accessibility tree
  • Improved IsInteresting logic: Nodes with busy, live (non-off), modal, errormessage, details, or roledescription properties are no longer pruned when interestingOnly is enabled
  • Leaf node description check: Leaf nodes with a description (but no name) are now considered interesting and retained in the snapshot
  • Robust boolean parsing: Added helper methods to handle CDP boolean properties that may arrive as JSON numbers (e.g., booleanOrUndefined AX value types)

Files changed

  • SerializedAXNode.cs — 6 new properties, updated Equals/GetHashCode
  • AXNode.cs — New fields, updated constructor/IsInteresting/Serialize, added boolean parsing helpers
  • AccessibilityTests.cs — New test ShouldCaptureNewAccessibilityPropertiesAndNotPruneThem

Test plan

  • New test ShouldCaptureNewAccessibilityPropertiesAndNotPruneThem passes
  • All 22 accessibility tests pass (Chrome/CDP)

🤖 Generated with Claude Code

Port upstream puppeteer PR #14643 which adds new accessibility properties:
- Live region attributes: busy, live, atomic, relevant
- Relationship attributes: errormessage, details
- Modal state tracking in IsInteresting
- Leaf nodes with description are now considered interesting

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.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.

1 participant