US-2: Sending an image from another device

Given the user sends an image from their iPhone (not from AQUAPING) When the message syncs to BlueBubbles and appears in AQUAPING Then the system describes the image and shows the description bubble And the user sees confirmation of what they sent

US-3: Multiple images in one message

Given a message contains 3 image attachments When the message appears in the chat Then the system describes each image individually And each description appears as a separate special bubble And the bubbles are grouped visually (e.g., minimal spacing between them, or a subtle grouping indicator)

US-4: Image description fails

Given a message has an image attachment When the vision API call fails (rate limit, timeout, invalid image) Then the chat shows a placeholder bubble: “[Image — could not describe]” And the user can retry the description manually (e.g., press A on the bubble) And the failure is logged for debugging