Well, either they have a register already (or else how do they know that a child didn't just leave at the end of the school day with their peers) in which case they can note that the child is missing, or they don't have a register so they don't know anyway if the relevant children are all there.
If they are really worried, they could do a sign in/out sheet in the library, or have the sports coach take a register.
When my kids are doing an evening thing, as long as they turn up at the practice or whatever at the right time, I as a parent am responsible for what they do in between. I give permission to go into town, then they go into town.
It is completely unreasonable to expect a child to go from 1pm to 7:30 with 2 hours of sport without food. They are failing in their duty of care in that regard.
Honestly, I can't see why it is an issue for them to go into town, but if they insist not, then they should provide a place to eat.
As to supervising staff, well, they are insisting the children stay there, so they should provide staff to cover. Again, what is the problem with the kids eating a snack in a designated place, and then going to the library, they would arrive 10 minutes later.