When you change view.sel() in a sublime_plugin.WindowCommand, the selection is not visually updated until you do something else in the view (move cursor, scroll, change view, …)
If you put your caret somewhere in a file and run this command using a keybindings:
class ExampleCommand(sublime_plugin.WindowCommand):
def run(self):
self.window.active_view().sel().clear()
self.window.active_view().sel().add(0)
the caret stay where it was until you try to move it, then it jump to the first char.
IMO it’s a bug.