Skip to content

[Bug]: iOS Live Activity keeps showing "T3 Done" for hours when no other agent event arrives #11939

Description

@ishaanko

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/mobile

Steps to reproduce

  1. Link an environment to T3 Connect, enable Live Activity Updates on an iPhone, and start a turn from the phone so a Live Activity is armed.
  2. Let the turn finish. The Dynamic Island and lock screen card switch to "T3 Done".
  3. Tap the notification or the Dynamic Island. The thread opens in the app.
  4. Leave the phone alone. Do not start any other agent work on any linked environment.
  5. Check the Dynamic Island 30 minutes later, or hours later.

Expected behavior

The Done card stays for the documented 15 minute window, then goes away on its own.

Actual behavior

The Dynamic Island keeps saying "T3 Done" for hours. Tapping the notification or the island does not clear it. It only goes away when some other agent event reaches the phone, or when iOS retires the activity itself.

Impact

Minor bug or occasional failure

Version or commit

main @ 3efdcc5

Environment

iOS 26, T3 Code Mobile with T3 Connect, T3 Code Nightly 0.0.41 as the host.

Logs or stack traces

Root cause, from reading the relay code:

infra/relay/src/agentActivity/agentActivityAggregate.ts keeps finished rows in the aggregate
for 15 minutes and returns null after that, and ApnsDeliveries turns a null aggregate into a
live_activity_end. But the aggregate is only recomputed when an environment publishes a new
state or the app re-registers its activity token. A user with no further agent activity never
triggers either, so the end push is never sent.

Opening the app does re-register the token, but inside the 15 minute window that replay just
re-sends the same Done aggregate. After the window, nothing runs at all. The 5 minute cron in
infra/relay/src/worker.ts prunes the terminal rows from the database but does not end the
cards that were showing them.

Screenshots, recordings, or supporting files

No response

Workaround

Start another turn on any linked environment, or open the app again more than 15 minutes after the turn finished so the token re-registration replays an empty aggregate and ends the card.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    acceptedfeature request acceptedbugSomething is broken or behaving incorrectly.via-triageFiled through npx t3 triage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions