YWBU to make the promise in the first place. However, you are getting an unnecessarily hard time over your use of the word "unpopular", I think.
DS1 (aged 11) went on a residential and, like in this case, they were told to write 2 names down of people they wanted to share a room with. Rooms held 2 or 3 people. DC1 and his friend ended up with an "unpopular" child in their room.
This child was a bully and was unpopular for very good reasons. In his school career he had picked fights with almost everyone in the class (including breaking another child's arm), stolen from many of the children, deliberately broken possessions, followed children home and thrown stones at their houses/parents' cars and more nasty stuff.
On the first night he kept the other two awake until 2 in the morning by shouting at them, poking them, jumping on them as they lay in bed and eating all the food he'd brought then throwing up on the floor. The boys then went to wake a teacher who shouted at the boy and all were told to go back to sleep. The boy continued with the awful behaviour so the other two went downstairs to try to sleep in the lounge.
Mobile phones weren't allowed or DS1 would have phoned us. In the morning they both asked the teacher to phone home for their parents to collect them because they would not spend another night in a room with the "unpopular" child. There was some reshuffling and the boy was in a room on his own for the rest of the trip. The second day was ruined for DS1 and his friend because they were too tired to take part in many of the activities.
This trip cost us a lot of money and I was very unhappy when I heard about it and made sure the HT knew our feelings. DS1 and his friend were deliberately chosen to share with the bully because the staff through they wouldn't make a fuss.
I repeat, some children are unpopular for good reason.