First things first thanks for playing it. My intended idea was that when you place an X, the enemy AI decides which field to pick. However, when you break an O, the placement of the new O is actually determined by RNG. The problem is that it doesn't really feel random it feels like the enemy AI is making that decision as well, even though it isn't.
That said, this was a completed game jam project, and I'm currently focused on my Steam release and another unrelated Unreal Engine project. I'm not planning to revisit or fix it because I simply don't have the time, and my other projects are my priority right now.