Jitsi Meet - Secure, Simple and Scalable Video Conferences that you use as a standalone app or embed in your web application.
This report summarizes scanner evidence for jitsi/jitsi-meet, a TypeScript project with 30,170 GitHub stars. SynthScan examined 434,595 lines of code across 2725 source files, recording 773 pattern matches distributed across 11 syntactic categories. The legacy adjusted pattern signal is 2.4 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 613 finding(s).
Are imports declared and package/API names verified? 13 finding(s).
Are wrappers, guards, and repeated structures necessary? 599 finding(s).
Which changes need focused human review? 773 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 773 distinct pattern matches across 11 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | conference.js | 204 | function isTrackHiddenFromRecorder(participant, track) { | CODE |
| LOW | resources/prosody-plugins/mod_muc_meeting_id.lua | 237 | local function filterTranscriptionResult(event) | CODE |
| LOW | resources/prosody-plugins/mod_conference_duration.lua | 14 | function getMeetingCreatedTSConfig(room) | CODE |
| LOW | tests/wdio.conf.ts | 75 | function generateCapabilitiesFromSpecs(): { capabilities: Record<string, any>; excludedSpecs: string[]; } { | CODE |
| LOW | tests/specs/misc/reactionShortcuts.spec.ts | 13 | function getRegisteredShortcutKeys() { | CODE |
| LOW | tests/specs/misc/reactionShortcuts.spec.ts | 21 | function getPersistedCtrlAltReactionShortcutsPreference() { | CODE |
| LOW | tests/specs/misc/recordingDialogConfig.spec.ts | 40 | async function isLocalRecordingSupportedByBrowser(): Promise<boolean> { | CODE |
| LOW | tests/specs/misc/recordingDialogConfig.spec.ts | 79 | async function isDropboxEnabledInDeployment(): Promise<boolean> { | CODE |
| LOW | tests/specs/misc/timeTimer.spec.ts | 54 | function injectNonParticipantMessage(p: Participant, id: string | null): Promise<void> { | CODE |
| LOW | tests/specs/ui/selfView.spec.ts | 53 | async function toggleSelfViewFromSettings(participant: Participant, hide: boolean) { | CODE |
| LOW | tests/specs/ui/oneOnOne.spec.ts | 81 | function configureToolbarsToHideQuickly(participant: Participant): Promise<void> { | CODE |
| LOW | tests/specs/iframe/lowBandwidthMode.spec.ts | 22 | async function setLowBandwidthModeAndExpect(enable: boolean) { | CODE |
| LOW | tests/specs/iframe/chat.spec.ts | 125 | async function testSendGroupMessageWithChatOpen(sender: Participant, receiver: Participant) { | CODE |
| LOW | tests/specs/jaas/recordingTranscription.spec.ts | 128 | async function waitForRecordingNotification(p: Participant, timeoutMsg: string): Promise<void> { | CODE |
| LOW | tests/specs/jaas/recordingTranscription.spec.ts | 139 | async function dismissRecordingNotification(p: Participant): Promise<void> { | CODE |
| LOW | tests/specs/jaas/recordingTranscription.spec.ts | 168 | async function waitForTranscriptionRunning(p: Participant): Promise<void> { | CODE |
| LOW | tests/specs/jaas/recordingTranscription.spec.ts | 181 | async function waitForTranscriptionStopped(p: Participant, timeout = 20_000): Promise<void> { | CODE |
| LOW | tests/specs/jaas/recordingTranscription.spec.ts | 212 | async function waitForRecordingStopExecuted(p: Participant, transcription = false): Promise<void> { | CODE |
| LOW | tests/specs/jaas/presence.spec.ts | 24 | async function checkParticipantJoinedHook(p: Participant) { | CODE |
| LOW | tests/specs/jaas/transcriptions.spec.ts | 23 | async function clearTranscriptionStatusChange() { | CODE |
| LOW | tests/specs/jaas/transcriptions.spec.ts | 33 | async function waitForTranscriptionStatusChange(expectedOn: boolean) { | CODE |
| LOW | tests/specs/helpers/DialIn.ts | 15 | export async function waitForAudioFromDialInParticipant(participant: Participant) { | CODE |
| LOW | tests/specs/media/activeSpeaker.spec.ts | 472 | async function setAlphabeticalDisplayNames( | CODE |
| LOW | tests/specs/media/lowBandwidthMode.spec.ts | 68 | async function setLowBandwidthModeAndCheck(enable: boolean) { | CODE |
| LOW | tests/prosody/mod_muc_breakout_rooms_spec.js | 75 | async function waitForBreakoutUpdateWhere(client, predicate, timeout = 6000) { | CODE |
| LOW | tests/prosody/mod_room_metadata_component_spec.js | 491 | function connectModeratorWithFeatures(roomJid, features) { | CODE |
| LOW | tests/prosody/mod_filter_iq_rayo_spec.js | 319 | async function joinAsTranscriberStartedBy(roomJid, userId) { | CODE |
| LOW | tests/prosody/helpers/test_observer.js | 75 | export async function setHideDisplayNameForGuests(roomJid, hidden) { | CODE |
| LOW | tests/prosody/helpers/test_observer.js | 316 | export async function getAudioTranslationRequests(roomJid) { | CODE |
| LOW | tests/malleus/MalleusParticipant.ts | 33 | function extraParamsToAppendString(params?: string): string | undefined { | CODE |
| LOW | tests/helpers/participants.ts | 306 | export async function checkForScreensharingTile(sharer: Participant, observer: Participant, reverse = false) { | CODE |
| LOW | modules/API/external/functions.js | 67 | export function isMultipleAudioInputSupported(transport) { | CODE |
| LOW | react/features/filmstrip/functions.any.ts | 111 | export function updateRemoteParticipantsOnLeave(store: IStore, participantId: string | null = null) { | CODE |
| LOW | react/features/filmstrip/functions.any.ts | 146 | export function calculateFullyVisibleParticipantsCount( | CODE |
| LOW | react/features/filmstrip/actions.any.ts | 71 | export function setVisibleRemoteParticipants(startIndex: number, endIndex: number, fullyVisibleCount?: number) { | CODE |
| LOW | react/features/filmstrip/actions.web.ts | 144 | export function setVerticalViewDimensions() { | CODE |
| LOW | react/features/filmstrip/actions.web.ts | 254 | export function setHorizontalViewDimensions() { | CODE |
| LOW | react/features/filmstrip/actions.web.ts | 288 | export function setStageFilmstripViewDimensions() { | CODE |
| LOW | react/features/filmstrip/actions.web.ts | 520 | export function togglePinStageParticipant(participantId: string) { | CODE |
| LOW | react/features/filmstrip/actions.web.ts | 543 | export function setScreensharingTileDimensions() { | CODE |
| LOW | react/features/filmstrip/actions.web.ts | 586 | export function setScreenshareFilmstripParticipant(participantId?: string) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 78 | export function shouldRemoteVideosBeVisible(state: IReduxState) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 144 | export function calculateThumbnailSizeForHorizontalView(clientHeight = 0) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 170 | export function calculateThumbnailSizeForVerticalView(clientWidth = 0, filmstripWidth = 0, isResizable = false) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 208 | export function getTileDefaultAspectRatio(disableResponsiveTiles: boolean, | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 223 | export function getNumberOfPartipantsForTileView(state: IReduxState) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 242 | export function calculateNonResponsiveTileViewDimensions(state: IReduxState) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 285 | export function calculateResponsiveTileViewDimensions({ | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 423 | export function calculateThumbnailSizeForTileView({ | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 512 | export function getVerticalFilmstripVisibleAreaWidth() { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 531 | export function computeDisplayModeFromInput(input: any) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 620 | export function getIndicatorsTooltipPosition(thumbnailType?: string) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 725 | export function getPinnedActiveParticipants(state: IReduxState) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 739 | export function isStageFilmstripAvailable(state: IReduxState, minParticipantCount = 0) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 795 | export function getThumbnailTypeFromLayout(currentLayout: string, filmstripType: string) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 818 | export function getScreenshareFilmstripParticipantId(state: IReduxState) { | CODE |
| LOW | react/features/filmstrip/functions.web.ts | 850 | export function getThumbnailBackgroundColor(theme: Theme): string { | CODE |
| LOW | react/features/filmstrip/functions.native.ts | 51 | export function shouldRemoteVideosBeVisible(state: IReduxState) { | CODE |
| LOW | react/features/filmstrip/functions.native.ts | 91 | export function getPinnedActiveParticipants(_state: any) { | CODE |
| LOW | react/features/filmstrip/functions.native.ts | 102 | export function getTileViewParticipantCount(stateful: IStateful) { | CODE |
| 392 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/specs/jaas/recordingTranscription.spec.ts | 230 | // ─── Nudge notification tests ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/specs/jaas/recordingTranscription.spec.ts | 330 | // ─── Manage-mode (session active) dialog tests ─────────────────────────────── | COMMENT |
| MEDIUM | tests/specs/jaas/recordingTranscription.spec.ts | 602 | // ─── Button visibility ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_auth_ban_spec.js | 20 | // ─── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_auth_ban_spec.js | 73 | // ─── Tests ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_auth_ban_spec.js | 84 | // ── No token ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_auth_ban_spec.js | 97 | // ── Non-VPaaS tenant ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_auth_ban_spec.js | 115 | // ── VPaaS — access granted ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_auth_ban_spec.js | 130 | // ── VPaaS — access denied ───────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/prosody/mod_muc_auth_ban_spec.js | 146 | // ── Cached ban ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/prosody/mod_muc_auth_ban_spec.js | 174 | // ── HTTP error — fail open ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_auth_ban_spec.js | 194 | // ── Non-JSON 200 — should fail open without crashing ───────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_auth_ban_spec.js | 219 | // ── Non-JSON 200 — Lua error in callback ───────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_end_meeting_spec.js | 12 | // ─── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_end_meeting_spec.js | 39 | // ─── Tests ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_end_meeting_spec.js | 43 | // ── Authentication ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_end_meeting_spec.js | 97 | // ── Parameter validation ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_end_meeting_spec.js | 114 | // ── Room termination ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_filter_iq_jibri_spec.js | 10 | // ─── HTTP helpers ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_filter_iq_jibri_spec.js | 62 | // ─── Test setup ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_filter_iq_jibri_spec.js | 98 | // ─── recording (recording_mode="file") ─────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_filter_iq_jibri_spec.js | 146 | // ─── livestreaming (recording_mode="stream") ───────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_filter_iq_jibri_spec.js | 191 | // ─── SIP gateway (sipaddress) ──────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_filter_iq_jibri_spec.js | 293 | // ─── robustness: nil room ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_filter_iq_jibri_spec.js | 354 | // ─── attribute case normalisation ──────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_system_chat_message_spec.js | 12 | // ─── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_system_chat_message_spec.js | 37 | // ─── Tests ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_system_chat_message_spec.js | 41 | // ── Authentication ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_system_chat_message_spec.js | 93 | // ── Parameter validation ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_system_chat_message_spec.js | 199 | // ── Room lookup ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_system_chat_message_spec.js | 213 | // ── Message delivery ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_resource_validate_spec.js | 62 | // ── Basic pattern validation ────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_resource_validate_spec.js | 133 | // ── Reserved resources ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_resource_validate_spec.js | 206 | // ── Anonymous strict mode ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_resource_validate_spec.js | 239 | // ── Nick (resource) changes ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_limit_messages_spec.js | 16 | // ─── Helpers ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_limit_messages_spec.js | 101 | // ─── Tests ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_limit_messages_spec.js | 112 | // ── within limit ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_limit_messages_spec.js | 130 | // ── at cap boundary ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_limit_messages_spec.js | 181 | // ── after cap is set ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_limit_messages_spec.js | 201 | // ── message type exemptions ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_limit_messages_spec.js | 249 | // ── check_token × token_verification interaction ────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_limit_messages_spec.js | 298 | // ── filter_messages fires before muc_limit_messages (priority guard) ──────── | COMMENT |
| MEDIUM | tests/prosody/mod_muc_limit_messages_spec.js | 339 | // ── filter_messages × muc_limit_messages hook-ordering interaction ──────── | COMMENT |
| MEDIUM | tests/prosody/mod_token_verification_spec.js | 7 | // ─── Constants ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_token_verification_spec.js | 19 | // ─── Tests ─────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_token_verification_spec.js | 30 | // ── Join access control ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_token_verification_spec.js | 175 | // ── token_verification_require_token_for_moderation ────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_jibri_session_spec.js | 101 | // ─── client → jicofo ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_end_conference_spec.js | 13 | // ─── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_end_conference_spec.js | 54 | // ─── Tests ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_end_conference_spec.js | 58 | // ── Successful destruction ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_end_conference_spec.js | 112 | // ── Non-moderator / non-occupant ───────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_end_conference_spec.js | 155 | // ── Message filtering ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_room_metadata_component_spec.js | 16 | // ── Helpers ─────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_room_metadata_component_spec.js | 118 | // ─── Tests ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_room_metadata_component_spec.js | 129 | // ── Authorization ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_room_metadata_component_spec.js | 178 | // ── Blocked keys ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_room_metadata_component_spec.js | 227 | // ── Value deduplication ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/prosody/mod_room_metadata_component_spec.js | 269 | // ── Broadcast delivery ──────────────────────────────────────────────────── | COMMENT |
| 87 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | interface_config.js | 221 | // Please use defaultLogoUrl from config.js | COMMENT |
| LOW | config.js | 61 | // https://github.com/jitsi/jitsi-meet/issues/7376 | COMMENT |
| LOW | config.js | 81 | COMMENT | |
| LOW | config.js | 101 | // Enables the use of the codec selection API supported by the browsers . | COMMENT |
| LOW | config.js | 121 | // Log the audio levels. | COMMENT |
| LOW | config.js | 141 | COMMENT | |
| LOW | config.js | 161 | // Disables self-view tile. (hides it from tile view and from filmstrip) | COMMENT |
| LOW | config.js | 181 | // screenshotCapture : { | COMMENT |
| LOW | config.js | 201 | // Media | COMMENT |
| LOW | config.js | 221 | // Enabling this will hide the "Show More" link in the GSM popover that can be | COMMENT |
| LOW | config.js | 241 | // from the URL hash (#config.startWithAudioMuted=true) or the user's saved | COMMENT |
| LOW | config.js | 261 | // opusMaxAverageBitrate: null, // Value to fit the 6000 to 510000 range. | COMMENT |
| LOW | config.js | 281 | // // A code must be 1-20 ASCII letters: prosody's audio-translation component refuses any | COMMENT |
| LOW | config.js | 301 | // installation. Specifically, these files are needed: | COMMENT |
| LOW | config.js | 321 | // inboundModels: { | COMMENT |
| LOW | config.js | 341 | // allowedDevicesExt: 'bvc-allowed-ext.txt', | COMMENT |
| LOW | config.js | 361 | // disableLowerHandByModerator: false, | COMMENT |
| LOW | config.js | 381 | // // Specifies whether participants in speaker stats should be ordered or not, and with what priority. | COMMENT |
| LOW | config.js | 401 | // 'hasLeft', <- The ones that have left in the bottom | COMMENT |
| LOW | config.js | 421 | // }, | COMMENT |
| LOW | config.js | 441 | // min: 5, | COMMENT |
| LOW | config.js | 461 | // Enable the dropbox integration. | COMMENT |
| LOW | config.js | 481 | // // If true, the notification for recording start will display a link to download the cloud recording. | COMMENT |
| LOW | config.js | 501 | // recordingService: { | COMMENT |
| LOW | config.js | 521 | // fileRecordingsServiceSharingEnabled: false, | COMMENT |
| LOW | config.js | 541 | // // Whether to enable live streaming or not. | COMMENT |
| LOW | config.js | 561 | COMMENT | |
| LOW | config.js | 581 | // // Important languages to show on the top of the language list. | COMMENT |
| LOW | config.js | 601 | // customLanguages: { | COMMENT |
| LOW | config.js | 621 | // | COMMENT |
| LOW | config.js | 641 | // autoHideTimeout: 5000, | COMMENT |
| LOW | config.js | 661 | // | COMMENT |
| LOW | config.js | 681 | // maxBitratesVideo: { | COMMENT |
| LOW | config.js | 701 | // maxBitratesVideo: { | COMMENT |
| LOW | config.js | 721 | // // at least 360 pixels tall. If the thumbnail height reaches 720 pixels then the application will switch to | COMMENT |
| LOW | config.js | 741 | // Disables or enables RTX (RFC 4588) (defaults to false). | COMMENT |
| LOW | config.js | 761 | COMMENT | |
| LOW | config.js | 781 | // disableResponsiveTiles: false, | COMMENT |
| LOW | config.js | 801 | COMMENT | |
| LOW | config.js | 821 | // enableChat: true, | COMMENT |
| LOW | config.js | 841 | // Enabling the close page will ignore the welcome page redirection when | COMMENT |
| LOW | config.js | 861 | COMMENT | |
| LOW | config.js | 881 | // and microsoftApiApplicationClientID | COMMENT |
| LOW | config.js | 901 | // // Show the Picture-in-Picture toolbar button when supported. Defaults to true. | COMMENT |
| LOW | config.js | 921 | // enabled: true, | COMMENT |
| LOW | config.js | 941 | // If etherpad integration is enabled, setting this to true will | COMMENT |
| LOW | config.js | 961 | // gravatar: { | COMMENT |
| LOW | config.js | 981 | // - if `toolbarButtons` is undefined, we fallback to enabling all buttons on the UI | COMMENT |
| LOW | config.js | 1001 | // 'profile', | COMMENT |
| LOW | config.js | 1021 | // initialTimeout: 20000, | COMMENT |
| LOW | config.js | 1041 | // [ 'microphone', 'camera', 'desktop', 'chat', 'raisehand', 'reactions', 'participants-pane', 'tileview' ], | COMMENT |
| LOW | config.js | 1061 | // `preventExecution` flag on false will not prevent execution of the click/tap | COMMENT |
| LOW | config.js | 1081 | // 'hangup', | COMMENT |
| LOW | config.js | 1101 | // 'select-background', | COMMENT |
| LOW | config.js | 1121 | // `preventExecution` flag on false will not prevent execution of the click/tap | COMMENT |
| LOW | config.js | 1141 | // 'mute-others', | COMMENT |
| LOW | config.js | 1161 | COMMENT | |
| LOW | config.js | 1181 | // Stats | COMMENT |
| LOW | config.js | 1201 | // enableFaceCentering: false, | COMMENT |
| LOW | config.js | 1221 | // feedbackPercentage: 100, | COMMENT |
| 80 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/prosody/lua/util_spec.lua | 293 | assert.is_false(M.starts_with_one_of("user@example.com", { "recorder@", "jibri@" })) | CODE |
| LOW | tests/prosody/lua/util_spec.lua | 303 | assert.is_false(M.starts_with_one_of("user@example.com", prefixes)) | CODE |
| LOW | tests/prosody/lua/util_spec.lua | 678 | assert.is_nil(M.get_sip_jibri_email_prefix("user@example.com")) | CODE |
| LOW | tests/prosody/lua/util_spec.lua | 722 | assert.is_false(M.is_jibri("user@example.com")) | CODE |
| LOW | tests/prosody/lua/util_spec.lua | 731 | local occupant = { jid = "user@example.com" } | CODE |
| LOW | tests/prosody/lua/util_spec.lua | 751 | assert.is_false(M.is_transcriber("user@example.com")) | CODE |
| LOW | lang/main-lv.json | 165 | "placeholder": "Meklēt tērzēšanā", | CODE |
| LOW | lang/main-fa.json | 170 | "placeholder": "جستجو در گفتگو", | CODE |
| LOW | lang/main-es.json | 172 | "placeholder": "Buscar en el chat", | CODE |
| LOW | lang/main.json | 175 | "placeholder": "Search in chat", | CODE |
| LOW | lang/main-ca.json | 172 | "placeholder": "Cerca al xat", | CODE |
| LOW | lang/main-az.json | 175 | "placeholder": "Söhbətdə axtar", | CODE |
| LOW | lang/main-nl.json | 172 | "placeholder": "Zoeken in chat", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/prosody/mod_muc_auth_ban_spec.js | 154 | // Step 1: Ban the token — cb fires, token enters the LRU cache. | COMMENT |
| LOW⚡ | tests/prosody/mod_muc_auth_ban_spec.js | 161 | // Step 2: Reset the mock to allow. A fresh token must now succeed, | COMMENT |
| LOW⚡ | tests/prosody/mod_muc_auth_ban_spec.js | 169 | // Step 3: Same banned token must still be rejected (cache wins over mock). | COMMENT |
| LOW | modules/UI/videolayout/LargeVideoManager.js | 283 | // with the same source name. In order to add the streaming status listener we need to check if the isP2P | COMMENT |
| LOW | react/features/app/actions.native.ts | 85 | // We need to check if the location is the same with the previous one. | COMMENT |
| LOW | react/features/chat/subscriber.web.ts | 49 | // if userSet is set, we need to check if it is within the bounds and potentially adjust it. | COMMENT |
| LOW | react/features/mobile/react-native-sdk/middleware.js | 150 | * we need to check if native modules are being used or not. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | react/features/mobile/external-api/middleware.ts | 721 | // XXX In lib-jitsi-meet and jitsi-meet we utilize errors in the form of | COMMENT |
| MEDIUM | react/features/base/conference/functions.ts | 165 | // XXX The Web version of Jitsi Meet does not utilize | COMMENT |
| MEDIUM | react/features/base/util/uri.ts | 261 | // whitespace. Anyway, the Jitsi Meet app is not known to utilize unencoded | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/prosody/mod_muc_auth_ban_spec.js | 154 | // Step 1: Ban the token — cb fires, token enters the LRU cache. | COMMENT |
| LOW⚡ | tests/prosody/mod_muc_auth_ban_spec.js | 161 | // Step 2: Reset the mock to allow. A fresh token must now succeed, | COMMENT |
| LOW⚡ | tests/prosody/mod_muc_auth_ban_spec.js | 169 | // Step 3: Same banned token must still be rejected (cache wins over mock). | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ios/scripts/release-sdk-lite.sh | 66 | echo "Finished! Don't forget to push the tags and releases repo artifacts." | CODE |
| LOW | ios/scripts/release-sdk.sh | 66 | echo "Finished! Don't forget to push the tags and releases repo artifacts." | CODE |
| LOW | android/scripts/release-sdk.sh | 50 | echo "Finished! Don't forget to push the tag and the Maven repo artifacts." | CODE |
| LOW | modules/recorder/Recorder.js | 30 | // which are to be followed so don't forget to removeCommand before | COMMENT |
| LOW | …act/features/welcome/components/WelcomePage.native.tsx | 133 | // NOTE: when re-enabling, don't forget to uncomment the respective _mapStateToProps line too | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | resources/register-jaas-account.sh | 28 | # Creating the challenge file | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | android/scripts/release-sdk.sh | 26 | # Check if an SDK with that same version has already been released | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | react/features/dynamic-branding/middleware.native.ts | 24 | // TODO: implement support for gradients. | COMMENT |