there is some chan/port that always return a value, but can be closed?
I think that I can reify
impl/UnblockingBuffer impl/Buffer
this might not be what you are looking for, but a promise-chan always returns the first value it received, even after closed
or you could just create a go loop that constantly adds the same value to a channel
Something like the duplex channel from kinsky could be of inspiration: https://github.com/pyr/kinsky/blob/master/src/kinsky/async.clj#L10
Use the up channel to send a close instruction
or just reimplement the protocols as you need