feat: attach sanitized image and opt-in diagnostics to feedback - #245
Open
kalvinnchau wants to merge 9 commits into
Open
kalvinnchau wants to merge 9 commits into
kalvinnchau wants to merge 9 commits into
Conversation
kalvinnchau
added this pull request to stack #246
September 24, 2026 22:13
kalvinnchau
force-pushed
the
am/feedback-media
branch
from
September 24, 2026 23:35
d447692 to
24f59a8
Compare
kalvinnchau
force-pushed
the
am/feedback-media
branch
2 times, most recently
from
September 25, 2026 01:42
725fdae to
c5c6beb
Compare
kalvinnchau
force-pushed
the
am/feedback-media
branch
3 times, most recently
from
September 25, 2026 04:32
6e11970 to
3ba0f12
Compare
Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz>
Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz>
Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz>
Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz>
Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz>
Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz>
Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz>
Keep one attempt fence for dismissal, preparation, and uploads; assert serialized diagnostics preflight at the admitted boundary. Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz>
Retain caller/session cancellation and verify that channel loss and cache clearing do not abort a channel-less feedback upload. Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz>
kalvinnchau
force-pushed
the
am/feedback-media
branch
from
September 25, 2026 05:18
3ba0f12 to
31006ba
Compare
kalvinnchau
marked this pull request as ready for review
September 25, 2026 05:19
kalvinnchau
requested review from
a team,
comp615 and
wesbillman
as code owners
September 25, 2026 05:19
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Scope
Stack 2 on #242. Attaches sanitized images and opt-in diagnostics to private kind 42000 feedback using the session-bound ordinary media uploader, matching Buzz Desktop. Text enters the deployment feedback inbox; uploaded media remains subject to ordinary deployment media-read policy, not inbox-only access. Images upload when selected, diagnostics only when explicitly opted in at send, and closing/removing/discarding does not remotely delete uploads.
Upload policy alignment
Kalvin explicitly accepted using the ordinary Blossom media upload path for feedback images and opt-in diagnostics to match
block/buzzDesktop, rather than requiring new operator-only attachment storage for this parity change. Feedback text remains in the private kind 42000 inbox; attachments follow the deployment’s ordinary media-read policy and are not operator-only. The UI discloses this before image selection and warns that removing or discarding feedback does not delete uploaded blobs. Desktop source trace:block/buzzat20131488528e35e6c50f4ccdb0490a9135c28edf,desktop/src/features/settings/hooks/useSendFeedback.ts→desktop/src-tauri/src/commands/media.rs(PUT /upload). This records the accepted access tradeoff, not proof of deployed media policy or native execution.Implementation
Evidence and deferred
No browser cases added or removed. Do not interpret green source-level tests as remote media confidentiality.