Android smoke: 'keyboard dismissal should change emulator pixels' flakes on unrelated PRs

Aperta
#4,264 1 commento 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
48/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
android, typescript
Ambito
mobile, testing

Direzione di ricerca

Start with test/integration/android-emulator-e2e/live-form-scenario.ts and inspect how the test captures screenshots around keyboard dismissal. On a failing run, capture keyboard state before and after to determine whether the keyboard was shown and whether dismissal completed; then use an observable signal for the check. Done when the never-shown case fails with a clear cause and this step passes 10 consecutive Android smoke runs on PRs.

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

Descrizione

bug ready-for-agent

Purpose

The Android smoke lane fails on PRs that don't touch Android or the keyboard, with:

AssertionError [ERR_ASSERTION]: keyboard dismissal should change emulator pixels

Occurrences

  • #4243 (Limrun iOS cleanups and docs) at f958c63, 2026-11-06: job 127717160690. It passed on rerun.
  • #4263 (daemon close session logic) at 84d0daa, 2026-11-06: job 127803322350.

Current behavior

The assertion is in test/integration/android-emulator-e2e/live-form-scenario.ts. It compares emulator screenshots before and after a keyboard dismissal, and fails when the pixels are identical. The likely causes, both unconfirmed:

  • the dismissal hasn't finished animating when the second capture is taken;
  • the keyboard was never shown, so there was nothing to dismiss.

Required behavior

  • Find out which: capture the keyboard state before and after on a failing run.
  • Make the check wait on an observable signal, such as the IME window being gone or the snapshot no longer showing the keyboard, rather than a pixel change at a fixed point.
  • Don't remove the check or loosen it to pass on identical frames.

Completion conditions

  • 10 consecutive Android smoke runs on PRs pass this step.
  • A run where the keyboard was never shown fails with a cause that says so.
Lingua principale
TypeScript
Stelle
5.3k
Fork
377
Merge medio
14h 6m
PR unite (30g)
650

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.