feat(coderd/x/chatd): add structured error fields to wait_agent error payload#27478
feat(coderd/x/chatd): add structured error fields to wait_agent error payload#27478ibetitsmike wants to merge 1 commit into
Conversation
|
@codex review |
|
Codex Review: Didn't find any major issues. Chef's kiss. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
4e8294b to
de969b6
Compare
cfb6d18 to
b46a779
Compare
|
@codex review |
|
Codex Review: Didn't find any major issues. Another round soon, please! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
de969b6 to
5a743ff
Compare
b46a779 to
ed49709
Compare
|
@codex review |
|
Codex Review: Didn't find any major issues. More of your lovely PRs please. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
5a743ff to
f50e4ab
Compare
ed49709 to
b3885ed
Compare
|
@codex review |
|
Codex Review: Didn't find any major issues. Chef's kiss. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
f50e4ab to
f221d4d
Compare
b3885ed to
8581cd8
Compare
|
@codex review |
|
Codex Review: Didn't find any major issues. Already looking forward to the next diff. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Stacked on #27477. That PR puts the actionable provider detail into the
wait_agentlast_errorstring; this PR additionally exposes the decodedChatErrorfields as structured siblings so the parent model does not have to parse prose to decide whether respawning makes sense.Changes
wait_agenterror payloads gain, when the persistedlast_errordecodes as aChatError:last_error_kind(defaults togenericwhen empty)last_error_retryable(explicit bool)last_error_detail(only when non-empty)last_errorstays a string with the semantics from fix(coderd/x/chatd): surface child error detail in wait_agent last_error #27477. Malformed payloads keep the raw-JSON string and get none of the structured fields.subagentLastErrorMessagebecomessubagentLastError, returning the decoded payload alongside the display string so decoding happens once for both the poll and timeout-recheck paths.No other tool payloads change, and no repository consumer parses the
wait_agentresponse shape, so the fields are additive.Validation
go test ./coderd/x/chatd/...,make lint/gogreen.wait_agentresults carriedlast_error_kind/last_error_retryable/last_error_detailfor a detail fixture, and correctly omittedlast_error_detailfor a message-only fixture.