XCTest Nightly: text-input probe test reuses a commandId the runner journal now answers from its record

Fermée Adaptée aux débutants
#4,212 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

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

Une pull request liée a déjà été fusionnée.

  • #4261 par @thymikee — fusionnée

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
90/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
ios, typescript
Domaine
mobile-dev, testing

Piste de recherche

Lis apple/runner/AgentDeviceRunner/AgentDeviceRunnerUITests/UnitTests/RunnerTests+TextInputProbeTests.swift autour des lignes 239–240 et attribue un commandId unique à la deuxième commande type. Lance ensuite la suite complète iPhone et pnpm check:xctest-selection ; le travail est terminé lorsque les deux passent et que la carte de sélection oriente les modifications de RunnerCommandJournal vers ces tests de sonde, si ce changement demande peu d’effort.

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

Description

bug ready-for-agent

Purpose

XCTest Nightly has failed twice in a row (runs 41578854330 on 2026-11-03 and 41773968778 on 2026-11-04), after green nights through 2026-11-02 at 343b7fcf41. Both fail in one test.

Current behavior

RunnerTests.testFreshCoordinateTapContainsUnavailableTextInputProbe (apple/runner/AgentDeviceRunner/AgentDeviceRunnerUITests/UnitTests/RunnerTests+TextInputProbeTests.swift:239-240) sends the same type command twice, both with commandId: "type-after-unavailable-probe". The first send is expected to fail with TEXT_INPUT_NOT_FOCUSED; the second, after a tap that focuses the field, is expected to type.

Since #4140 (e4034a714d), the runner's command journal answers a repeated commandId from its recorded outcome. So the second send returns the first send's TEXT_INPUT_NOT_FOCUSED, and the field stays empty:

RunnerTests+TextInputProbeTests.swift:239: error: XCTAssertTrue failed
RunnerTests+TextInputProbeTests.swift:240: error: XCTAssertEqual failed: ("Optional("")") is not equal to ("Optional("must-not-type")")

The journal behavior is intended (ADR 0005); the test reuses an id it must not reuse.

Required behavior

  • The second type in this test sends its own commandId.
  • XCTest Nightly passes the iPhone full suite.
  • The PR lane's XCTest selection did not run this test for #4140's journal change. If the selection map can cheaply route RunnerCommandJournal changes to the text-input probe tests, it does.

Completion conditions

  • The test passes in the iPhone full suite.
  • pnpm check:xctest-selection passes.
Langage dominant
TypeScript
Étoiles
5.3k
Forks
377
Merge moyen
14 h 24 min
PR mergées (30 j)
675

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.