fix(calls): DM-aware rejoin toast, and no rejoining a DM call that ended (#302) #389

Merged
jared merged 1 commits from fix/rejoin-dm into lotus 2026-10-18 01:16:24 -04:00
Owner

Fixes #302.

Changes

  • Wording. For DMs the rejoin toast now says "You were in a call with Bob Builder before the restart." The old text was "…in the call in Bob Builder".
  • No auto-rejoin for DMs. decideRejoin turns auto into ask for DM calls, since starting one the other person has just left would ring them.
  • Re-check at tap time. If nobody else is in the DM call any more when you tap, the toast says Call ended, "Bob Builder already left the call.", instead of starting a new, ringing call. It uses its own toast id, because the tapped toast is removed by id after its click handler runs.

Verified (local Synapse; Bob's call membership set via the API, a call record saved, then reload):

  • Toast: "You were in a call with Bob Builder before the restart. Tap to rejoin."
  • Bob leaves, then tap: "Call ended", no call started.
  • Bob still in, then tap: the call starts (rejoin as before).

Unit tests for the DM decision, the toast copy and othersInCall. tsc clean · unit tests pass · ESLint clean.

🤖 Generated with Claude Code

https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5

Fixes #302. **Changes** - **Wording.** For DMs the rejoin toast now says "You were in a call **with** Bob Builder before the restart." The old text was "…in the call in Bob Builder". - **No auto-rejoin for DMs.** `decideRejoin` turns `auto` into `ask` for DM calls, since starting one the other person has just left would ring them. - **Re-check at tap time.** If nobody else is in the DM call any more when you tap, the toast says **Call ended**, "Bob Builder already left the call.", instead of starting a new, ringing call. It uses its own toast id, because the tapped toast is removed by id after its click handler runs. **Verified** (local Synapse; Bob's call membership set via the API, a call record saved, then reload): - Toast: "You were in a call with Bob Builder before the restart. Tap to rejoin." - Bob leaves, then tap: "Call ended", **no call started**. - Bob still in, then tap: the call starts (rejoin as before). Unit tests for the DM decision, the toast copy and `othersInCall`. `tsc` clean · unit tests pass · ESLint clean. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5
jared added 1 commit 2026-10-17 20:20:16 -04:00
fix(calls): DM-aware rejoin toast, and no rejoining a DM call that ended (#302)
CI / Build & Quality Checks (pull_request) Successful in 3m16s
CI / Trigger Desktop Build (pull_request) Skipped
CI / Docker image build & smoke test (pull_request) Skipped
CI / Secret scan (gitleaks) (pull_request) Successful in 19s
CI / Playwright smoke (e2e) (pull_request) Successful in 16m35s
0a2f18e3d5
After a reload during a DM call the toast said "You were in the call in
Bob Builder"; it now says "You were in a call with Bob Builder". DM
calls are never auto-rejoined (it could ring the other person), and if
they have left by the time you tap, the toast says "Call ended" instead
of starting a new, ringing call.

Fixes #302

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5
jared merged commit 5ecf4132f5 into lotus 2026-10-18 01:16:24 -04:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: LotusGuild/cinny#389