Background task rework