oddily enough I had a conversation with dengle about this and how # would mess things up with phpanope, moments later Certus or Dengle commited the change
} else if (!stricmp(chan, "#")) {
notice_lang(s_ChanServ, u, CHAN_MAY_NOT_BE_REGISTERED, chan);
there is the one line i cs_register that cares about it being only #
anope_valid_chan() was added to fix a bug generated by unreal that some channels can not be registered, thus it checks to make sure that its not one of those