We found out upon arriving at the Kathmandu airport that our Air China flight was cancelled, as was the only other flight today to China, on China Eastern. Initially we were told that we will have to be rescheduled on their next flight, which is not until the day after tomorrow!
We persisted and insisted, and got booked to Bangkok, business class, on Thai Airlines. We will spend the night at the Novotel Airport Hotel, which is just a five minute walk from the airport, then fly to Chengdu.
We have negotiated for no excess baggage charges from Chengdu to Shanghai, in return for our having paid for the Novotel ourselves. We will arrive in Shanghai at 11:30pm tomorrow, instead of at 4:00pm as originally booked, but at least on the same day!
All in all, a very good resolution to a situation that initially looked difficult.