pub async fn run(
tick_interval_secs: u64,
batch_size: usize,
) -> Result<(), String>Expand description
Long-running drain loop. Claims outbox rows and dispatches them to the cloud on a fixed cadence. Only exits on SIGTERM / SIGINT or on a genuinely fatal error (DB open failure, etc.).
Safe to call at most once per process: writes its own PID file on entry and errors out if one already belongs to a live process.