While it is most probably caused by a bug or a bad script, after you saved Liam from getting tortured by Spike, it's not enough that you unlock his chains. Nor will he run after you've cleared the goblin camp.
No, instead, after unlocking his chains...destroy the rack he is resting on (without hurting him, obviously). He will then run off to the right, and you should get 50XP reward.
Following this, you will be able to find him resting (no dialogue except narrator) on a bedroll near the mercenaries. The woman mercenary is begrudgingly grateful to you for bringing him back (others don't mention him at all.
Last edited by Demothios; 14/09/22 08:36 AM.