Skip to main content

release_held_because

Function release_held_because 

Source
pub async fn release_held_because(
    pool: &PgPool,
    actor: &Actor,
    holder: Uuid,
    project: Option<Uuid>,
    reason: Option<&str>,
) -> AppResult<Vec<CheckInOutcome>>
Expand description

release_held with a reason for every release: a manager then also releases the check-outs of an active member of their groups (issue #173, the season handover); the reason is audited and told to the holder.

ยงInvariants

  • Permission / visibility / bounds / atomic: as release_held; per revision cancel_checkout decides with the reason.
  • Data: a reason has revisions::RELEASE_REASON_MIN to RELEASE_REASON_MAX characters (400 before anything is released).
  • Audit / notifications: those of cancel_checkout, per revision, with the reason.