def apply_fail2
cswap-bend-cli@0.1.0.0 · urec.bend:52
import cswap-bend-cli@0.1.0.0/urec.bend as Urec
import Base
import cswap-bend-cli@0.1.0.0/pollrow.bend as Pollrow
import cswap-bend-cli@0.1.0.0/json.bend as Json
import cswap-bend-cli@0.1.0.0/ustore.bend as Ustore
52def apply_fail2(+row: Json.Json, +error: String, retry: Maybe<&2, U32>, struck: Json.Json, +failures: U32, +strikes: U32, +now: U32) -> Json.Json:
53 with_strike(is_permanent(error), strikes, struck,
54 Json.set("backoffUntil", Ustore.fl((now + Pollrow.failure_backoff(failures, retry, String.eq(error, "http-429")) : U32)),
55 with_429(String.eq(error, "http-429"), now,
56 Json.set("lastError", Ustore.jstr(error), Json.set("consecutiveFailures", Json.JNum{U32.show(failures)},
57 Json.set("lastAttemptAt", Ustore.fl(now), release(row)))))))