Este es un problema de lagunas e islas. Desea el inicio de cada isla, que puede identificar comparando el estado en la fila actual con el estado en el registro "anterior".
Las funciones de ventana son útiles para esto:
select t.*
from (
select t.*, lag(status) over(partition by personID order by unixtime) lag_status
from mytable t
) t
where lag_status is null or status <> lag_status