spent_hours are expected to be reloaded as well, aren't they?

In my opinion this should be done on reload. Cache forgotten.