FR-3: Merge Strategy
- Append new messages to
self.messageswithout rebuilding the entire list - Preserve existing message objects (don’t mutate them)
- Maintain chronological order (messages from BlueBubbles are returned newest-first; the client reverses them to oldest-first for bottom-up scrolling)