Follow-up from v0.8.61 app-server release verification
codewhale app-server --http / --mobile delegates to the sibling codewhale-tui serve path. The dispatcher waits with Command::status(), but killing the dispatcher can leave the delegated codewhale-tui listener alive and reparented.
This was treated as a v0.8.62 teardown hardening follow-up, not a v0.8.61 release blocker, because normal foreground shutdown and explicit listener cleanup worked during verification.
Expected direction:
- Add a controlled shutdown/cleanup path for delegated long-running server children.
- Add a regression smoke that starts a delegated runtime API listener on a loopback free port, terminates the dispatcher, and asserts no listener remains on that port.
Follow-up from v0.8.61 app-server release verification
codewhale app-server --http/--mobiledelegates to the siblingcodewhale-tui servepath. The dispatcher waits withCommand::status(), but killing the dispatcher can leave the delegatedcodewhale-tuilistener alive and reparented.This was treated as a v0.8.62 teardown hardening follow-up, not a v0.8.61 release blocker, because normal foreground shutdown and explicit listener cleanup worked during verification.
Expected direction: