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

Ouverte
#4,264 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
48/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Active
Stack technique
android, typescript
Domaine
mobile, testing

Piste de recherche

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.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

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.
Langage dominant
TypeScript
Étoiles
5.3k
Forks
377
Merge moyen
14 h 6 min
PR mergées (30 j)
650

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de callstack/agent-device

Toutes les issues de callstack/agent-device

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.