Ignoring loanees because they won't be here past May, we have the below contracts in place for senior players (info taken from transfermarkt - if anything is incorrect feel free to point it out):
Contract expires summer 2026: A. Davies, Ings, Mee, Riedewald, T. Davies (departing)
2027: Bamford, Brooks, Campbell, Curtis, Grbic, Hamer, Norrington-Davies, Nwachukwu, Rothwell, Seriki, Shackleton
2028: Arblaster, Burrows, Marsh, Matos, McCallum, O'Hare, Peck, Tanganga, Ukaki
2029: Cannon, Chong, McGuinness, Oné, Zatterstrom
I only anticipate Jairo staying beyond the summer. Tom Davies is already confirmed to be off, Ings hasn't contributed enough to be worth a new deal, likewise Mee, and Adam D probably doesn't get a new deal by virtue of us having Grbic become a potential GK option for no additional financial outlay.
Of those with 1 year left, I'd only really want us to try and keep Brooks and Seriki. Bamford and Rothwell will stay only by virtue of having only been here for 5 minutes so far. Hamer is a creative force on his day, but in the games where he doesn't perform, it's like playing with 10 men. All of the rest, I'd happily see us do a bargain deal to get them off the books - there's a lot of wage expenditure in that group, for very little talent in return.
2028 group is much stronger in comparison. I'd imagine Matos gets a chance in pre-season to prove his worth, but probably ends up going out on loan anyway. Ukaki probably the same, unless we can sell and free up the ESC spot. Otherwise, we only sell if the deal is right (ideally).
Of those on terms to 2029, I'd happily see us sell any of them besides Oné.