Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Accessibility inspect returns far-offscreen elements, blowing the budget on long pages

Offen
#178 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
48/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
macos, swift

Rechercherichtung

Start by reading the accessibility inspection implementation and how it applies scope and element budgets; the issue does not name specific files or tests. Compare the returned element bounds with the window’s visible rectangle and check how truncation selects elements. Done means inspection can prioritize or limit offscreen elements so visible, actionable elements survive truncation.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

What happened

Inspecting a Safari window showing Proton VPN's WireGuard config page returned
~25k tokens and was truncated ("truncated": true, "omitted": 964), dropping
elements the agent needed. The page has a 240-country server list below the
form.

The output includes a large number of elements that are nowhere near the
visible window (window is 1298x953):

{"id":"elem_52", "label":"Downloads",        "bounds":[337,-739,949,51]}
{"id":"elem_60", "label":"Download Android", "bounds":[384,-379,85,30]}
{"id":"elem_88", "label":"form",             "bounds":[337,96,949,7117]}
{"id":"elem_520","label":"Eritrea Eritrea 1 city", "bounds":[337,2733,949,41]}

Elements at y=-739 and y=2733 on a 953pt-tall window can't be acted on
without scrolling first, but they consume the element budget ahead of elements
that are actually visible.

scope doesn't help here

The documented workaround is to scope to a container, but the only container
that holds the form (elem_88, the form group) also contains the whole
country list — its bounds are 7117pt tall. Scoping returned the same
truncation.

Suggestion

Add a way to limit inspection to what's actionable:

  • a visible_only flag that drops elements whose bounds don't intersect the
    window's visible rect, or
  • a max_depth, or
  • spend the element budget on intersecting elements first, so truncation drops
    offscreen content rather than visible content.

For an agent driving a page, offscreen elements are close to useless: any
action on them is refused until scrolled into view anyway.

Workaround used

mode: pixels + point clicks, which is cheap but gives up element targeting
and can't do text insertion.

Environment

Desktop Tools 0.16.1, macOS 27, Safari 27

Vorherrschende Sprache
Swift
Sterne
0
Forks
0
Ø Merge
39 Min.
Gemergte PRs (30 T.)
144

Entwicklungsumgebung

Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus githubnext/desktop-tools

Alle Issues in githubnext/desktop-tools

Ähnliche Issues

Weitere Issues zu Swift

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.