For WebTIS it's the former, for Trainline it's the latter.
That'll be why it happens then, no? If Trainline websites don't have a direct interface with the system and have to push through reservations in batches, it's entirely possible they could allocate a seat, and in the 10 minutes (or whatever it is) before it is pushed through to the live reservation system someone else snatches it up via WebTIS.