Skip to content

Chat 2.0.31: the paste/drop attachment path publishes the image as given - #138

Merged
QuickMythril merged 1 commit into
mainfrom
fix/attachment-no-recompress
Sep 16, 2026
Merged

QuickMythril merged 1 commit into
mainfrom
fix/attachment-no-recompress

Conversation

@QuickMythril

Copy link
Copy Markdown
Member

Found by the live acceptance of 2.0.30 with the seed test account on the released Home beta.11: dropping the 1.9 MB polar-drag.png now correctly skips the inline path — and lands in the attachment chip as polar-drag.webp, 50 KB. The bytes attachment path (#105, hosts without Home's picker: paste/drop) re-encoded every non-GIF image to WebP at max width 1200 / quality 0.6, so the published resource was still not the user's image. The picker path never did this.

Change: compressImage removed; prepareLocalAttachment base64-encodes the File exactly as given (name, type, bytes). An image over the 10 MiB IMAGE cap is the user's to shrink. Developers reference row "Inline image re-encode" → "Image re-encoding: None — published, inlined or attached exactly as given". README; version 2.0.31.

Test: byte-identity of the staged payload for a PNG (name/type/size/base64). 922/922, build clean.

With #137 this closes the rule completely: Chat never modifies a user's image on any path.

🤖 Generated with Claude Code

https://claude.ai/code/session_01AGDWY3yhSNv2NKTVUBJQBf

Live acceptance of 2.0.30 (seed test account, released beta.11): the
1.9 MB PNG correctly skipped the inline path, then landed in the attachment
chip as "polar-drag.webp, 50 KB" — the bytes attachment path (#105, hosts
without Home's picker) re-encoded every image to WebP at max width 1200 /
quality 0.6 ("Hub's parameters"), so the published resource was still not
the user's image. compressImage is gone: prepareLocalAttachment base64s the
File exactly as given, keeps its name and type, and the 10 MiB IMAGE cap is
the user's to meet. Developers reference row replaced ("Image re-encoding:
none"); README; version 2.0.31. Test pins byte-identity of the staged
payload.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AGDWY3yhSNv2NKTVUBJQBf
@QuickMythril
QuickMythril merged commit 35de141 into main Sep 16, 2026
4 checks passed
@QuickMythril
QuickMythril deleted the fix/attachment-no-recompress branch September 16, 2026 13:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant