Zhuge Liang helped protect Shu and died a fair death. Any kind of plan or action will have "collateral damage" We can't just judge the quality of a plan or action from these one-sided angles. Zhuge Liang is the same. In order to help Shu, he must remove some obstacles. Maybe he did something thoughtless, but he didn't mean to destroy Shu.
Liu Chan, it's hard to say whether he is stupid or not, but stupidity really saved his life. The sentence "Never destroy Shu" is untenable, because from the moment Liu Chan left the city to surrender, Shu was already extinct.