There’s been a lot of discussion about timedelta being a numeric type in another thread recently.
It is a numeric type, it just also has a dimension (seconds).
Converting to float via __float__ would be fine in cases that deal in values of that dimension.(such as sleep). The only real problem here is the lack of protocol to enforce only converting when dealing in implicit seconds.