if you were to do this, imo the "manifest for codegen" idea I've written above is better - complexity of both is similar - manifest is still zero cost - manifest avoids runtime crashes, you can't have the two firmwares "disagree"