Repository navigation
Closed
Labels
area:socialFriends, invites, grants, Bot SocialFriends, invites, grants, Bot Socialarea:uiWeb/desktop UI and copyWeb/desktop UI and copybugSomething isn't workingSomething isn't workingself-testFiled by the product self-test routine (issues only)Filed by the product self-test routine (issues only)
Description
Summary
In a Face-to-face room the composer's @ picker offers the same friend's Bot five times across three sections, with three different names. "Everyone" says 1 members in a room of two people and two Bots. A sent mention renders differently on each home. The same Bot also has a different name in the chat header, the bubble and the details panel.
Environment
FlyBot main a003044, dsh 0.2.0-rc.2, Node 24. Fresh A :3090 (SelfA1622) / B :3091 (SelfB1622), both with one Chief. A's Chief is shared with B (per-Bot invite). Face room 482913, open with both Chiefs. Self-test 2026-10-18 16:28–16:30 Asia/Shanghai.
Repro
- Open the face room on B. Type
@in the composer. - Pick A's Chief, type
what is 2+2?, and send. - Look at the line on B and on A.
Actual
- Picker on B. Screenshot: the @ menu open over B's composer.
- Bots
Chief/Chief of Staff: B's own Chief. OK.SelfA1622's Chief: the room's remote participant (mentionRows,core/src/client/at-menu.jsL35–36).Everyone/1 members:room.members.lengthcounts only this home's Bots (L97). The room has 2 people and 2 Bots, and "1 members" is ungrammatical.Chief (@chief.selfa1622.home): every published friend's Bot, added to every chat (remoteMentionRows, L46,flybot-registry.jsL135). Picking it inserts the raw handle.
- Friends' Bots:
Chief · remote(plugins/social/client.jsL1594, its own section). - Sessions: three
Chiefrows, which are A's Chief's chat Sessions from the DSH shell source.
- Bots
- Rendering of the sent line
- Sender B shows a chip without "@" and a double space:
SelfA1622's Chief what is 2+2?. The stored and server text is@SelfA1622's Chief what is 2+2?(Bot Social event 201); the picker inserts@Namewith a trailing space, so typing a space makes two. - Receiver A shows raw text:
@SelfA1622's Chief what is 2+2?(no chip). - The call itself worked: only A's Chief answered (
mentions: ["@chief.selfa1622.home"], Face rooms: sender-side explicit mention list (handles) on typed lines, receiver resolves by handle first (follow-up to #287) #293).
- Sender B shows a chip without "@" and a double space:
- Bot names differ per surface on the same home.
- Sidebar/picker
Chief. - Blue bubble header
SelfB1622's Chief @chief.selfb1622.home. - Details panel
SelfB1622 · Chief. - Waiting tile
Chief · SelfB1622.
- Sidebar/picker
Expected
- One
@list per room: people and the room's Bots, each once, named as the Members panel names them (SelfA1622 · Chief).Everyonedescribes the room correctly (2 people · 2 Bots, singular/plural right). Per the product design there is no separate Friends' Bots section, and DSH Session rows do not show in a face room's@(simplicity, consistency). - A friend's Bot that is not in this room is not offered in the room (it cannot be reached there). A handle is never inserted as the visible text.
- A mention renders the same on every home: chip with
@, single space. The receiver turns the attestedmentionshandles into the same chip. - One naming rule for a Bot across bubble header, sidebar, details, tiles and picker (Face room: people vs Bots — received human lines have no avatar and look like my own; members list shows only Bots, named inconsistently (partial regression of #180) #229 set
Person · Botfor Members and tiles; extend it to the bubble header and picker).
Metadata
Metadata
Assignees
Labels
area:socialFriends, invites, grants, Bot SocialFriends, invites, grants, Bot Socialarea:uiWeb/desktop UI and copyWeb/desktop UI and copybugSomething isn't workingSomething isn't workingself-testFiled by the product self-test routine (issues only)Filed by the product self-test routine (issues only)
Activity
Birfy commentedon Oct 18, 2026
PR #339 fixes the
@picker in a face room: each Bot in the room once, labelledPerson · Botlike the Members panel, Everyone without the wrong count, and no friends' Bots from outside the room (neitherremoteMentionRowsnor the social Friends' Bots section). Still open here: DSH's own Sessions rows in the same menu (a shell source that ds-bot cannot hide per Session without patching DSH), the sender chip without@and the double space, the receiver drawing the attestedmentionsas the same chip, and one naming rule for bubble header, details and tiles.fix(face-rooms): the @ label reads my seat's owner name first, as Mem…
Face room @ picker: each Bot in the room once, named Person · Bot, no…
Docs: face-room bare-name precedence in the bubble (ThinkFlowLab#305 …
Birfy commentedon Oct 18, 2026
Status on main
9733d6a(2026-10-18 22:45 Asia/Shanghai): #367 and #368 landed the mention rendering. A face-room chip now shows@and the Members label (SelfA · Chief) on both homes, a line typed on the other home is drawn as the same chip (matched by the host'sfaceAliases), a bare@Chiefmeans the writer's own Chief, and a typed space after a picked name is no longer doubled. Still open here:@menu. They come from a shell source that ds-bot cannot hide per Session without patching DSH.A friend's Bot sidebar row: name and owner on one line, a second line…
Friend Bot row: full-width hover; fallback avatar never matches own (…
Birfy commentedon Oct 19, 2026
Triage on main
7b9e90b, 2026-10-19 ~12:10 Asia/Shanghai: needs-human. What is left: (1) DSH's own Sessions rows in the face-room @ menu: ds-bot cannot hide them per Session without patching DSH, so this needs a DSH plugin API (or accepting them). (2) One naming rule for a Bot across bubble header, details panel and tiles, which is the same open question as #384. Question for the owner: which single format should a friend's Bot use everywhere (options:SelfA · Chiefas in the Members panel;Chiefwith the owner as a second line;Chief (SelfA))? And for (1): ask DSH for a way to hide Sessions rows in a room's @ menu, or leave them?Birfy commentedon Oct 19, 2026
Owner decision (2026-10-19): a friend's Bot is displayed as
Helper (SelfB0023)(Bot name followed by the owner's name in parentheses; option (c)). This is the single naming rule for bubble header, details panel and tiles, same as #384.Still open here: DSH's own Sessions rows in the face-to-face @ menu (hide via a DSH plugin API, or accept them). Not decided in this comment.
needs-humanstays.Birfy commentedon Oct 19, 2026
Owner decision (2026-10-19): the DSH Session row in the face-to-face @ menu is filtered out inside FlyBot now. We should also ask DSH for an API to exclude it. Nothing is filed in a DSH repo yet. Also, a friend's Chief uses the same format as every other friend Bot,
Chief (OwnerName), with no<owner>'s Chiefspecial case (see #384).7 remaining items
Birfy commentedon Oct 19, 2026
Decision (delegated by owner), 2026-10-19 ~16:36 Asia/Shanghai, on the question of 06:32 UTC: option 1 now — in a face-to-face room only, FlyBot hides the DSH shell's Sessions rows (and their section title) in the
@menu, as the owner decided ("filter in FlyBot for now"). This is a small UI detail, not an authz or approval question: a Session row reached by arrow keys only inserts a Session reference, it does not send or grant anything. #422 stays open to replace the filter with a DSH API; posting that request upstream in deepseek-harness waits for the owner's ok.Triage on main
e5f6036: design conflicts resolved, spec clear; ready to develop. Remaining scope after #425 (naming, one row per Bot,Every Bot in this roomalready on main): (a) the face-room Sessions filter above, with a test; (b) a sent mention renders as the same chip with@and one space on the sender and the receiver (the picker inserts@Name; don't double the space). Develop on top of #425 (same files:at-menu.js), so after #425 merges. Checked: owner decisions on #384/#305, #422, AGENTS.md hard rule 1 (no DSH patch: CSS/DOM only), no separate Friends' Bots section.Birfy commentedon Oct 19, 2026
Claimed by the maintenance routine (2026-10-19 16:54 Asia/Shanghai): working on branch
Birfy:fix/305-face-room-at-picker.Birfy commentedon Oct 19, 2026
Development decisions (delegated, 2026-10-19 17:04 Asia/Shanghai), in #431:
inputTriggers.sessionOf, a public DSH service FlyBot already uses for "Reference a chat"). CSS hides thereferencerows whose icon issessionand their section title, and FlyBot moves the highlight past them in the direction of the key, so the arrow-key / Enter concern from the 06:32 UTC comment does not apply: Enter never picks a hidden row. A menu left with only Session rows is dismissed, so Enter sends the line. No DSH patch.1 member/2 members(also the palette's group subtitle). Face rooms keepEvery Bot in this room.@, one label on both homes, no doubled space) and one row per Bot were already on main; checked, no change.Face-to-face room @ menu: no DSH Sessions rows, Everyone counts its B…
Name a friend's Bot one way and approval cards by the receiving person (
Keep the header's Session effects off the pill's seat (ThinkFlowLab#803)