doWork
Collects sync progress on ioDispatcher and updates foreground counts.
Earlier acknowledgements and upserts remain committed if a later operation fails. The catch includes cancellation and does not explicitly rethrow it.
Return
Success on completed collection; retry below the retry limit, otherwise failure.