e2e: SAS device verification + 1:1 call reaching Connected #4
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/e2e-verification-call"
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?
Self-directed continuation from a 2026-09-16 pre-release audit session, picked from
.hub/status.json's next-list item "e2e: SAS verification + a 1:1 call" — the one gap that was genuinely doable without MAS/OIDC or deploy infra.What this adds
e2e/tests/verification.spec.ts— two sessions of the same account do a full SAS emoji verification, asserting both sides see the identical emoji sequence and both land on "Done".e2e/tests/call.spec.ts— a real 1:1 WebRTC voice call (fake media devices) from ring through toConnectedon both sides, then a clean hangup.A real bug found along the way
Self-verification (verifying your own second device) had no UI entry point anywhere —
UserProfilePopover.tsxandmemberMenu.tsxboth explicitly hide the "Verify" action for your own user id, and Settings → Account → Signed-in devices only offered sign-out. The underlyingrequestUserVerification()API was fully capable; this was a missing affordance, not a test-only gap. Added a "Verify" button per non-current device row inDeviceManagementSection.tsx.Also fixed a test-infra bug: Synapse's admin register endpoint returns a live, unused access_token/device_id as a side effect, leaving a phantom device on every e2e test account — harmless until a device-count assertion needed exactly the sessions the test itself created. Now logged out immediately in
registerUser().Gate
Build clean, 471 unit tests (unaffected), oxlint 0 errors, full e2e suite 15/15 green (13 previous + 2 new), reproduced green across three repeated full-suite runs.
Note for the reviewer
This branch is based on
main@2b93105(pre-dates a separate doc-only audit pass now onmain). Verified withgit merge-treethat it merges cleanly with no conflicts against currentmain— only doc files changed on one side, only app/test code on the other.PLAN.md has a full round writeup (Hungarian, matching house style).
Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
Merged manually to main at
222623e(fast-forward, PLAN.md conflict resolved by keeping both round entries). Gate: build clean, 476 unit tests (+1 skip), lint 0 errors, e2e 17/17 green (15 prior + 2 new: verification.spec.ts, call.spec.ts).Pull request closed