davecoventry wrote:My client is concerned that the STEP files can be deconstructed into drawings of individual parts.
A compound is a type of entity specific to the OCC kernel (and possibly to commercial geometric kernels but I can't be sure); as far as I know it is not part of the STEP specification. STEP is by design a CAD exchange format: it will produce solids and surfaces if it encounters them in a file. A compound is a container of shapes; since STEP doesn't recognize compounds, it will display as separate all the shapes that were contained in it.
To my knowledge a method to restrict the way it makes shapes available has not been implemented into STEP; I dare say that it would totally defeat the purpose of the file format. What you're asking almost amounts to implementing some kind of DRM.
As for parts failing to fuse, one of the possible reasons is that you are trying to fuse together solids and surfaces, and/or the resulting shape would be invalid or non-manifold, knowing the OCC kernel's weakness with Boolean operations the list could be long. You would need quite a big amount of work to get your model to be a single "monolith".
You have to question the reason for providing a disabled CAD model. What's your customer's intent with this model? Why would they share your CAD model to a third-party if they fear it can be reverse engineered by whomever they share it with?
If this 3D file is only for visualization purposes, why not provide a mesh file as already suggested? A quick test on a simple model shows Stanford Triangle Mesh (*.ply) to make the smallest file amongst the mesh formats FreeCAD supports (2.5x smaller than STL).