  Classic BFT consensus protocols guarantee safety and liveness for all clients
if fewer than one-third of replicas are faulty. However, in applications such
as high-value payments, some clients may want to prioritize safety over
liveness. Flexible consensus allows each client to opt for a higher safety
resilience, albeit at the expense of reduced liveness resilience. We present
the first construction that allows optimal safety--liveness tradeoff for every
client simultaneously. This construction is modular and is realized as an
add-on applied on top of an existing consensus protocol. The add-on consists of
an additional round of voting and permanent locking done by the replicas, to
sidestep a sub-optimal quorum-intersection-based constraint present in previous
solutions. We adapt our construction to the existing Ethereum protocol to
derive optimal flexible confirmation rules that clients can adopt unilaterally
without requiring system-wide changes. This is possible because existing
Ethereum protocol features can double as the extra voting and locking. We
demonstrate an implementation using Ethereum's consensus API.
