Tagged union over the two node variants the checker understands.
Remarks
Closed by construction. IRNode is exactly IRInput | IRDerived;
adding a third variant requires changing this declaration and is
caught at every assertNever-guarded switch in the engine and the
checker (iasbuilt/causl#359, iasbuilt/causl#368).
Tagged union over the two node variants the checker understands.