hasPendingMessages method
Non-draining pending check (issue #647): the child-loop steering
probe. Covers the fabric inbox AND the in-memory pending queue —
the mail:N panel count above reads the fabric only.
Implementation
Future<bool> hasPendingMessages(String id) async =>
(await pendingInboxCount(id)) > 0 ||
(_handles[id]?.pendingMessages.isNotEmpty ?? false);