element-hq / element-hq/element-call

MatrixRTCSessionManager is tracking encryption keys even when not needed

Open
#2,566 0 comments 1 reaction 0 assignees View on GitHub
A-Performance T-Defect
Dominant language
TypeScript
Stars
996
Forks
213
Avg merge
1d 6h
Merged PRs (30d)
54

Description

Currently the js-sdk always tracks the encryption keys even if the client never does anything with media.

The impact at the moment is two fold:

- Element Web is doing unnecessary duplicate tracking of encryption keys
- It makes for confusing log lines like in https://github.com/element-hq/element-call/issues/2561

Proposal: we make it so that `MatrixRTCSessionManager` doesn't track encryption keys by default, but instead the client has to call something like `MatrixRTCSessionManager.startTrackingEncryptionKeys()` which EC would use.

Contributor guide

Open the contributing guide

Research direction

Start by locating MatrixRTCSessionManager and tracing where encryption-key tracking begins, then inspect how Element Web and Element Call use the session manager. Done means tracking is opt-in through a client-facing start method, with no tracking or confusing log lines for clients that do not use media.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.