5dad0cd39b
Backend now guarantees msg_type is always populated. Changed all server message handlers (stream_chunk, stream_end, thinking, tool_progress, error, voice_transcript, review) to use wsMsg.msgType with safe fallback defaults instead of hardcoded values. Also added missing ProGuard keep rules for UI screens/components/overlay to prevent R8 from stripping composables called via navigation lambdas. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>