6634b2b8a2
Audit/repair of the multi-model denoise work so it actually builds and only exposes working, self-hosted models. - Complete the DTLN/DFN3 revert: uninstall @workadventure/noise-suppression and deepfilternet3-noise-filter (package.json + lockfile), drop the unused DTLN asset-copy block from vite.config.js (was shipping ~2MB of unused tflite/wasm), and narrow DenoiseModelId to the bundled models (rnnoise, speex). Coerce any retired persisted model value back to the default. - Fix General.tsx CI typecheck failures introduced by the denoise UI: restore three imports the rewrite deleted (useDateFormatItems, SequenceCardStyle, useTauriUpdater), add the missing denoise/sound imports, and correct hallucinated Folds props (Text has no variant/bold; Box uses alignItems/justifyContent). tsc now passes with 0 errors. - Harden the vite denoise plugin: required RNNoise/Speex/gate assets and the shim now fail the build loudly if missing (instead of a silent warn that shipped a broken ML feature), and the index.html shim injection is verified. - CI: move the cinny-desktop submodule bump into ci.yml as a `trigger-desktop` job gated on `needs: build`, and delete the standalone trigger-desktop.yml. A failing push no longer kicks off the slow Tauri builds in parallel. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
4.0 KiB
4.0 KiB
Lotus Chat — Bug Report & Technical Audit
Date: June 2026
This document tracks identified bugs, edge cases, and architectural discrepancies found during the audit of the Lotus Chat codebase. Recommended fixes are provided for each item.
🚩 Critical & UI Bugs
1. Avatar Decoration Displacement in Profile
File: src/app/components/user-profile/UserHero.tsx
Status: OPEN
- Issue: Avatar decorations appear displaced left of the avatar when viewing the profile modal.
- Root Cause: The
AvatarPresencebadge sticking out to the right shifts the center of theinline-flexcontainer. The decoration centers on the container, not the avatar. - Recommended Fix: Wrap only the
Avatarcomponent withAvatarDecoration.
2. Inconsistent Settings Dropdown Styling
Files: Profile.tsx, SystemNotification.tsx
Status: OPEN
- Issue: Dropdowns for Status Expiry and Notification Sounds use raw HTML
<select>elements. - Recommended Fix: Replace with the custom-styled
Menu+PopOutpattern used inGeneral.tsx.
3. Ringing Modal Fires in Voice Rooms
File: src/app/components/CallEmbedProvider.tsx
Status: OPEN
- Issue: Joining a static voice room triggers the "Incoming Call" ringing.
- Recommended Fix: Check
notification_typein the Matrix RTC event. Only 'ring' should trigger the modal.
4. No Camera Focus During Screenshare
File: src/app/features/call/CallControls.tsx
Status: OPEN
- Issue: When someone is screensharing and another participant turns on their camera, there is no way to switch the primary display to the camera or go fullscreen on it.
- Recommended Fix: Implement a "Focus" toggle on participant tiles that overrides the automatic screenshare spotlight.
5. Chat Background Animation Flickering
File: src/app/features/lotus/chatBackground.ts
Status: OPEN
- Issue: Some animated backgrounds (like Fireflies) cause flickering/flashing of the message text and composer area on certain browsers/GPUs.
- Recommended Fix: Ensure animations are scoped strictly to background properties (
background-position,background-size) and do not use properties likefilteroropacityon the main container.
6. Avatar Decorations not displaying in Element Call UI
- Issue: When in a voice call or room with users it displays the avatar of the users and their mute status etc... but doesn't display their avatar decorations on their pictures.
7. DM and Group Message Calls
- Issue: Call ring is very loud and not customizable, also if the user is already in an active call/or voice room it won't ring at all until the user leaves.
8. Seasonal Themes and Chat Backgrounds need EXTREME design improvements.
- Issue: Basic css or random moving lines are not good artwork or design theory. Requires extensive research on css backgrounds wallpapers and app theming, these should be multi-day projects PER background and theme. As if a whole team spent a entire project sprint on a single one.
📱 PWA & Mobile Issues
1. Exclusive Background vs. Seasonal Choice
Status: OPEN
- Issue: Users can have both a Chat Background and a Seasonal Theme active, causing visual clutter and excessive GPU usage on mobile.
- Recommended Fix: Implement a "Choose One" toggle in Settings.
🔍 Technical & Performance Refinements
1. Decrypted Media Memory Leak (Gallery & Lightbox)
File: src/app/features/room/MediaGallery.tsx
Status: OPEN
- Issue: Every image in the gallery history is decrypted and converted to a Blob URL simultaneously.
- Recommended Fix: Implement virtualization for the gallery grid.
2. Scheduled Messages are Ephemeral
File: src/app/state/scheduledMessages.ts
Status: OPEN
- Issue: Refreshing the page clears the "Scheduled" tray, making it impossible for users to see or cancel messages they have already scheduled.
- Recommended Fix: Persist the scheduled message metadata in
localStorage.