When resolving a conflict, the last_sync_source is now set to the winner's actual source name (koreader, web, etc.) rather than always 'manual'. This prevents subsequent saves from re-triggering conflicts. Also removes the strict oneof validation on the winner field since the source name is dynamic.