iOS Conformance Differential: intermittent clearState terminate timeout and Maestro driver startup timeout

Aberta
#4,022 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
48/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
github-actions, ios, typescript

Direção de pesquisa

After #4016 merges, inspect the uploaded conformance-differential-ios-diagnostics from the next failing run. Read the subprocess trace for the open command with timeoutMs: 15000 to distinguish a slow xcrun call from one that hangs after termination, and check .maestro/tests for the driver timeout. The issue is done when the intermittent failures are explained by that evidence; do not increase the timeout before then.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

backlog bug

Split out of #3944. These two failures predate the 10-17 streak. They come and go and turn some nights red after the persistent failure is fixed (#3993).

1. agent-device launchApp clearState times out terminating the app

  • When: failed with "xcrun timed out after 15000ms" on 09-18, 09-24, 09-27, 10-07, 10-11, 10-17 and 10-27.
  • Which run: every time, it was the agent-device run that follows a Maestro run of the same flow. That was percent-swipe on 10-11 and 10-17, and settle-after-tap on 10-27.
  • Why the terminate is the culprit: launchApp makes two xcrun calls with a 15 s limit. Only the terminate (terminateIosSimulatorApp, IOS_SIMULATOR_TERMINATE_TIMEOUT_MS, packages/platform-apple/src/core/app-launch.ts) reaches the caller. A timeout in post-open target discovery is caught and turned into probe-failed.
  • Normal timing: on a green run (dispatch 40684697766) the terminate took at most 0.7 s, and discovery took up to 11.3 s.

2. Maestro "iOS driver not ready in time"

  • When: failed on 09-12, 09-22, 09-24, 09-27, 10-06, 10-07 and 10-27.
  • Four of those nights also had failure 1.

Possible cause (unproven)

The host or CoreSimulator may stall. Or agent-device's runner, which stays alive across scenarios, may interfere when Maestro starts its own driver.

Next step

Once #4016 merges, the job keeps a subprocess trace and uploads conformance-differential-ios-diagnostics (daemon and session diagnostics, plus Maestro's per-run logs). On the next failing night:

  • Read the trace of the xcrun call with timeoutMs: 15000 under command open. If it exits right after the deadline, it was slow. If it never closes after the kill, it hung.
  • Read .maestro/tests for the driver timeout.

Don't raise the timeout until that evidence exists.

Linguagem predominante
TypeScript
Estrelas
5.2k
Forks
359
Merge médio
13h 31min
PRs com merge (30d)
664

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de callstack/agent-device

Todas as issues de callstack/agent-device

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.