A staged attachment and its upload.
Whether the current object has been destroyed and its reference is gone in the Rust side.
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