Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: E2EE messages mentions #32510

Merged
merged 31 commits into from
Sep 20, 2024
Merged

feat: E2EE messages mentions #32510

merged 31 commits into from
Sep 20, 2024

Conversation

hugocostadev
Copy link
Contributor

@hugocostadev hugocostadev commented May 28, 2024

Proposed changes (including videos or screenshots)

In Rocket.Chat, while end-to-end encryption secures user messages in private rooms, it currently does not support the functionality to mention specific users within these encrypted conversations. This limitation reduces the usability and interactivity of the chat, as users cannot directly alert or reference other participants. Enabling mentions in encrypted rooms will enhance communication efficiency and user engagement without compromising the security of the encryption.

Acceptance criteria (DoD)

  • Functionality Implementation: Users should be able to mention other users, teams, and @ALL and @here in end-to-end encrypted rooms using the '@' symbol followed by the username, exactly the same functionality in non-encrypted rooms.
  • Autocomplete Feature: As a user types a mention, an autocomplete feature should suggest possible usernames based on the current participants in the room, exactly the same functionality in non-encrypted rooms.
  • Notification Handling: Users who are mentioned should receive notifications if they have notifications enabled, exactly the same functionality in non-encrypted rooms.
  • Security Compliance: The implementation of mentions must not compromise the encryption integrity of the message, but it’s not required the mention to be end-to-end encrypted.
  • Performance Impact: Ensure that the introduction of mentions does not significantly impact the performance and responsiveness of the chat system.
  • User Experience: The user interface for mentions in encrypted rooms should be seamless and intuitive, without requiring additional steps or complications for the user.
  • Accessibility and Compatibility: Ensure that mentions are accessible and function consistently across all supported devices and platforms.
  • Create a new setting

Issue(s)

Steps to test or reproduce

Further comments

https://rocketchat.atlassian.net/browse/E2EE2-8

Copy link
Contributor

dionisio-bot bot commented May 28, 2024

Looks like this PR is ready to merge! 🎉
If you have any trouble, please check the PR guidelines

Copy link

changeset-bot bot commented May 28, 2024

🦋 Changeset detected

Latest commit: 1eeff2d

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 34 packages
Name Type
@rocket.chat/meteor Minor
@rocket.chat/core-typings Minor
@rocket.chat/i18n Patch
@rocket.chat/api-client Patch
@rocket.chat/apps Patch
@rocket.chat/core-services Patch
@rocket.chat/cron Patch
@rocket.chat/ddp-client Patch
@rocket.chat/fuselage-ui-kit Major
@rocket.chat/gazzodown Major
@rocket.chat/livechat Patch
@rocket.chat/model-typings Patch
@rocket.chat/rest-typings Minor
@rocket.chat/ui-contexts Major
@rocket.chat/account-service Patch
@rocket.chat/authorization-service Patch
@rocket.chat/ddp-streamer Patch
@rocket.chat/omnichannel-transcript Patch
@rocket.chat/presence-service Patch
@rocket.chat/queue-worker Patch
@rocket.chat/stream-hub-service Patch
@rocket.chat/license Patch
@rocket.chat/omnichannel-services Patch
@rocket.chat/pdf-worker Patch
@rocket.chat/presence Patch
rocketchat-services Patch
@rocket.chat/mock-providers Patch
@rocket.chat/web-ui-registration Major
@rocket.chat/uikit-playground Patch
@rocket.chat/models Patch
@rocket.chat/ui-avatar Major
@rocket.chat/ui-client Major
@rocket.chat/ui-video-conf Major
@rocket.chat/instance-status Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@hugocostadev hugocostadev changed the title Feat/e2e messages mentions feat: E2EE messages mentions May 28, 2024
Copy link

codecov bot commented May 28, 2024

Codecov Report

Attention: Patch coverage is 71.42857% with 2 lines in your changes missing coverage. Please review.

Project coverage is 59.70%. Comparing base (636d32d) to head (1eeff2d).
Report is 14 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff            @@
##           develop   #32510    +/-   ##
=========================================
  Coverage    59.70%   59.70%            
=========================================
  Files         2551     2551            
  Lines        62792    62908   +116     
  Branches     14102    14128    +26     
=========================================
+ Hits         37492    37562    +70     
- Misses       22893    22929    +36     
- Partials      2407     2417    +10     
Flag Coverage Δ
unit 76.90% <71.42%> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

@hugocostadev hugocostadev marked this pull request as ready for review June 3, 2024 20:17
@hugocostadev hugocostadev requested review from a team as code owners June 3, 2024 20:17
apps/meteor/app/mentions/server/Mentions.ts Outdated Show resolved Hide resolved
apps/meteor/app/mentions/server/Mentions.ts Outdated Show resolved Hide resolved
apps/meteor/client/startup/e2e.ts Outdated Show resolved Hide resolved
@hugocostadev hugocostadev added this to the 7.0 milestone Jun 7, 2024
.changeset/late-planes-sniff.md Outdated Show resolved Hide resolved
Copy link
Member

@MarcosSpessatto MarcosSpessatto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a description to the PR?

@hugocostadev hugocostadev marked this pull request as draft July 10, 2024 13:58
@hugocostadev hugocostadev marked this pull request as ready for review July 15, 2024 16:12
yash-rajpal
yash-rajpal previously approved these changes Jul 16, 2024
apps/meteor/app/mentions/server/Mentions.ts Outdated Show resolved Hide resolved
apps/meteor/app/mentions/server/Mentions.ts Outdated Show resolved Hide resolved
apps/meteor/client/startup/e2e.ts Show resolved Hide resolved
apps/meteor/tests/e2e/e2e-encryption.spec.ts Show resolved Hide resolved
@milton-rucks milton-rucks modified the milestones: 7.0, 6.13 Aug 29, 2024
@jessicaschelly jessicaschelly added the stat: QA assured Means it has been tested and approved by a company insider label Sep 17, 2024
@dionisio-bot dionisio-bot bot added the stat: ready to merge PR tested and approved waiting for merge label Sep 17, 2024
@dionisio-bot dionisio-bot bot removed the stat: ready to merge PR tested and approved waiting for merge label Sep 17, 2024
Copy link
Contributor

github-actions bot commented Sep 17, 2024

PR Preview Action v1.4.8
Preview removed because the pull request was closed.
2024-09-20 00:15 UTC

@ggazzo ggazzo merged commit 274f4f5 into develop Sep 20, 2024
51 checks passed
@ggazzo ggazzo deleted the feat/e2e-messages-mentions branch September 20, 2024 00:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stat: QA assured Means it has been tested and approved by a company insider
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants