You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
A held outgoing Bot Social message is invisible when the friend's chat is hidden; the sender's chat shows it as sent #371
A Bot Social hold (pending_approval) on an outgoing message is invisible to its owner when the chat it is addressed to is not in the list. Found on a Mac (a Bot, 测试工程师, replying to a friend home's Chief):
The social plugin's dock (chatApprovals.setProvider / ChatApprovalDock) shows a hold only in the chat of the remote Bot it is addressed to (matched on bot.remote.handle). That friend's Chief chat is hidden in the roster, so there is no chat to hold the card.
A local Bot's hold is shown in its own chat only when no friend chat exists (approvalsForOpenChat: !friendChatOf(roster, item.to)), but a hidden or gone friend chat still counts as "exists". And a Bot Social hold carries no local Bot id at all (only local FlyBot holds set fromId).
The sender's chat says it is held and why, in plain words from the hold's reasons (dlp.commitment → "contains a commitment (保证…)", phone, email, money, calendar details, owner terms), instead of looking sent.
Status on main 082563a (2026-10-19 00:25 Asia/Shanghai): #372 landed the main part. A Bot Social hold on a local Bot's outgoing message now shows its card in the sender Bot's chat whenever the friend's chat is hidden, gone, home-level or absent (still one place per approval, #278), the sender's row gets the wait dot, and the card says why it is held (Held for your approval: contains commitment language). The held text stays on the card. Bot Social no longer runs a keyword commitment scan (Birfy/bot-social#14), so this kind of hold should also be rarer.
Left open for one choice: #372 puts the "held" note on the card in the sender's chat, not as a separate chat line, because there is no host API to post one for a local Bot and anything written there is read by the Bot's model. If the card is enough, this issue can be closed; if a real chat line is wanted, it needs a small host API first.
Maintenance check on main 0e72bb8 (2026-10-19): still a valid open decision. #372 covered the main case (held card in the sender Bot's chat when the friend's chat is hidden). Remaining product choices (held-message visibility / approval-card placement when multiple chats exist, and any further UX) still need an owner decision before more code. Not implementing further without clear expected behavior.
Closing as completed by #372. The approval card in the sender Bot's chat is enough for held-message visibility; no separate chat line, since a chat line would be read by the model.
Activity
Birfy commentedon Oct 18, 2026
Status on main
082563a(2026-10-19 00:25 Asia/Shanghai): #372 landed the main part. A Bot Social hold on a local Bot's outgoing message now shows its card in the sender Bot's chat whenever the friend's chat is hidden, gone, home-level or absent (still one place per approval, #278), the sender's row gets the wait dot, and the card says why it is held (Held for your approval: contains commitment language). The held text stays on the card. Bot Social no longer runs a keyword commitment scan (Birfy/bot-social#14), so this kind of hold should also be rarer.Left open for one choice: #372 puts the "held" note on the card in the sender's chat, not as a separate chat line, because there is no host API to post one for a local Bot and anything written there is read by the Bot's model. If the card is enough, this issue can be closed; if a real chat line is wanted, it needs a small host API first.
Birfy commentedon Oct 19, 2026
Maintenance check on main
0e72bb8(2026-10-19): still a valid open decision. #372 covered the main case (held card in the sender Bot's chat when the friend's chat is hidden). Remaining product choices (held-message visibility / approval-card placement when multiple chats exist, and any further UX) still need an owner decision before more code. Not implementing further without clear expected behavior.Birfy commentedon Oct 19, 2026
Closing as completed by #372. The approval card in the sender Bot's chat is enough for held-message visibility; no separate chat line, since a chat line would be read by the model.