How do I use ActiveJob to track the progress of long-running remote tasks?