I thought about it some more, and just to be sure the Eshell bits don't regress at some point in the future, I added some new unit tests in test/lisp/eshell/esh-proc-tests.el to make sure that Eshell sets the `:connection-type' properly. (They're pretty similar to the tests in test/src/process-tests.el, really.)