Problem
The MCP daemon currently restarts its managed hyperd when the child exits, or after a client reports a connection-lost error. It does not recover a process that remains alive but stops serving requests.
Reproduction
- Start the release
hyperdb-mcp daemon.
- Send
SIGSTOP to its managed hyperd child.
- Invoke a harmless read-only MCP query such as
SELECT 1.
Observed: the query remained blocked for more than 30 seconds; the daemon continued to see the child as alive (process state T) and did not restart it. The test client had to be interrupted.
Desired behavior
A wedged-but-live hyperd should be detected with bounded latency. The current request may return a clear timeout/error, but a later request should connect to a rate-limited replacement hyperd. Do not automatically replay a potentially mutating request.
Possible direction
Add a bounded query/connection timeout or an independent responsiveness probe that feeds the existing REPORT_HYPERD_ERROR and rate-limited restart path. Cover the live-but-unresponsive case with an isolated, cleanup-safe integration test.
Problem
The MCP daemon currently restarts its managed
hyperdwhen the child exits, or after a client reports a connection-lost error. It does not recover a process that remains alive but stops serving requests.Reproduction
hyperdb-mcp daemon.SIGSTOPto its managedhyperdchild.SELECT 1.Observed: the query remained blocked for more than 30 seconds; the daemon continued to see the child as alive (process state
T) and did not restart it. The test client had to be interrupted.Desired behavior
A wedged-but-live
hyperdshould be detected with bounded latency. The current request may return a clear timeout/error, but a later request should connect to a rate-limited replacementhyperd. Do not automatically replay a potentially mutating request.Possible direction
Add a bounded query/connection timeout or an independent responsiveness probe that feeds the existing
REPORT_HYPERD_ERRORand rate-limited restart path. Cover the live-but-unresponsive case with an isolated, cleanup-safe integration test.