feat(coderd): lower chat stream silence timeout and make it configurable - #28405
Closed
ibetitsmike wants to merge 2 commits into
Closed
feat(coderd): lower chat stream silence timeout and make it configurable#28405ibetitsmike wants to merge 2 commits into
ibetitsmike wants to merge 2 commits into
Conversation
During the MCP connect-stall incident a wedged provider stream held a turn for the full 10 minute silence guard. Lower the default to 5 minutes and expose it as a hidden deployment option (--chat-stream-silence-timeout / CODER_CHAT_STREAM_SILENCE_TIMEOUT) so deployments like dogfood can tune it without a release.
Contributor
Docs previewCheck off each page once it's been reviewed. If a page changes in a later push, its checkbox clears automatically so it gets a fresh look. Pages not yet wired into the docs navigation aren't listed here. |
Collaborator
Author
|
Dropping this from the chatd resilience stack along with #28406: keeping the existing 10m default stream silence timeout and not adding a deployment option for it. With the MCP connect budget (#28400) bounding the common stall source, the extra knob isn't warranted. The commit remains recoverable from this closed PR if we revisit.
|
An error occurred while trying to automatically change base from
mike/chatd-mcp-observability
to
main
August 27, 2026 08:22
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stack context
MCP connect-stall incident follow-up. Below: #28400 (connect budget enforcement), #28402 (connect/prep observability). This layer tightens the stream-level resilience knob.
Why
During the incident a wedged provider stream held a generation for the full 10-minute silence guard before the retry kicked in. Ten minutes is far slower than any legitimate provider pause; the guard exists to catch dead streams, not to give providers ten minutes of grace.
Changes
defaultStreamSilenceTimeoutin chatloop drops from 10 to 5 minutes.--chat-stream-silence-timeoutflag /CODER_CHAT_STREAM_SILENCE_TIMEOUTenv (default 5m), wired throughchatd.Config.StreamSilenceTimeoutintoGenerateAssistantOptions, so dogfood can tune it without a release.make genartifacts (apidoc, typesGenerated, server config golden, docs) regenerated.Tests
Existing chatloop silence-guard tests pass with the new default (
go test ./coderd/x/chatd/chatloop/ ./coderd/x/chatd/); the timeout remains injected via options in tests, so no behavior-dependent test needed changes.