Inputs to isTroveLiquidatable: a live ICR and, optionally, the system's Trove count.

interface IsTroveLiquidatableParams {
    icr: bigint;
    troveOwnersCount?: bigint;
}

Properties

icr: bigint

TroveManager.getCurrentICR(borrower, price).

troveOwnersCount?: bigint

TroveManager.getTroveOwnersCount(), or undefined when it was not read (MK-074).

_liquidate returns an empty result without liquidating when TroveOwners.length <= 1 (TroveManager.sol:1058-1060), so batchLiquidateTroves accumulates nothing and reverts at :690-693 with "TroveManager: nothing to liquidate". The last Trove in a system is never liquidatable, whatever its ICR. Note this is the count ALONE: unlike the close path's _requireMoreThanOneTroveInSystem (:1488-1496), the liquidation path does not also consult sortedTroves.getSize().

undefined is "not asked", not "there is more than one", so the condition is skipped.