Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

.ad files cannot reach off-screen elements, and test --platform skips files without a platform header

Abierto
#3,197 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@thymikee ya está trabajando en esto.

Desde el 5/10/2026.

  • #3234 de @thymikee — abierto

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
55/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
typescript
Área
cli

Línea de trabajo

Start in the replay/.ad parser and the command flag table where scroll --until is marked recorded: false; the scroll handler is what rejects the extra argument, and wait --raw fails through the same argument splitter. For part 2, find where test --platform assembles the internal missing platform metadata skip reason and where the user-facing No replay tests matched error is built. Part 3 is a flag table for help scripting. Done means scroll down --until 'id="x"' works inside a .ad file, the platform error names the skip reason, and the docs list which CLI flags are valid in .ad files.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

I use agent-device test with .ad files to replay example apps on an Android emulator and an iOS simulator. Three things make long screens hard to replay in a deterministic way. Version: 0.21.20.

1. .ad files cannot reach an off-screen element

wait, is, and press only see elements that are on screen. That is fine. But I cannot get an element on screen in a .ad file in a viewport-independent way:

  • scroll down --until 'label="ok:ready"' works from the CLI. In a .ad file it fails with scroll amount must be a number, because --until is not parsed (it is recorded: false in the flag table).
  • wait id="x" --raw and wait --raw id="x" both fail in a .ad file (is followed by unexpected extra arguments / mixes plain word "--raw").

So a .ad file has to use fixed scroll down steps. They pass on one screen size and fail on another. Example: the same flow passed on a Medium Phone emulator and failed on an iPhone 17 simulator, because the target button was one page lower.

Repro:

open "com.example.app" --relaunch
scroll down --until 'id="far-button"'
press id="far-button"
close

Expected: the scroll repeats until far-button is visible, as it does in the CLI.
Actual: scroll amount must be a number.

Request: support --until <selector> for scroll in .ad files (and replays), or give .ad files another way to bring a selector on screen.

2. test --platform skips files that have no platform metadata

agent-device test e2e/*.ad --platform android --serial emulator-5554 fails with No replay tests matched for --platform android. when the .ad files have no platform header. Without --platform the same files run on that serial. The skip reason (missing platform metadata for --platform android) is only in the internal entry, not in the error the user sees.

Request: when --serial or --udid already selects the device, treat header-less files as runnable on that platform, or say in the error that the files were skipped because they have no platform header, and how to add one.

3. Docs

I could not find the .ad syntax for flags per command, or a list of which CLI flags work inside .ad files. A short table in help scripting would have saved me some time.

Thanks for the tool. My workaround for 1 is an accessible element that stays on screen and carries all result values in its label. It works, but it means changing the app for the test runner.

Lenguaje dominante
TypeScript
Estrellas
4.8k
Forks
315
Merge medio
11 h 37 min
PR fusionados (30 d)
556

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de callstack/agent-device

Todos los issues de callstack/agent-device

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.