RocketChat / RocketChat/Rocket.Chat

Message fails to send if it contains word "cursor", a colon ":", and brackets "()"

Open
#39,502 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

type: bug
Dominant language
TypeScript
Stars
46.1k
Forks
13.9k
Avg merge
3d 3h
Merged PRs (30d)
130

Description

Description:

I encountered a case where Rocket.Chat fails to send a message. The message stays grey in the UI and is never sent. I am not an admin and this is not critical for me, but I thought reporting it might be helpful.

This bug appears to occur when the message contains the following three elements in this order:

  1. the word "cursor" (case-insensitive)
  2. a colon ":"
  3. parentheses "()" (empty or with content)
Steps to reproduce:
  1. Open a chat in Rocket.Chat.
  2. Type a message containing the word "cursor", followed later by a colon ":" and parentheses "()".
  3. Attempt to send the message.

Example minimal message:

asdf cursor asdf: asdf (asdf)

Expected behavior:

The message should be sent normally.

Actual behavior:

The message remains grey in the UI and is never sent.

Server Setup Information:

I am not admin, just a regular user, so I have no idea on the server side.

  • Version of Rocket.Chat Server: unknown
  • License Type: unknown
  • Number of Users: unknown
  • Operating System: unknown
  • Deployment Method: unknown
  • Number of Running Instances: unknown
  • DB Replicaset Oplog: unknown
  • NodeJS Version: unknown
  • MongoDB Version: unknown
Client Setup Information
  • Desktop App or Browser Version: unknown
  • Operating System: Windows 11
Additional context

I originally encountered this when writing a message like:

The Cursor AI costs go to project: MyProject (123456)

The message failed to send until it was rewritten to avoid this pattern.

Relevant logs:

No logs collected.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file or test is named. Start by reproducing the example in Rocket.Chat's chat composer and tracing the send path for messages containing "cursor", a colon, and parentheses. Done means the reproduced message sends normally and a regression test covers the reported pattern.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.