Operational Remediation Reports
Countdown Latch Remediation Report
Compare arrivals at a latch against the needed count and turn the remaining count into a release, wait, or escalate remediation action.
Countdown Latch Remediation Report
CountdownLatchRemediationReport.kt
fun main() {
val arrivals =
val needed = 3
var counted = arrivals
if (counted > needed) {
counted = needed
}
val remaining = needed - counted
val action = if (remaining == 0) {
"release"
} else if (remaining <= 1) {
"wait"
} else {
"escalate"
}
println("needed=$needed counted=$counted remaining=$remaining $action")
}
fun main() {
val arrivals =
val needed = 3
var counted = arrivals
if (counted > needed) {
counted = needed
}
val remaining = needed - counted
val action = if (remaining == 0) {
"release"
} else if (remaining <= 1) {
"wait"
} else {
"escalate"
}
println("needed=$needed counted=$counted remaining=$remaining $action")
}
fun main() {
val arrivals =
val needed = 3
var counted = arrivals
if (counted > needed) {
counted = needed
}
val remaining = needed - counted
val action = if (remaining == 0) {
"release"
} else if (remaining <= 1) {
"wait"
} else {
"escalate"
}
println("needed=$needed counted=$counted remaining=$remaining $action")
}
latch remaining
The needed count and arrivals are scalars, so the remaining work that drives the remediation action stays deterministic without awaiting a live latch.