makes attachment uploads durable through the existing authored-action idempotency ledger
fingerprints target, metadata, and SHA-256 content so key misuse is rejected
coalesces concurrent retries and replays the confirmed Markdown response
keeps one browser operation key through failed foreground retries and rotates it when the selected file changes
preserves unkeyed API compatibility
Verification
RED observed: duplicate keyed requests called the upstream upload twice
focused: 76 passed
full suite: 942 passed
Closes #471
## Product slice
- makes attachment uploads durable through the existing authored-action idempotency ledger
- fingerprints target, metadata, and SHA-256 content so key misuse is rejected
- coalesces concurrent retries and replays the confirmed Markdown response
- keeps one browser operation key through failed foreground retries and rotates it when the selected file changes
- preserves unkeyed API compatibility
## Verification
- RED observed: duplicate keyed requests called the upstream upload twice
- focused: `76 passed`
- full suite: `942 passed`
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #471
Product slice
Verification
76 passed942 passed