Released Proposition Dto
data class ReleasedPropositionDto(val propositionId: String, val contextId: String, val status: String, val quarantined: Boolean, val quarantineReason: String?, val metadataRevised: String)
Where a proposition stands after a release: the state a caller gets back so it can see the hold is gone without a second read.
quarantined is read off the status, which is what decides whether a proposition is held, and quarantineReason off the metadata the release cleared. After a successful release both say the proposition is free: the status is whatever it carried before quarantine, and the reason is gone.