This is going to be complicated to explain, but I’ll try my best. The victory conditions are not the same depending on the circumstance which definitely appears to be a bug.
Game / Example One:
If you sink all your balls (stripes), and your opponent sinks all their balls (solids), the first person to sink the 8 Ball wins. This is how the game should be played.
Game / Example Two:
If you sink all your balls (stripes), and your opponent has not finished sinking all their balls (solids), after you sink the 8 Ball, the winner is decided based on the amount of points they have. This is incorrect.
The problem with the second game is that scratching the ball (sinking the white ball) is minus 1000 points. Sinking an opponents ball is minus 200 points. You will lose the game if you sink the 8 Ball unless you let your opponent sink all their balls triggering the victory condition in game 1.
Essentially, your opponent can hold you hostage in game two and refuse to sink their balls. The only counter-play is to help sink their balls…