Scope
Port Bun corpus position 3981, js/third_party/grpc-js/test-idle-timer.test.ts, into Home's shared Node/gRPC compatibility bootstrap.
Required contracts
- client channels become
READYafter requests andwaitForReady - client idle timeouts transition channels to
IDLE, with the gRPC minimum of one second - requests reconnect successfully after an idle transition
- Unix-domain-socket targets follow the same lifecycle
- server
grpc.max_connection_idle_msdisconnects idle clients watchConnectivityStatesupports deadline-bounded state observation- lifecycle failures retain causes and add actionable operation/target stack frames
Verification
- focused Bun corpus file passes with no unsupported cases
- shared gRPC diagnostics remain green
- SQL adapter and permanent third-party regression gates remain green