Wire/conformance catch-up with the Python reference at vgi-rpc 0.20.0.
Changes
__describe__now emitsis_exchange = nullfor every method, matching the Python reference (whoseRpcMethodInfo.is_exchangeresolves toNonefor the conformance service). Previously the Go server emittedtrue/falsefor exchange/producer streams. This changes the describe wire output and protocol hash. The bug was latent because the old conformance test only introspected an in-process Python server, never the Go worker.conformance_describehost fixture added totest_go_conformance.py. vgi-rpc 0.20.0'sTestDescribeConformancesends a real__describe__over the wire to the worker under test across every transport (pipe / subprocess / shm / http / http_externalize_always / unix); the fixture wires that to the running Go worker.- Conformance dependency floor bumped to
vgi-rpc>=0.20.0(CI + CLAUDE.md).
The 0.20.0 launcher discovery fix and continuation-only stream resume (_HttpProxy.resume_stream) are Python client-side only and require no Go server change.
Conformance: 903 passed, 0 skipped (all transports, all phases).
🤖 Generated with Claude Code