From 083a7d5eb6c233f07df41315b19a10ea4b2765a0 Mon Sep 17 00:00:00 2001 From: Mikael Hugo Date: Sat, 2 May 2026 23:16:41 +0200 Subject: [PATCH] feat(sf): /sf escalate show also distinguishes auto-accepted MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Same UX refinement as e104f17ad applied to /sf escalate show /. Auto-mode resolutions now display "Auto-accepted → choice=..." instead of the generic "Resolved ". The userRationale prefix "auto-mode:" already disambiguates the source; surfacing the verb makes the show view match the list view's status semantics. Co-Authored-By: Claude Opus 4.7 (1M context) --- src/resources/extensions/sf/commands-escalate.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/resources/extensions/sf/commands-escalate.ts b/src/resources/extensions/sf/commands-escalate.ts index b40bae30b..3673706ab 100644 --- a/src/resources/extensions/sf/commands-escalate.ts +++ b/src/resources/extensions/sf/commands-escalate.ts @@ -148,8 +148,10 @@ export async function handleEscalate( } out.push(`\nRationale for recommendation: ${art.recommendationRationale}`); if (art.respondedAt) { + const isAutoResolved = art.userRationale?.startsWith("auto-mode:"); + const verb = isAutoResolved ? "Auto-accepted" : "Resolved"; out.push( - `\nResolved ${art.respondedAt} → choice="${art.userChoice}"${art.userRationale ? ` (rationale: ${art.userRationale})` : ""}`, + `\n${verb} ${art.respondedAt} → choice="${art.userChoice}"${art.userRationale ? ` (rationale: ${art.userRationale})` : ""}`, ); } else { out.push(