Yes, but once a channel is upcast to the event type you can't bring it back down (`channel?` goes to `ChanelTop`) so you still can't write to it. The `cast` form is a bit more problematic, but right now event contracts are disabled anyway because they're not sound yet, so it's fine. Once the contract is sound it'll be okay to `cast`.