That this conversation is happening shouldn't come as a surprise. It was certainly previewed in the contest to host these Games. As more palatable candidates dropped out of the bidding race, the International Olympic Committee (IOC) was left with two options in 2015: Beijing and Almaty. Despite experiencing similar concerns ahead of its hosting of the 2008 Summer Games, China really was the lesser of two evils...Kazakhstan was and is no humanitarian state, either.
Which begs the question...do Olympic boycotts even work? Let's look at history.
1956 Melbourne
Multiple nations stayed away from Australia's first Summer Games, for a variety of reasons. In response to the Soviet Union's invasion of Hungary just before the start of the Games, Spain, Switzerland, and the Netherlands pulled out. Egypt, Lebanon, and Iraq boycotted as a result of the Suez Crisis with Israel. And, China (the Peoples Republic) officially boycotted since China (Taiwan) was allowed entry.
At that time, probably only the Netherlands' absence affected general competition quality. And, decades later, it's viewed by the Dutch as "the black page in the Olympic history for the Netherlands". It's hard to argue that the boycott influenced outside events, as the trajectories of the Cold War, Middle East crisis, and Chinese territorial fights continued well past 1956.
1964 Tokyo
Due to political discrimination at the separate Games of New Emerging Forces (GANEFO) in 1963, those participating athletes were barred from the 1964 Games. Thus, Indonesia and North Korea pulled all their athletes from the Olympics.
The resulting legacy of the 1964 boycott is simply a missed opportunity to see North Korean Sin Kim-Dan, then the world record-holder, compete in the women's track 800 meters. That had promised to be one of the more intriguing events on the track.
As for GANEFO? Built as a direct competition to the Olympics by Indonesia, it was officially dead by 1970.