I wonder why we need private smart contract?
Tho im not super familiar with them, id imagine just for the same reason you keep any code private (closed source)
Maybe you dont want people copying it, or maybe reverse engineering it for reasons, maybe to find vulns to use against your project.
Maybe they will copy your contract and market it against you, call it their own. A smart contract is like any other piece of code the way i see it