I've started a new branch with the required fixes and a test included:

https://github.com/rejectedsoftware/vibe.d/tree/inter_task_fixes

Those fixes won't get into the next release yet, because they required a few deeper changes that need more testing first.

BTW, for proper bi-directional connection close behavior you should add explicit close requests to the forwarding function. See the example for reference: https://github.com/rejectedsoftware/vibe.d/blob/intertaskfixes/tests/tcpproxy/source/app.d#L55>