Scope
Port Bun corpus position 3982, js/third_party/grpc-js/test-local-subchannel-pool.test.ts, with the actual grpc.use_local_subchannel_pool ownership contract instead of treating the option as inert.
Required contracts
- local-pool clients acquire distinct subchannel records even for the same target
- global-pool clients share a target record and maintain reference counts
- closing one client cannot invalidate another client's pooled transport
- close is idempotent and releases the record exactly once
- invalid pool lifecycle operations retain causes and actionable pool/target stack context
Verification
- focused upstream file passes without unsupported cases
- permanent diagnostics distinguish local and global ownership
- existing gRPC, SQL adapter, and third-party gates remain green