Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

find focus/type dispatch: close its waived interaction guarantees (offscreen, parentOwnedTouchPoint, nonHittable, targetStability)

Aperta
#3,734 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
30/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
testing-qa

Direzione di ricerca

Start with the find-focus-dispatch row in packages/contracts/src/interaction-guarantees.ts and the cases in interaction-guarantees.test.ts, then read ADR 0011 for what a gap waiver must cite. Trace the focus/type dispatch seam to see where it uses centerOfRect instead of resolveInteractionTouchPoint, and where it skips the hittable and ref-stability checks the other paths run. Done means each of the four cells is classified as runtime, runner or delegated with a via that names the shared implementation, and each change has a red/green regression. Wait for #3727 to land before starting.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement ready-for-agent

Purpose

#3727 classifies the find <locator> focus / find <locator> type dispatch path as find-focus-dispatch in packages/contracts/src/interaction-guarantees.ts. Four of its cells are gap: waivers. ADR 0011 requires every gap waiver to cite an open tracking issue; this issue owns those four. (outcomeObservation is owned by #3335.)

Required behavior, per cell

  • offscreen: a focus/type match whose target is off screen is refused with a typed reason, or scrolled into view by the shared rule. It is not dispatched at an off-screen point.
  • parentOwnedTouchPoint: the seam aims at the point resolveInteractionTouchPoint chooses, not centerOfRect of the resolved node, so a center tiled by an independent child is not tapped.
  • nonHittable: a non-hittable match is either promoted with the targetHittable / hint annotation the other paths emit, or refused.
  • targetStability: the target is re-confirmed (or the ref frame checked) between capture and dispatch, the same way the other paths do it.

Completion

Each cell moves from waived to an enforced classification (runtime / runner / delegated) whose via names the shared implementation. interaction-guarantees.test.ts passes, and each change carries a red/green regression. Cells can close in separate PRs; close this issue when none remain waived.

Blocked by: #3727 (introduces the row).

Lingua principale
TypeScript
Stelle
5.2k
Fork
359
Merge medio
12h 54m
PR unite (30g)
637

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di callstack/agent-device

Tutte le issue di callstack/agent-device

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.