iOS inbox never surfaces agent session replies that don't @mention you (mention-only feed contract; desktop get_feed shares the gap)

Open
#7,779 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
42/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
dart, rust
Domain
desktop, mobile

Research direction

Start with mobile/lib/features/activity/activity_provider.dart:35-49 and 105-115 to trace the #p-only initial fetch and live subscription, then compare desktop/src-tauri/src/commands/messages.rs:56-74, 104-113 and desktop/src/features/home/hooks.ts:24. Confirm the intended inbox contract before choosing whether participation-based replies, agent-side tags, or documentation is appropriate; done means the contract is implemented or clearly documented and the affected feed behavior is verified.

Written by the indexing model from the issue text.

Description

Describe the bug

The iOS inbox (Activity tab) never shows anything for agent session replies. When an agent session replies in a thread I'm participating in, the inbox stays unchanged — it looks like the inbox doesn't refresh at all. The only agent-related things that appear are events that explicitly @mention me.

Steps to reproduce

  1. On iOS, note the inbox state.
  2. In a channel/thread you participate in, trigger an agent session that replies without @mentioning you (e.g. a normal reply to the thread).
  3. Observe the inbox: nothing new appears, immediately or after waiting/refreshing.

Expected behavior

Replies in threads I participate in (or threads I started) should surface in the inbox — or the app should make clear the inbox is strictly an @mention feed.

Investigation (from source at ef2aa1a)

The mobile inbox is built by ActivityNotifier and sources exactly:

  • events that carry a #p tag with my pubkey on kinds [1, 9, 40002, 43001-43006, 45001, 45003, 46010-46012] (mobile/lib/features/activity/activity_provider.dart:35-49), both for the initial fetch and for the live subscription (activity_provider.dart:105-115);
  • DM channel messages;
  • workflow approval kinds 46010-46012.

An agent's kind:9 reply that doesn't @mention me carries no #p tag, so it is invisible to both the initial fetch and the live subscription — by construction, not by a networking failure. That matches the observed "inbox does not refresh related to any session replies."

Desktop has the same underlying contract and the same gap, but it is masked there by other surfaces: get_feed's mentions query is the identical #p filter (desktop/src-tauri/src/commands/messages.rs:56-74), and its activity and agent_activity feed sections are returned hard-coded empty (messages.rs:104-113) even though the Home screen requests types mentions,needs_action,activity,agent_activity (desktop/src/features/home/hooks.ts:24). On iOS the inbox is the only surface, so the gap is fully exposed.

Possible directions

  • Add a participation-based section: thread roots I authored or follow (mobile already tracks thread participation locally via the buzz-thread-participation.v1 prefix in channels_provider.dart:41) scanned against NIP-10 e-tag replies, rather than #p-only.
  • Or have agents include the thread owner's pubkey in #p on replies (harness-side change), so existing mention machinery picks them up.
  • At minimum, document the inbox as an @mention feed so the behavior is not mistaken for a refresh bug.

Version and platform

  • Buzz version: 0.15.0 (iOS)
  • OS: iPhone 13, iOS 18.7.7

Logs / additional context

Related: #3293 (mobile live updates not reaching the channel window store).

Dominant language
Rust
Stars
33.7k
Forks
4.4k
Avg merge
1d 21h
Merged PRs (30d)
239

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from block/buzz

All issues in block/buzz

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.