Before submitting
Area
apps/mobile
Steps to reproduce
- Open a thread in the mobile app.
- Start a turn and return to the thread list while it is running.
- Confirm the row shows Working.
- Wait for the turn to finish without reopening the thread.
- Compare the row with the same thread in the desktop sidebar.
Expected behavior
The mobile row should transition from Working to Done when the turn completes after the thread was last visited, matching the desktop sidebar. Opening the completed thread should clear the Done state.
Actual behavior
Mobile can show Working, but it has no presentation path for Done. Once the session becomes quiescent, the row falls back to its normal ready or timestamp presentation.
This makes completed background work much easier to miss on mobile.
Impact
Minor bug or occasional failure.
Version or commit
Current upstream main at f0f16e4f.
Environment
iOS mobile app. The missing completion state is shared by the mobile thread list presentation and is not iOS specific.
Source observation
Desktop treats Done as unread completion state rather than a session status. It compares latestTurn.completedAt with a persisted per-thread lastVisitedAt value.
Mobile resolves a completed session to ready, but does not track the equivalent visit timestamp or overlay a Done label. Both Thread List v2 and the older mobile thread presentation omit this state.
Workaround
Open the thread or compare against the desktop sidebar to confirm that the turn completed.
Before submitting
Area
apps/mobile
Steps to reproduce
Expected behavior
The mobile row should transition from Working to Done when the turn completes after the thread was last visited, matching the desktop sidebar. Opening the completed thread should clear the Done state.
Actual behavior
Mobile can show Working, but it has no presentation path for Done. Once the session becomes quiescent, the row falls back to its normal ready or timestamp presentation.
This makes completed background work much easier to miss on mobile.
Impact
Minor bug or occasional failure.
Version or commit
Current upstream
mainatf0f16e4f.Environment
iOS mobile app. The missing completion state is shared by the mobile thread list presentation and is not iOS specific.
Source observation
Desktop treats Done as unread completion state rather than a session status. It compares
latestTurn.completedAtwith a persisted per-threadlastVisitedAtvalue.Mobile resolves a completed session to
ready, but does not track the equivalent visit timestamp or overlay a Done label. Both Thread List v2 and the older mobile thread presentation omit this state.Workaround
Open the thread or compare against the desktop sidebar to confirm that the turn completed.