mirror of
https://github.com/block/buzz.git
synced 2026-11-06 09:21:45 +00:00
Mobile Huddles decided "is this an agent" from the channel role `bot`. The relay now stores `bot` only for keys with a recorded NIP-OA owner (#8494), so an agent without an owner attestation joins as `member`. Mobile then left it out of the participant list after joining, labeled it as a person, did not show its "preparing a response" state, and counted it as a person when deciding whether leaving ends the Huddle. Add one Huddle agent owner, `huddle_agents_provider.dart`. A member is an agent when it has the `bot` role or when a trusted author published a validly signed kind:30177 managed-agent record for it. Trusted authors are the current user and the Huddle channel's owners; a record from anyone else is only a claim. This is the same rule as the Desktop fix (#8544). Signature checks run off the UI isolate. If the records are still loading or cannot be read, the `bot` role still works, and the last-person count fails so leave keeps the Huddle open. Co-authored-by: Larry <627498bd4bd1f281a16431e3c6cce3b5c25b6692798c78672298aefbf2f8f8b5@buzz.block.builderlab.xyz> Signed-off-by: Logan Johnson <loganj@squareup.com>