A scattering sample is a contract
A Lambertian BRDF is reflectance divided by pi. Its reflected-energy fraction is the reflectance, not the BRDF value by itself. With cosine-weighted hemisphere sampling, the cosine-over-pi density cancels the corresponding BRDF and cosine factors in the throughput update.
That cancellation is specific to the paired model and sampler. It is not permission to delete PDF handling from the integrator. Return a scattering sample containing direction, density, and the information needed to distinguish an ordinary density from a delta event later.
The runnable bridge in diffuse.cpp keeps the formula visible even though the matched terms cancel. Its validated scene owns sphere/material values; reflectance channels must lie in [0,1]. It builds the world-space frame, uses a documented small-scene ray offset, and propagates invalid sampling inputs as ordinary errors before any division.
