You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
🤖 Aggregated API watches never hold: LIST has no resourceVersion and watch-list returns 400 #217
Aggregated API watches for coderworkspaces and codertemplates do not work for standard clients:
LIST responses carry no resourceVersion.
With the WatchList feature gate on (default since Kubernetes 1.34, vendored apiserver v0.35.0), a watch with resourceVersion "" or "0" becomes sendInitialEvents=true. Storage rejects that with 400 (validateUnsupportedWatchListOptions). apiserverapp/watch_options_integration_test.go pins this.
So kubectl get -w and plain client-go informers never hold a watch. They relist with backoff. Changes made directly in Coder never produce watch events in any namespace, because only writes through this apiserver feed the broadcaster.
The final assessment of #214 found this. It predates #214, and #214 left Watch unchanged.
Proposal (to be designed)
Return a meaningful list resourceVersion and support watch-list or real watch semantics, or document that watches are not supported and clients must poll.
Generated with xum • Model: anthropic:claude-opus-5-5 • Thinking: medium
Activity