The structural shape both behaviour contracts satisfy, and the element type
of composeBehaviorChain's behaviors array.
IPipelineBehavior and IIngressBehavior both satisfy this structurally —
neither needed to change — which is what lets one composer serve both the
CQRS pipeline and the four non-HTTP ingress chains.