- add chat_updated realtime event and dynamic chat subscriptions
- auto-join invite links in web app
- implement Telegram-like settings panel (general/notifications/privacy)
- add browser notification preferences and keyboard send mode
- improve chat list with last message preview/time and online badge
- rework chat members UI with context actions and role crowns
- make minio bucket downloadable for direct media links
- switch object keys to random uuid-based names
- add client-side image compression before upload
- add S3_PUBLIC_ENDPOINT_URL for browser-reachable presigned urls
- support both public/internal file url validation
- configure MinIO bucket CORS in minio-init
- update env examples and docs