fix: security hardening and Safari stability
- Remove hardcoded JWT_SECRET fallback (crash on boot if unset) - Make LiveKit config optional with 503 guard on token endpoint - Add REST rate limiting via @fastify/rate-limit (auth 10/15m, messages 5/5s, uploads 10/1m, global 60/1m) - Add WebSocket token bucket rate limiter (30 burst, 2/sec refill) - Add DM channel ownership (ownerId) with migration, enforce on add-member - Require friendship to add users to group DMs - Add silent 20Hz oscillator to prevent Safari AudioContext suspension - Move WebSocket heartbeat to Web Worker to bypass Safari background throttling
This commit is contained in:
@@ -149,6 +149,7 @@ export interface ActiveCallInfo {
|
||||
|
||||
export interface DmChannel {
|
||||
id: string;
|
||||
ownerId?: string | null;
|
||||
createdAt: number;
|
||||
members: User[];
|
||||
lastMessage?: DmMessage | null;
|
||||
|
||||
Reference in New Issue
Block a user