fix(e2e): recover chromium SPA login from credential-form re-render race #408
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/PMS-592-chromium-spa-login-credential-race"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The chromium form-validation run on PR #407 (run 2871) timed out with the SPA login stuck on a bare
/login, never reaching/login/2fa, whilesetup(same loginViaSpa, same Desktop Chrome, 2s earlier), firefox, and webkit all logged in fine. The captured URL trail ends with a full frame navigation back to a bare/login(the?redirect=...&checked=1query dropped), which is the bunyip hub rejecting a credential POST and 302'ing to a fresh form: the server-rendered hub form re-rendered betweenfillandclick, the click POSTed an empty form, and the helper then polled a never-submitted form until the 30s timeout. chromium lost that race; the other engines won it.Harden the credential step: verify the typed email/password values survived right before clicking, and confirm the password field leaves the DOM after submit (the hub advancing to 2FA / onward). If either check fails, the form was re-rendered out from under us, so re-fill the freshly-rendered form and submit again (up to 3 attempts) instead of charging ahead with an empty POST. firefox/webkit/setup, which already win the race, take the same fast path with no behavior change.
#PMS-592
Pull request closed