fix(messages): the delivery indicator updates when a send completes (#306) #374

Merged
jared merged 1 commits from fix/delivery-status-live into lotus 2026-10-17 17:51:45 -04:00
Owner

Fixes #306.

DeliveryStatus showed whatever mEvent.status was at the last timeline re-render. A local echo's status changes (SENDING → SENT → confirmed, NOT_SENT → retried) only emit event-level events, which nothing in the timeline listens to. So the last message in a quiet room kept "Sending...", or a stale "Failed to send. Click to retry" after an outbox retry, indefinitely.

Change: the indicator re-renders on MatrixEventEvent.Status and LocalEventIdReplaced.

Checks: tsc clean · unit tests 1341 pass · ESLint clean. Not browser-verified yet. The issue's repro (a delayed /send, then the last row's indicator) is the test to run before relying on this.

🤖 Generated with Claude Code

https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5

Fixes #306. `DeliveryStatus` showed whatever `mEvent.status` was at the last timeline re-render. A local echo's status changes (`SENDING → SENT → confirmed`, `NOT_SENT → retried`) only emit event-level events, which nothing in the timeline listens to. So the **last message in a quiet room kept "Sending..."**, or a stale "Failed to send. Click to retry" after an outbox retry, indefinitely. **Change:** the indicator re-renders on `MatrixEventEvent.Status` and `LocalEventIdReplaced`. **Checks:** `tsc` clean · unit tests 1341 pass · ESLint clean. **Not browser-verified yet.** The issue's repro (a delayed `/send`, then the last row's indicator) is the test to run before relying on this. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5
jared added 1 commit 2026-10-16 22:25:46 -04:00
fix(messages): the delivery indicator updates when a send completes (#306)
CI / Build & Quality Checks (pull_request) Successful in 3m47s
CI / Trigger Desktop Build (pull_request) Skipped
CI / Docker image build & smoke test (pull_request) Skipped
CI / Secret scan (gitleaks) (pull_request) Successful in 13s
CI / Playwright smoke (e2e) (pull_request) Successful in 14m53s
36e697613b
DeliveryStatus showed whatever mEvent.status was at the last timeline
re-render, and a local echo's status changes (SENDING → SENT → confirmed,
NOT_SENT → retried) only emit event-level events, so the last message in
a quiet room kept "Sending..." (or a stale "Failed to send. Click to
retry" after an outbox retry) indefinitely. It now re-renders on
MatrixEventEvent.Status / LocalEventIdReplaced.

Not browser-verified in this change (checks: tsc, unit tests, eslint).

Fixes #306

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5
jared merged commit 3878a85339 into lotus 2026-10-17 17:51:45 -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#374