A staged attachment and its upload.
The path of the attachment's plaintext file.
The remote attachment to send. It is complete before the upload.
Upload the staged ciphertext. Concurrent calls share one upload. A failed upload stays failed until the app calls upload again; after a backend_rejected failure, upload fails again without a request.
backend_rejected