Repository navigation
fix(mentions): show addressed agents first in Solo audience picker - #2856
Conversation
Co-authored-by: Dr. Spuxx, the Living Mutagen <dbeea7b641217ab95b3c75e547b999cc044d294afebbf240df7fe90c249de836@feedback.communities.buzz.xyz> Signed-off-by: Zach Marley <[email protected]>
Co-authored-by: Dr. Spuxx, the Living Mutagen <dbeea7b641217ab95b3c75e547b999cc044d294afebbf240df7fe90c249de836@feedback.communities.buzz.xyz> Signed-off-by: Zach Marley <[email protected]>
Preserve both audience-picker and Solo-workspace help instructions. Co-authored-by: Dr. Spuxx, the Living Mutagen <dbeea7b641217ab95b3c75e547b999cc044d294afebbf240df7fe90c249de836@feedback.communities.buzz.xyz> Signed-off-by: Zach Marley <[email protected]>
Preserve both audience-picker and plugin-draft help instructions. Co-authored-by: Dr. Spuxx, the Living Mutagen <dbeea7b641217ab95b3c75e547b999cc044d294afebbf240df7fe90c249de836@feedback.communities.buzz.xyz> Signed-off-by: Zach Marley <[email protected]>
Check finite subtree motion and inner avatar transforms in the same layout sample. Hold the real solo transition to prove unfinished outer motion is rejected, and cover a return to solo before restoring the hover roster. Co-authored-by: Dr. Spuxx, the Living Mutagen <dbeea7b641217ab95b3c75e547b999cc044d294afebbf240df7fe90c249de836@feedback.communities.buzz.xyz> Signed-off-by: Zach Marley <[email protected]>
kalvinnchau
left a comment
There was a problem hiding this comment.
🤖 Approved at bc12ad6. No new actionable findings in the reviewed change.
The geometry check samples animation readiness and bounds together, rejects pending or paused finite motion, and uses bounded polling. The negative control holds the production self-avatar CSS transition; removing the finite-motion guard causes the intended assertion to fail in Chromium and WebKit. Cleanup resumes the held transition in finally.
Validation included the full Huddle browser fixture (43 passed, one existing skip), repeated geometry checks, and actual-app mention-picker checks through the production browser broker with modeled upstream (4/4 passed). The prior exact-name Enter issue remains fixed.
Validation caveats remain: hosted JavaScript CI was incomplete, and the local full suite reported one discovery timeout plus two teardown rejections whose attribution was not established. Native Huddle IPC/audio and real-relay admission were not validated. This approval does not establish a clean full-suite result.
* origin/main: (153 commits) feat(agents): preview where interrupted agents were working before resume (#3494) perf(messages): close the editor and delete dialog on submit (#3493) feat(messages): quote selected message text into the composer (#2392) perf(toast): scope docked clearance to the toast host (#3489) fix(unread): undo exact captured ordinary reads conditionally (#3473) fix(solo): keep navigation responsive during chat deletion (#3488) fix(channels): keep custom thread tab names until the tab closes (#3458) perf(relay): verify cached history in the native host (#3426) fix(settings): refine claude and typesafe key setup dialogs (#3391) Update bundled help for Bestie and agent settings (#3194) feat(profiles): share and show a local time zone (#3332) Revert "feat(link-previews): unfurl web links below messages by default" (#3480) Show disabled plugin chats in Solo (#3456) perf(messages): host one context menu per message list (#3465) test(claude): keep the quit-release test copy above the minimum version (#3477) fix(profiles): restore verified names from the device cache (#3382) fix(mentions): show addressed agents first in Solo audience picker (#2856) perf: count member access once and scope find highlights to painting (#3464) perf(messages): prepare a message once for its renderer and link previews (#3466) fix(composer): speed up long pastes and paste office text as text (#3441) ... # Conflicts: # docs/plugin-authoring-guide.md
…when-ready * origin/main: (21 commits) fix(agents): report a conversation wake that fails before its turn starts (#2192) fix(usage): read Claude transcripts over 50 MB a page at a time (#3498) feat(agents): preview where interrupted agents were working before resume (#3494) perf(messages): close the editor and delete dialog on submit (#3493) feat(messages): quote selected message text into the composer (#2392) perf(toast): scope docked clearance to the toast host (#3489) fix(unread): undo exact captured ordinary reads conditionally (#3473) fix(solo): keep navigation responsive during chat deletion (#3488) fix(channels): keep custom thread tab names until the tab closes (#3458) perf(relay): verify cached history in the native host (#3426) fix(settings): refine claude and typesafe key setup dialogs (#3391) Update bundled help for Bestie and agent settings (#3194) feat(profiles): share and show a local time zone (#3332) Revert "feat(link-previews): unfurl web links below messages by default" (#3480) Show disabled plugin chats in Solo (#3456) perf(messages): host one context menu per message list (#3465) test(claude): keep the quit-release test copy above the minimum version (#3477) fix(profiles): restore verified names from the device cache (#3382) fix(mentions): show addressed agents first in Solo audience picker (#2856) perf: count member access once and scope find highlights to painting (#3464) ...
…n-on-github * origin/main: (21 commits) fix(agents): report a conversation wake that fails before its turn starts (#2192) fix(usage): read Claude transcripts over 50 MB a page at a time (#3498) feat(agents): preview where interrupted agents were working before resume (#3494) perf(messages): close the editor and delete dialog on submit (#3493) feat(messages): quote selected message text into the composer (#2392) perf(toast): scope docked clearance to the toast host (#3489) fix(unread): undo exact captured ordinary reads conditionally (#3473) fix(solo): keep navigation responsive during chat deletion (#3488) fix(channels): keep custom thread tab names until the tab closes (#3458) perf(relay): verify cached history in the native host (#3426) fix(settings): refine claude and typesafe key setup dialogs (#3391) Update bundled help for Bestie and agent settings (#3194) feat(profiles): share and show a local time zone (#3332) Revert "feat(link-previews): unfurl web links below messages by default" (#3480) Show disabled plugin chats in Solo (#3456) perf(messages): host one context menu per message list (#3465) test(claude): keep the quit-release test copy above the minimum version (#3477) fix(profiles): restore verified names from the device cache (#3382) fix(mentions): show addressed agents first in Solo audience picker (#2856) perf: count member access once and scope find highlights to painting (#3464) ...
* origin/main: (31 commits) Let plugin panels name their tab with panels.useTabTitle (#3251) fix(agents): report a conversation wake that fails before its turn starts (#2192) fix(usage): read Claude transcripts over 50 MB a page at a time (#3498) feat(agents): preview where interrupted agents were working before resume (#3494) perf(messages): close the editor and delete dialog on submit (#3493) feat(messages): quote selected message text into the composer (#2392) perf(toast): scope docked clearance to the toast host (#3489) fix(unread): undo exact captured ordinary reads conditionally (#3473) fix(solo): keep navigation responsive during chat deletion (#3488) fix(channels): keep custom thread tab names until the tab closes (#3458) perf(relay): verify cached history in the native host (#3426) fix(settings): refine claude and typesafe key setup dialogs (#3391) Update bundled help for Bestie and agent settings (#3194) feat(profiles): share and show a local time zone (#3332) Revert "feat(link-previews): unfurl web links below messages by default" (#3480) Show disabled plugin chats in Solo (#3456) perf(messages): host one context menu per message list (#3465) test(claude): keep the quit-release test copy above the minimum version (#3477) fix(profiles): restore verified names from the device cache (#3382) fix(mentions): show addressed agents first in Solo audience picker (#2856) ...
Summary
@completion is unchanged.session.agentChoicesand existing Popover, NavigationItem, SearchField and useSearchHighlight owners. No keyboard, membership or last-agent-policy change.November 11 P2 correction
Published/reviewed head: 0a11cc4; prior feature head
bb048e58c6fe0bfa5f34dd8781e719a19fbdd99e.Kalvin P2 confirmed with mounted real picker: typing
Al+Enter calledtoggle(Alexandra)with either Alexandra alone or Alexandra/Bob addressed. Both new cases fail on the prior feature candidate and pass using pre-feature production owners from72ce328with the same tests. The correction limits addressed-first partitioning to blank/whitespace queries; ordinaryrankMentionsremains the typed-search owner.solo-agents.test.tsx,use-mention-choices.test.ts, and bothuse-search-highlight.testfiles): 160/160 pass, 46.62s. Existing empty-query ordering/cap regression remains. New tests prove exact picker dispatch, not the composer's last-agent guard itself.0a11cc4; no competing edits or reviewer test reruns.envFile:false, no live identity configuration, installation, native launch or new fixture project.Alrows as all addressed agents. Corrected the probe to explicitly clear the retained query before checking blank-query ordering; both engines then passed. No product edit, timeout increase or assertion weakening.Historical evidence — prior feature head only
1ef7c0a91361310a47a4c5fae4a173ddb12b1a8ccontains this reviewed picker implementation unchanged; it is not this PR's head.Human acceptance and readiness
The author explicitly confirmed on November 11: “Manual test of the agent picker is successful—mark it.” This follows the supplied exact-candidate chooser/typed-Enter acceptance steps and isolated browser handoff at
0a11cc4. Agent exercise, independent review, mandatory hooks and human confirmation are complete for this correction. Historical results remain attributed to their original snapshots above; hosted CI is tracked separately. No merge or release is implied.buzz-review-completed
November 11 conflict reconciliation
Published merge head
3da18009855d25d6eaec843bfac4d787c77f50e0, integrating mainc048b3940803205a8f917c2e92b5050bea15681cwithout rewriting accepted commits. The sole manual conflict was adjacent help text: preserved both audience-picker guidance and upstream Solo-workspace guidance. Feature diff remains five files, +271/-2. Accepted picker production files are unchanged from0a11cc4; upstream matcher/terminator handling and assertions are retained.a42ef62with an unrelated Builderlab sign-in fix; checked merge-tree clean, no overlapping picker changes. No unrelated repair or extra merge added.November 13 conflict reconciliation
Published merge head
3443552b4658aa861be4f91e7659bd33e0c571b6, parents3da18009855d25d6eaec843bfac4d787c77f50e0and main7bb45482dea10338f92640b603a9ee5bdf780924. The sole manual resolution preserves both adjacent audience-picker and plugin-draft help paragraphs. No manual production-code changes; upstream loading-name evidence and its tests are retained. Combined feature diff remains five files, +271/-2. No rewritten history.November 13 Huddle CI settlement repair
Head
bc12ad688cc961c851bef3cfea2e1a31a8869070adds a test-only repair intests/browser/huddles.spec.mjs(+132/-58); picker and Huddle production behavior are unchanged.finally. Removing only the finite-motion predicate makes both Chromium and WebKit fail specifically at that rejection assertion (centers 230.897/230.913px versus 235px).3443552b4658aa861be4f91e7659bd33e0c571b6plus the exact committed test blobe3986ed64aead548f2a16ce77432eda832cdd03b(SHA-25636720b5576ee4b174aeb88e3c0d15225ec16065cb920daa58789fa71553a31bf). Mandatory commit/push hooks passed; types/related tests 94.22s, design 7.86s. Rust selector 0.22s is not a new full Clippy run.