Since bug 1672851, the "partial openpgp message" reminder is shown, only, if a decrypted (or signed decoded) message is seen in function notifyMessageDecryptDone.
Unfortunately, we have a timing problem, which was also noticed in bug 1681887.
For certain messages, depending on encodings, the openpgp processing will go async. It will retry, and for some retries, it opens a stream and a listener. (We haven't yet implemented a way to reliable notify us when all processing is done.)
As a consequence, the check done in notifyMessageDecryptDone, which checks that Enigmail.msg.decryptedMessage is set, might run at a time when it's not yet done...
I think for the purpose of showing the "partial" reminder, we don't need to have the final result yet. It's OK to show that reminder, whenever we learn that the original message is partial.
I understand the original motivation behind this check. In some scenarios, when processing fails, we might not reduce the message display to the subset. However, I intend to change that very soon as part of another issue. We can land those changes together with this one (I'll track that).