@orangy I think I have most if not all of your feedback incorporated into the repo now.
https://github.com/trevjonez/ktor_playground Ended up dropping the streaming stuff so that everything goes through the normal interceptor flow. I will probably look into using some socket to get the stream behavior I wanted at a later date.