What does sync gateway reset option does in the replicator.start(reset:true)

In the replicator we have a option to reset the checkpoints, by setting reset:true, what is the functionality of it, does it actually restart the whole replication operation, deleting the previously synced data or it resumes from the last successful replication and syncs the missing data.

In my application I set the reset:true option, expecting it to restart by deleting all previously synced data and syncing all from the scratch, but was actually syncing from the point where it left, could anyone help me with the reasons why it is happening

FYI: SG:3.0.4, CBL:3.0.2, CB server:7.1.3

Your documents will not be deleted.

Here’s the description from the Couchbase Lite Swift API documentation:
https://docs.couchbase.com/mobile/3.0.2/couchbase-lite-swift/Classes/Replicator.html#/s:18CouchbaseLiteSwift10ReplicatorC5start5resetySb_tF

Starts the replicator with an option to reset the local checkpoint of the replicator. When the local checkpoint is reset, the replicator will sync all changes since the beginning of time from the remote database. This method returns immediately; the replicator runs asynchronously and will report its progress through the replicator change notification.

This was cross-posted to Stack Overflow and also answered there: