Skip to content

fix(tui): stop pinning actor send on the Delegating pending label - #2681

Merged
yanyihan-xiaomi merged 4 commits into
mainfrom
fix/tui-actor-send-delegating
Oct 19, 2026
Merged

yanyihan-xiaomi merged 4 commits into
mainfrom
fix/tui-actor-send-delegating

Conversation

@yanyihan-xiaomi

@yanyihan-xiaomi yanyihan-xiaomi commented Oct 19, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • The TUI actor tool row for send (and other actions without a description) stayed on the generic ~ Delegating... pending label forever, because InlineTool only left that fallback when resolvedDescription() was truthy — and send has no description field.
  • Leave the pending fallback via to_actor_id / actor_id / tool title, and render send on the same Label — actor desc shape as wait (desktop wording: "Send message to subtask"):
    • running: Sending message to — <actor desc>
    • completed: Sent message to — <actor desc>
    • failed: Send message failed — <actor desc>
  • Do not claim success on non-success terminals: Send failed: …, partStatus=error, and wait/run timeout|interrupted|unknown keep failure wording.

Verification

  • bun test test/cli/tui/actor-tool-state.test.ts — PASS
  • Related actor/TUI suites (actor-status, actor-notification-warnings, actor-send, actor) — PASS
  • bun run typecheck — PASS
  • Independent review of success/failure labeling + final wording pass — PASS

No feature spec (small mechanical TUI fix).

actor send/status/wait/cancel/models have no description field, so
InlineTool's complete=resolvedDescription() stayed falsy and the row
never left "~ Delegating...". Key the pending fallback and body off the
action (and to_actor_id for send) instead.
A send can complete with title "Send failed: receiver not found", and
any actor action can land on partStatus error. Prefer the tool failure
title and keep past-tense success labels off those outcomes.
ActorTool emits completed titles like "Actor wait: timeout" /
"Actor cancel: unknown" without the word "fail". Detect those so the
row never claims "Waited for" / "Cancelled" on a non-success terminal.
Match the wait row shape users already read:
  Waiting for — <actor desc>
  Waiting/Sent message to — <actor desc>

Drop the one-off "Sent to id — content preview" body. Resolve the send
target's registry description the same way wait does.
@yanyihan-xiaomi
yanyihan-xiaomi merged commit 3c1a443 into main Oct 19, 2026
6 checks passed
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