Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

iOS fill can report TEXT_ENTRY_MISMATCH before the confirmation deadline

Fermée
#3,952 0 commentaires 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.

  • #3953 par @shamilovtim — fusionnée

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
35/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
ios, testing-qa, typescript
Domaine
mobile, testing

Piste de recherche

Read RunnerTests+TextEntryConfirmation.swift and inspect the ReplacementTextEntryConfirmation polling rule. Run or add the synthetic regression described in the issue for transient partial text, a moved empty field, later exact success, and persistent mismatch. Done means negative observations keep polling within the existing deadline while the stated early success, identity, and mismatch behaviors remain intact; linked pull request #3953 is already open.

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

Description

Bug

On the iOS accessibility-driven fill route, replacement confirmation can return verified: false before its existing confirmation deadline. The caller then reports TEXT_ENTRY_MISMATCH, even though a subsequent read within that deadline can contain the requested text.

This is a source-level, synthetic reproduction against 45125d717b207736dd47bc7969edbff7807a6e6d; it does not depend on a particular application.

Deterministic reproduction

Exercise ReplacementTextEntryConfirmation with requested text 123456, an empty baseline, and timestamps relative to initialization:

Time Observation Expected
0.10 s 123 on the same identified input Pending
0.31 s 123 on that input Pending
0.50 s 123456 on that input Pending while settling
0.71 s 123456 on that input Verified

Currently the second observation returns verified: false, so the caller stops before the later correct observation. The same early rejection occurs for an empty, focused, unidentified field whose frame changed from its baseline.

Cause

In RunnerTests+TextEntryConfirmation.swift, settled && (moved || result.verified != false || sampledAt >= deadline) permits a settled negative result whenever the observation differs from its baseline. A changed partial value or changed field frame satisfies moved; neither proves that a negative observation is final.

Required behavior

  • Keep polling negative replacement observations within the existing bounded confirmation budget.
  • Preserve early settled exact/unconfirmed results and identity protections.
  • Preserve rejection when a mismatch persists through the deadline.
  • Type once; do not clear, retype, or add mutation retries.

Completion: a synthetic regression must fail on the current rule and pass after correction, including transient partial text, a moved empty field, later exact success, and persistent mismatch rejection. No public API change or new dependency is needed.

Langage dominant
TypeScript
Étoiles
5.1k
Forks
339
Merge moyen
12 h 53 min
PR mergées (30 j)
644

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.