OpenGL is an immediate mode API, not a scene graph API! OpenGL does not know of objects, just of geometric primitives and fragments.
Blending occurs at fragment level (usually one pixel). The blending is a read-modify-write operation with the data from the pipeline and the data on the color buffers.
So, yes, it’s using the informations on the frame for the blending. The difficulty is that the blending effect is therefore dependant on the things already on the screen. Some effects need depth sorting to achieve the right look.
To shadows and lighting: The lighting calculation of OpenGL is per vertex and doesn’t know of any other things like “objects” between vertex and the light.
That means the lighting calculations occur undisturbed of any other thing in the scene.
You can enable attenuation effects though, so that the tiny object which is farther away from the light gets lit less. But that’s nothing compared to shadows.