run

fun run(algorithm: MileageAlgorithm, trace: List<Fix>, session: SessionContext = SessionContext(startedAtMs = trace.firstOrNull()?.timeMs ?: 0L)): RunReport

Feed trace through algorithm in order and collect a report.

Fixes are not sorted for you. Out-of-order delivery is a real field condition and an algorithm's response to it is part of what is being measured; silently sorting would hide exactly the behaviour worth comparing.