How to handle separated stock for a product bundle?
I am the author and maintainer of the Commerce Product Kit module which is close to your requirement.


  It provides a "field formatter" for the "product reference" or an
  "entity reference" fields to add all the commerce products referenced that
  field to the cart at once.


It also has support to the commerce stock module. If a product kit has 3 products in it (A, B, and C), and say one of them is out of stock (B), it is not added to the cart.

Not allowing any product to be added to cart even if one of the product from kit is not in stock makes sense and can be considered a good addition to the cart.

I have created a feature request in the issue queue for the same :
 #2821442 : Disallow adding product kit to cart if one product is out of stock.

While I do not have the time to implement it myself now, I would be happy to review any patches and make this a part of the module.