Skip to content

ClientLifecycleMode::Auto hangs on a server that silently ignores server/discover #1142

Description

@ip2a

Split out of #1133.

discover_startup calls expect_response, which blocks until a message
arrives or the transport closes. A legacy server that stays connected but
ignores server/discover therefore never produces a failure, so the Auto
fallback branch is never reached and the client hangs.

The 2026-07-28 backward-compatibility guidance says a client should fall
back when the server "does not respond within a reasonable timeout", so
the probe needs a bounded wait — likely a timeout around the
discover_startup / expect_response call, configurable or with a sane
default.

This is orthogonal to the concrete-failure classification in #1133 (which
covers JSON-RPC errors, closed connections, and transport errors) and is
tracked separately to keep that PR focused.

Related: #1040, #1133.

Metadata

Metadata

Assignees

Labels

2026-07-28P1High: significant functionality gap or spec violationT-serviceService layer changesbugSomething is not workingready for workIssue is well-defined and ready to be picked up

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions