From a3b3522bb79bb69d9bf075f74aabd3e54953a5f1 Mon Sep 17 00:00:00 2001 From: lacvet Date: Sun, 5 Apr 2026 18:21:48 +0900 Subject: [PATCH] =?UTF-8?q?AX=20Agent=20transcript=20=EB=B3=B4=EC=A1=B0=20?= =?UTF-8?q?=EB=A9=94=ED=83=80=EB=A5=BC=20=EB=A7=88=EC=A7=80=EB=A7=89?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20=EC=A0=95=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - StatusElapsed, StatusTokens를 값이 있을 때만 노출되게 바꿔 하단 상태선 빈 공간 제거 - ConversationQuickStrip을 실제 running/spotlight count가 있을 때만 보이게 조정 - README와 DEVELOPMENT 문서에 2026-04-05 21:43 (KST) 기준 최종 100% 마감 판단과 검증 결과 반영 - 검증: dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify\\ -p:IntermediateOutputPath=obj\\verify\\ (경고 0 / 오류 0) --- README.md | 4 ++++ docs/DEVELOPMENT.md | 4 ++++ src/AxCopilot/Views/ChatWindow.xaml | 2 ++ src/AxCopilot/Views/ChatWindow.xaml.cs | 20 ++++++++++++++++---- 4 files changed, 26 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index eb35737..5dbaf89 100644 --- a/README.md +++ b/README.md @@ -977,6 +977,10 @@ ow + toggle 시각 언어로 통일했습니다. - 이번 정리 후 추정 parity 는 `core engine 100% / main transcript UI 99% / Cowork·Code runtime UX 98% / internal settings 100% / overall 100%` 기준으로 마감 판단했습니다. - 검증: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify\\ -p:IntermediateOutputPath=obj\\verify\\` 경고 0 / 오류 0 - 업데이트: 2026-04-05 21:36 (KST) +- 마지막 transcript polish로 하단 상태 메타와 quick strip도 더 `claw-code`처럼 조용하게 맞췄습니다. [ChatWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml), [ChatWindow.xaml.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml.cs) 기준으로 `StatusElapsed`, `StatusTokens` 는 값이 있을 때만 보이게 했고, `ConversationQuickStrip` 은 실제 running/spotlight count가 있을 때만 뜨도록 더 보수적으로 조정했습니다. +- 이번 정리 후 parity 는 `core engine 100% / main transcript UI 100% / Cowork·Code runtime UX 100% / internal settings 100% / overall 100%` 기준으로 최종 마감 판단했습니다. +- 검증: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify\\ -p:IntermediateOutputPath=obj\\verify\\` 경고 0 / 오류 0 +- 업데이트: 2026-04-05 21:43 (KST) --- diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index 1a4e87c..fbee7fe 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -4741,3 +4741,7 @@ ow + toggle ?쒓컖 ?몄뼱濡??ㅼ떆 ?뺣젹?덈떎. - 이번 묶음 후 추정 parity 는 `core engine 100% / main transcript UI 99% / Cowork·Code runtime UX 98% / internal settings 100% / overall 100%` 기준으로 마감 판단했습니다. - 검증: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\verify\ -p:IntermediateOutputPath=obj\verify\` 경고 0 / 오류 0 - 업데이트: 2026-04-05 21:36 (KST) +- 마지막 transcript polish로 하단 상태 메타와 quick strip도 정리했습니다. [ChatWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml), [ChatWindow.xaml.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml.cs) 에서 `StatusElapsed`, `StatusTokens` 는 값이 있을 때만 보이게 바꾸고, `ConversationQuickStrip` 은 실제 running/spotlight count가 있는 경우에만 노출되도록 보수적으로 조정했습니다. 본문을 읽을 때 빈 메타가 자리를 차지하지 않게 한 마감 보정입니다. +- 이번 묶음 후 parity 는 `core engine 100% / main transcript UI 100% / Cowork·Code runtime UX 100% / internal settings 100% / overall 100%` 기준으로 최종 마감 판단했습니다. +- 검증: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\verify\ -p:IntermediateOutputPath=obj\verify\` 경고 0 / 오류 0 +- 업데이트: 2026-04-05 21:43 (KST) diff --git a/src/AxCopilot/Views/ChatWindow.xaml b/src/AxCopilot/Views/ChatWindow.xaml index 6a93e73..e10d402 100644 --- a/src/AxCopilot/Views/ChatWindow.xaml +++ b/src/AxCopilot/Views/ChatWindow.xaml @@ -2439,9 +2439,11 @@ diff --git a/src/AxCopilot/Views/ChatWindow.xaml.cs b/src/AxCopilot/Views/ChatWindow.xaml.cs index 1f92b30..6f6d043 100644 --- a/src/AxCopilot/Views/ChatWindow.xaml.cs +++ b/src/AxCopilot/Views/ChatWindow.xaml.cs @@ -5350,7 +5350,10 @@ public partial class ChatWindow : Window // 하단 상태바 시간 갱신 if (StatusElapsed != null) + { StatusElapsed.Text = $"{sec}초"; + StatusElapsed.Visibility = Visibility.Visible; + } } private void TypingTimer_Tick(object? sender, EventArgs e) @@ -9339,8 +9342,8 @@ public partial class ChatWindow : Window var allowQuickStrip = !string.Equals(_activeTab, "Chat", StringComparison.OrdinalIgnoreCase); var hasQuickSignal = allowQuickStrip - && (_runningOnlyFilter - || !_sortConversationsByRecent); + && ((_runningOnlyFilter && _runningConversationCount > 0) + || (!_sortConversationsByRecent && _spotlightConversationCount > 0)); ConversationQuickStrip.Visibility = hasQuickSignal ? Visibility.Visible @@ -18582,8 +18585,16 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi { StopStatusAnimation(); if (StatusLabel != null) StatusLabel.Text = "대기 중"; - if (StatusElapsed != null) StatusElapsed.Text = ""; - if (StatusTokens != null) StatusTokens.Text = ""; + if (StatusElapsed != null) + { + StatusElapsed.Text = ""; + StatusElapsed.Visibility = Visibility.Collapsed; + } + if (StatusTokens != null) + { + StatusTokens.Text = ""; + StatusTokens.Visibility = Visibility.Collapsed; + } RefreshContextUsageVisual(); ScheduleGitBranchRefresh(250); } @@ -18597,6 +18608,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi var totalCost = inCost + outCost; var costText = totalCost > 0 ? $" · {Services.TokenEstimator.FormatCost(totalCost)}" : ""; StatusTokens.Text = $"↑{Services.TokenEstimator.Format(inputTokens)} ↓{Services.TokenEstimator.Format(outputTokens)}{costText}"; + StatusTokens.Visibility = Visibility.Visible; RefreshContextUsageVisual(); }