Skip to content

fix: workflow @mentions and Linux notification sounds#2691

Open
Chessing234 wants to merge 5 commits into
block:mainfrom
Chessing234:fix/mentions-sounds-decouple
Open

fix: workflow @mentions and Linux notification sounds#2691
Chessing234 wants to merge 5 commits into
block:mainfrom
Chessing234:fix/mentions-sounds-decouple

Conversation

@Chessing234

Copy link
Copy Markdown
Contributor

Summary

Test plan

  • cargo test -p buzz-relay --lib markdown_emphasis
  • cargo fmt -p buzz-relay -- --check
  • cargo clippy -p buzz-relay --lib -- -D warnings
  • biome check on touched desktop files
  • Mention sound on Linux AppImage / tauri dev

Made with Cursor

Chessing234 and others added 4 commits July 24, 2026 11:27
Signed-off-by: Taksh <takshkothari09@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: Taksh <takshkothari09@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: Taksh <takshkothari09@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: Taksh <takshkothari09@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@Chessing234
Chessing234 requested a review from a team as a code owner July 24, 2026 08:37
@bosoud

bosoud commented Jul 24, 2026

Copy link
Copy Markdown

Two notes on the workflow_sink.rs part (I filed #2686):

  1. _@Robby_ still wakes no one, and the new test can't see it. The left boundary now accepts _, but extends_name still treats _ as a name-continuation char, so after matching Robby the trailing _ fails the right-boundary check and the mention is rejected. The new test passes anyway because the same string also contains *@Robby*, which matches the same pubkey — and the output is deduplicated, so the assertion can't distinguish "both matched" from "only the * one matched". Standalone repro:

    resolve_mention_pubkeys("_@Robby_ take a look", &[m("Robby", &pk('a'))])  // currently []

    Dropping _ from extends_name fixes it without harming underscore display names — a member literally named will_smith still binds fully because longer names match first (worth pinning with its own test).

  2. This adds a fourth hand-maintained copy of the boundary rule. The same delimiter set now lives in hasMention.ts, buzz-sdk/mentions.rs (being consolidated in fix(cli): resolve @mentions wrapped in markdown emphasis and skip code regions #2547 per review there), and twice-diverged here — the drift class that produced [Bug] Bold-wrapped @mentions (**@Name**) send zero p tags from buzz-cli — no notification, exit 0, no warning #2526 in the first place. Once fix(cli): resolve @mentions wrapped in markdown emphasis and skip code regions #2547 lands, buzz_sdk::mentions::is_mention_lead is the shared definition and buzz-relay already depends on buzz-sdk; I have a ready branch converging workflow_sink on it (including the extends_name fix + tests) and am happy to PR it on top of either ordering — whichever lands first.

_@Robby_ was rejected because trailing _ looked like a name continuation.
Drop _ from extends_name; longer underscore display names still bind first.

Signed-off-by: Taksh <takshkothari09@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@Chessing234

Copy link
Copy Markdown
Contributor Author

Dropped _ from extends_name so _@Robby_ wakes Robby; added a standalone _@Robby_ case plus a will_smith longest-match pin. Happy to take your buzz-sdk converge PR on top once #2547 lands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants