Repository navigation
fix: preserve Kubernetes watch streaming in debug mode - #215
Conversation
|
This PR removes the debug HTTP transport wrapping of the Kubernetes REST config (which buffered streamed watch responses and blocked Kubernetes watches until EOF in debug mode) and adds a regression test that exercises a real client-go watch against a local StandardsNo confirmed material findings. The two style-level observations from the prior reviews (the SpecNo missing or partial requirements, no scope creep, and no incorrect implementations. All four spec requirements are verifiably implemented:
One non-defect note for the record: Reviewed independently by GLM (glm-5.3-flash) and DeepSeek (deepseek-v4-pro-0813) via Shipfox; verified and synthesized by GLM. |
When debug logging was enabled, the Kubernetes HTTP debug transport buffered WATCH responses until the stream closed. This delayed stack, module, and version updates reaching Membership by several minutes. Remove that transport while retaining normal Agent debug logging.
Add a regression test using the command's Kubernetes configuration and a real client-go watch against a local server that keeps the response open. It covers debug on/off, regular watches, and initial WatchList events. Include command tests in the CI unit-test target.
Validation:
go test -race ./cmd/... -count=1 -vnix develop --impure --command just tests-unit(lint, generation, and unit tests)