Which bounce property is used?

In the docs, the “bounce” property is defined as “how much of an object’s velocity is returned after a collision.”

But if I create a ball object with bounce = 0, and a ground object with bounce = 1, the ball bounces off of the ground as if I had assigned bounce = 1 to the ball. Using the definition found in the docs, I’m expecting the ball to not bounce at all because I’ve assigned bounce to 0, but this is not what we see.

So this has me asking, how exactly is the true bounce value calculated? Don’t the Newtonian results from a collision (mass, angle of approach, etc.) interfere with the bounce value so much that the value is essentially meaningless?

I’m probably just thinking about this wrong, but this value seems confusing and difficult to use reliably.