fix: keep background jobs alive

Add a background job orchestrator that restores profile jobs from saved credentials,
keeps pickup and store-watch schedules alive without UI logins, and exposes job
status via health/admin endpoints.
