Image and video posts failed at the presigned-url step: the reader looked
for the upload slot under data keys files/urls/attachments/presignedUrls but
Minnect returns it under `uploads` ({ data: { uploads: [{ attachmentId,
presignedUrl, s3Key, index }] } }), so no slot was found and every media
post returned post_failed.
Read the `uploads` key (under data or at the root), add per-step pipeline
logging that names the failing step with its status and message (never a
token, URL or bytes), and add a regression test for the real response shape.