Release v16.0.1
Summary
A read model's [PII] property could intermittently fail to decrypt — coming back as raw ciphertext or throwing rsa routines::padding check failed — when its subject also owned another read model that encrypted PII (for example a sibling read model with a [ChildrenFrom] child collection). Subject encryption keys are now provisioned exactly once per subject, so previously-encrypted PII always decrypts.
Fixed
- Fixed a read model's
[PII]property intermittently failing to decrypt (rsa routines::padding check failed, or rendering as ciphertext) when the same subject also carried PII in a sibling read model. Subject encryption keys are now provisioned atomically and exactly once, even under concurrent appends, multiple silos, or a replica that has not yet caught up.