🤖 fix: render readable subagent failure cards - #4082
Conversation
Remove the stale getSessionDir mock from the cross-project pin-order fixture to restore the existing typecheck gate. --- _Generated with [`mux`](https://github.com/coder/mux) • Model: `coder:openai/gpt-6-astra` • Thinking: `high` • Cost: `$12.80`_ <!-- mux-attribution: model=coder:openai/gpt-6-astra thinking=high costs=12.80 -->
Replace synthetic failure XML with compact cards, neutral superseded-turn messaging, and collapsible diagnostics while preserving raw protocol data. Add parser, rendering, and responsive story coverage. --- _Generated with [`mux`](https://github.com/coder/mux) • Model: `coder:openai/gpt-6-astra` • Thinking: `high` • Cost: `$12.80`_ <!-- mux-attribution: model=coder:openai/gpt-6-astra thinking=high costs=12.80 -->
This comment has been minimized.
This comment has been minimized.
|
@codex review |
|
@codex security review |
This comment has been minimized.
This comment has been minimized.
|
Codex Review: Didn't find any major issues. Keep it up! 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". |
This comment has been minimized.
This comment has been minimized.
Repair five existing fixtures that omit the required archivingWorkspaceIds field and fail before reaching their assertions. --- _Generated with [`mux`](https://github.com/coder/mux) • Model: `coder:openai/gpt-6-astra` • Thinking: `high` • Cost: `$12.80`_ <!-- mux-attribution: model=coder:openai/gpt-6-astra thinking=high costs=12.80 -->
|
@codex review |
|
@codex security review |
|
Codex Review: Didn't find any major issues. Bravo. 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". |
This comment has been minimized.
This comment has been minimized.
Merge current main and retain the upstream copy of the five archive-state mock fields, avoiding duplicate properties in the merge group. The failure UI remains unchanged. --- _Generated with [`mux`](https://github.com/coder/mux) • Model: `coder:openai/gpt-6-astra` • Thinking: `high` • Cost: `$44.57`_ <!-- mux-attribution: model=coder:openai/gpt-6-astra thinking=high costs=44.57 -->
|
@codex review |
|
@codex security review |
This comment has been minimized.
This comment has been minimized.
|
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". |
Summary
Replace raw synthetic sub-agent failure envelopes with compact, readable transcript cards. Superseded workspace turns use a neutral New input took over message rather than implying the workspace failed; actual failures retain clear error styling.
Validation
make static-check-full— passed after integrating current main, including both TypeScript projects, lint, formatting, and full CI-equivalent checks.Visual evidence
The yellow stream-interrupted banner is existing full-app behavior in this story fixture; the change is the two sub-agent cards above it.
final-walkthrough.webm
Risk
Presentation-only parsing of the existing failure protocol; no backend delivery or persistence changes. Unrecognized framing falls back to the original message instead of discarding diagnostics.
Generated with
mux• Model:coder:openai/gpt-6-astra• Thinking:high• Cost:$12.80