time_point::min()はエポックではない

std::chrono::time_point::min()静的メンバ関数は、0ではなくstd::numeric_limits::lowest()を返すので注意。

エポックから現在時間までの経過時間を取得しようとしてnow - min()とすると、意図とは違った結果になる。代わりにtime_point::time_since_epoch()メンバ関数を使おう。

参照