Thanks for the response David. Unfortunately this still didn't work for me. I duplicated the layer and then tried to make an attribute connection but the options are still all greyed out.
From your suggestions I figured out a workaround here but it doesn't really make sense for an efficient workflow:
Here I have attr height with no height object attribute, so the connection editor is disabled.
I clicked the "add new object attribute" button and added value "height" with a 0 value. Then I was able to open the connection editor and map my layer to the proper height layer, Z_Max.
It just doesn't make sense that a connection editor can only become enabled if it detects a matching object attribute, even if that object attribute isn't the one that actually needs to be mapped. It creates a lot of issues if we are trying to create user-friendly CGA scripts. If I make a "universal" script to extrude building heights, I would expect that a user could choose to make a connection to their own height feature attribute, whether the attribute is called "height", "HEIGHT", "bldgHeight", etc... The user shouldn't need to go into the CGA and manually update the code to work with their own imported features.