Skip to content

Phone web app: a message queued for a working agent shows "not sent" and is lost when the phone sleeps #686

Closed as not planned

Description

@Alexis1537

What happened

A chat message sent from the web UI on an iPhone (home-screen web app) to a Claude Code pane showed a "not sent" note. The message did not reach the pane. A later message to the same pane, sent the same way, arrived.

When the first message was sent, the Claude Code agent was working: it was in the middle of a turn, waiting on a long background command. So the composer used queue delivery (composerDelivery returns "queue" for a working agent).

Versions

  • herdr 0.9.3, macOS 27
  • herdr web ui 0.4.2 (0.4.3 is out; not installed yet)
  • Client: Safari home-screen web app on iPhone, iOS 27

What I could see

  • ~/.local/state/herdr/plugins/devswha.herdr-web-ui/server.log holds only start-up lines, so the bridge left no record of the message or the failure.
  • The herdr server log shows no br- request near that time other than events.subscribe.
  • I do not have the exact text of the note. The user describes it as saying the message was never sent.

Likely path (not confirmed)

A phone web app is suspended when the screen locks or the user switches app. If that drops the socket while a message waits in the queue, the paths in PaneTerminal.tsx that answer disconnected mark the row "Not sent. Reconnect and try again." On a phone this is the usual case, not an edge case: the user sends a message to a busy agent and puts the phone away.

Possibly related: #541, gap 4 (a send that never left the browser ends as not confirmed). That report needs two tabs; this one has one.

Expected

A message sent to a busy agent from a phone is kept until the agent can take it, even if the phone sleeps. If it cannot be delivered, the note says so when the user comes back, and Send now or a retry is offered. The bridge logs the failure so that it can be traced.

Activity

  1. devswha commented on Oct 17, 2026

    @devswha
    Owner

    Duplicate of #874: both are a message queued for a working agent that is held when the page's connection to the pane changes (here, the phone sleeping). Following up there.

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions