Skip to content

🤖 fix: improve outgoing agent communication cards - #4077

Merged
ThomasK33 merged 5 commits into
mainfrom
agent-messaging-06z2
Sep 4, 2026
Merged

🤖 fix: improve outgoing agent communication cards#4077
ThomasK33 merged 5 commits into
mainfrom
agent-messaging-06z2

Conversation

@ThomasK33

@ThomasK33 ThomasK33 commented Sep 4, 2026

Copy link
Copy Markdown
Member

Summary

Make outgoing agent_report and task_send_message entries feel like agent communication rather than command output, matching the readable incoming-report treatment.

  • Share a single card with clear titles, recipient metadata, consistent transcript typography, and keyboard-accessible expand/collapse.
  • Preserve report Markdown, legacy file-backed reports, hook-decorated results and blocking errors, sticky expansion preferences, and task-ID navigation/copy behavior.
  • Show delivery outcomes instead of generic tool completion: queued, reactivated, refused, rate-limited, and failed sends remain distinguishable. Errors stay visible when collapsed.
  • Validate malformed/missing persisted results, unwrap SDK JSON containers, supply accessible fallback titles, and keep long guidance in a bounded, keyboard-scrollable region.
  • Add full-app desktop/phone, long-message, and failure-state stories plus regression tests.

The branch also fixes existing main-branch validation failures: removes an obsolete getSessionDir mock from a Partial<Config> fixture and supplies the missing archive-state set in five flat-sidebar fixtures. These are test-data-only corrections; no production workspace/sidebar behavior changes.

Validation

  • make static-check passed (including both TypeScript projects).
  • 86 targeted report/task/tool-dispatch tests passed.
  • Four cross-project pin tests and all 49 sidebar tests passed for the corrected fixtures.
  • The workflow CLI case that hit a Bun process crash in CI passed when rerun locally.
  • 15 Storybook tests passed across the affected transcript and communication stories.
  • Dogfooded via the Storybook manager in dark/light themes and at 375px phone width: no horizontal overflow; pointer, Enter/Space toggles, recipient navigation, and collapsed failure alerts verified.
  • Independent final code review found no blocking issues.

Visual evidence

Desktop

Outgoing report and message cards

Phone layout and interaction recording

Outgoing communication at phone width

final-interaction.mp4
Long-message scrolling after review fixes

Bounded long-message region at phone width

review-scrolling.mp4

Risk

Presentation-only changes to the two outgoing tools; backend delivery is unchanged. Legacy report fallback, all message delivery outcomes, and navigation behavior have regression coverage.


Generated with mux • Model: coder:openai/gpt-6-astra • Thinking: high • Cost: $21.44

Give agent reports and task messages matching cards with readable prose,
recipient metadata, accessible expansion, and delivery-aware status.
Preserve legacy reports and task navigation, with unit and full-app
Storybook coverage. Remove one obsolete Config test fixture field to
unblock the existing baseline typecheck failure.

---
_Generated with [`mux`](https://github.com/coder/mux) • Model: `coder:openai/gpt-6-astra` • Thinking: `high` • Cost: `$21.44`_

<!-- mux-attribution: model=coder:openai/gpt-6-astra thinking=high costs=21.44 -->
@chatgpt-codex-connector

This comment has been minimized.

@ThomasK33

Copy link
Copy Markdown
Member Author

@codex review


Generated with mux • Model: coder:openai/gpt-6-astra • Thinking: high

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1b67b461c2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

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".

Comment thread src/browser/features/Tools/TaskToolCall.tsx Outdated
Comment thread src/browser/features/Tools/TaskToolCall.tsx Outdated
Comment thread src/browser/features/Tools/AgentReportToolCall.tsx Outdated
@chatgpt-codex-connector

This comment has been minimized.

Validate persisted report and message results before rendering, keep
transport errors separate from untrusted delivery fields, restore
bounded keyboard-accessible message scrolling, and name blank-title
report toggles. Add malformed-history and desktop/phone scrolling tests.

---
_Generated with [`mux`](https://github.com/coder/mux) • Model: `coder:openai/gpt-6-astra` • Thinking: `high` • Cost: `$21.44`_

<!-- mux-attribution: model=coder:openai/gpt-6-astra thinking=high costs=21.44 -->
@ThomasK33

Copy link
Copy Markdown
Member Author

@codex review


Generated with mux • Model: coder:openai/gpt-6-astra • Thinking: high

@ThomasK33

Copy link
Copy Markdown
Member Author

@codex security review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit: fb91ab2596

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

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".

@chatgpt-codex-connector

This comment has been minimized.

Fix the five existing flat-sidebar tests that failed in CI because their
workspace-actions fixtures omitted archivingWorkspaceIds. This only
completes the test data; production sidebar behavior is unchanged.

---
_Generated with [`mux`](https://github.com/coder/mux) • Model: `coder:openai/gpt-6-astra` • Thinking: `high` • Cost: `$21.44`_

<!-- mux-attribution: model=coder:openai/gpt-6-astra thinking=high costs=21.44 -->
@ThomasK33

Copy link
Copy Markdown
Member Author

@codex review

The latest commit only supplies missing archive-state sets in five existing sidebar test fixtures exposed by full CI. All 49 sidebar tests and make static-check pass. The communication-card implementation is unchanged from the previous clean code/security review.


Generated with mux • Model: coder:openai/gpt-6-astra • Thinking: high

@ThomasK33

Copy link
Copy Markdown
Member Author

@codex security review

@chatgpt-codex-connector

This comment has been minimized.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: febac7e67c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

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".

Comment thread src/browser/features/Tools/TaskToolCall.tsx Outdated
Comment thread src/browser/features/Tools/AgentReportToolCall.tsx Outdated
Normalize known hook/UI metadata before strict render-time validation,
without mutating the original output. Preserve bare pre-hook blocking
errors and add frozen hooked-result regression cases for both cards.

---
_Generated with [`mux`](https://github.com/coder/mux) • Model: `coder:openai/gpt-6-astra` • Thinking: `high` • Cost: `$21.44`_

<!-- mux-attribution: model=coder:openai/gpt-6-astra thinking=high costs=21.44 -->
@ThomasK33

Copy link
Copy Markdown
Member Author

@codex review


Generated with mux • Model: coder:openai/gpt-6-astra • Thinking: high

@ThomasK33

Copy link
Copy Markdown
Member Author

@codex security review

@chatgpt-codex-connector

This comment has been minimized.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5a7a36db8e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

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".

Comment thread src/browser/features/Tools/TaskToolCall.tsx Outdated
Comment thread src/browser/features/Tools/TaskToolCall.tsx
Unwrap supported SDK JSON results before hook normalization and schema
validation. Treat absent completed outputs as unavailable rather than
sent while preserving pending, executing, failed, and interrupted states.
Cover both cards with missing-result, wrapper, hook, and error cases.

---
_Generated with [`mux`](https://github.com/coder/mux) • Model: `coder:openai/gpt-6-astra` • Thinking: `high` • Cost: `$21.44`_

<!-- mux-attribution: model=coder:openai/gpt-6-astra thinking=high costs=21.44 -->
@ThomasK33

Copy link
Copy Markdown
Member Author

@codex review


Generated with mux • Model: coder:openai/gpt-6-astra • Thinking: high

@ThomasK33

Copy link
Copy Markdown
Member Author

@codex security review

@chatgpt-codex-connector

This comment has been minimized.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Swish!

Reviewed commit: 3cfd3cb73f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

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".

@ThomasK33
ThomasK33 added this pull request to the merge queue Sep 4, 2026
Merged via the queue into main with commit 8f5dc2f Sep 4, 2026
35 of 38 checks passed
@ThomasK33
ThomasK33 deleted the agent-messaging-06z2 branch September 4, 2026 13:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant