Reject reserved protocol channel names before they hit the fallback.
Genuine extension names pass through untouched; only names that
infer_channel treats as built-in methods without an interleave decoder
are rejected, so a typo'd or unsupported protocol channel surfaces an error
instead of an empty stream.