If I am hosting a hierarchical CMDI metadata collection, do I need to offer all records over OAI-PMH or only the root nodes?

Short answer: as indicated in the OAI-PMH protocol, you need to offer all records. There is no automatic harvesting of any of the CMDI child nodes.
 
Long answer: in the case of our toy example hierarchy (http://www.clarin.eu/faq/3454)
 
You would need to provide the following files over OAI-PMH:
 
 
Providing collection_root.cmdi (or even collection_olac.cmdi and collection_lrt_inventory.cmdi) is not enough, as all OAI harvesters are protocol-agnostic and thus do not know about CMDI’s hierarchy building! CMDI-consuming applications, such as the VLO, also need the physical files locally.