@snzhang
Have you seen this thread?
It’s a request to add the exact functionality you’re also needing.
Currently merging materials from multiple phantom subassemblies isn’t possible, but they are gathering feedback for this requirement.
Phantom "Synthesize" Routing | Community
Our work-around for this is as follows.
We include all possible operations in the parent BOM of the configurable item, with no materials in them.
Then, for each option in the configuration template we select the operation the materials should be consumed in.
Depending on the options selected for a specific configured item, some of those operations will be empty on the resulting production order. We then built a custom action, “Delete Empty Operations” that gets called automatically when the production order is released.
This has worked fairly well for us.