From 9bf5683a08a4cb342aee953f846f56f2f40990fe Mon Sep 17 00:00:00 2001 From: Dotta Date: Sat, 15 Aug 2026 07:25:04 +0000 Subject: [PATCH] fix(ui): label feedback delivery recovery actions Co-Authored-By: Paperclip --- ui/src/components/IssueRecoveryActionCard.test.tsx | 12 ++++++++++++ ui/src/components/IssueRecoveryActionCard.tsx | 3 +++ 2 files changed, 15 insertions(+) diff --git a/ui/src/components/IssueRecoveryActionCard.test.tsx b/ui/src/components/IssueRecoveryActionCard.test.tsx index 317f0cce500..a02dcf679fa 100644 --- a/ui/src/components/IssueRecoveryActionCard.test.tsx +++ b/ui/src/components/IssueRecoveryActionCard.test.tsx @@ -180,6 +180,18 @@ describe("IssueRecoveryActionCard", () => { ); }); + it("explains exhausted feedback delivery in plain language", () => { + const node = render( + , + ); + expect(node.textContent).toContain("Feedback Not Handled"); + expect(node.textContent).toContain( + "Paperclip could not deliver the latest human feedback to this task's agent. Automatic replay is exhausted; handle the outstanding feedback or record what is blocking it.", + ); + }); + it("falls back to an em dash when no evidence summary is available", () => { const node = render(); expect(node.textContent).toContain("—"); diff --git a/ui/src/components/IssueRecoveryActionCard.tsx b/ui/src/components/IssueRecoveryActionCard.tsx index 6ce46fc2a75..3bb03adbb3e 100644 --- a/ui/src/components/IssueRecoveryActionCard.tsx +++ b/ui/src/components/IssueRecoveryActionCard.tsx @@ -115,6 +115,7 @@ export interface IssueRecoveryActionCardProps { } const KIND_LABEL: Record = { + feedback_delivery: "Feedback Not Handled", missing_disposition: "Missing Disposition", stranded_assigned_issue: "Stranded Task", workspace_validation: "Workspace Validation", @@ -124,6 +125,8 @@ const KIND_LABEL: Record = { }; const KIND_HEADLINE: Record = { + feedback_delivery: + "Paperclip could not deliver the latest human feedback to this task's agent. Automatic replay is exhausted; handle the outstanding feedback or record what is blocking it.", missing_disposition: "This task's run finished, but no next step was chosen. Choose what happens next — try the task again, mark it done, or send it for review.", stranded_assigned_issue: