As of right now when commit is called the developer does not know which messages have been accepted since the last poll. I'm proposing that we extend the SourceTask class to allow records to be committed individually.
This method could be overridden to receive a SourceRecord during the callback of producer.send. This will give us messages that have been successfully written to Kafka. The developer then has the capability to commit messages to the source individually or in batch.