You are building an in-memory payout service for a food-delivery company.
Drivers have individual hourly rates. Deliveries are recorded immediately after completion, and the accounting team needs a live dashboard that can always show the current total delivery cost.
Across the interview, you will fix payout precision, implement the live total, add support for incremental payments by cutoff time, and compute peak simultaneous driver activity over the past 24 hours.
The starter implementation already stores drivers and deliveries, but one of the payout tests is failing.
A delivery should be paid using exact second-level duration:
`payout = hourly_rate * (end_time - start_time) / 3600`
The current code rounds or truncates too aggressively, so deliveries like 1 hour 30 minutes are not paid correctly.
Your task is to identify the bug and fix the payout calculation so that all existing tests pass.
test_ninety_minutes_is_not_truncated_to_one_hour
test_half_hour_uses_second_precision