AX Agent background conversation ??? UI ?? ??
?? ??? ?? ??? ?? ?? ?? ??? ??? ?? ?? ?? ???? ??? ????. ChatStreamingUiPolicy? ?? ??? ??? ActiveConversation ???? ???, ChatWindow? ??? ??? ?? ??? ????. AgentProgressHintTimer? StreamMetricsLabel? background conversation ????? ??? UI? ?? ??? ??? ????, ?? ???? README/DEVELOPMENT ??? ????. ??: dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify_background_conversation_live_ui\\ -p:IntermediateOutputPath=obj\\verify_background_conversation_live_ui\\ ??: dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter "ChatStreamingUiPolicyTests|AppStateServiceTests" -p:OutputPath=bin\\verify_background_conversation_live_ui_tests\\ -p:IntermediateOutputPath=obj\\verify_background_conversation_live_ui_tests\\
This commit is contained in:
@@ -1625,3 +1625,12 @@ UI ?遺우쁽????域뱀뮆???귐뗫솯?醫딆춦 ???袁る퓮 ?臾믩씜 ??疫
|
||||
- `src/AxCopilot/Services/AppStateService.cs`는 `GetAgentRunForTab(...)`과 탭 지정 `ApplyAgentEvent(...)`를 지원하도록 확장했고, `src/AxCopilot/Views/ChatWindow.ConversationListPresentation.cs`, `src/AxCopilot/Views/ChatWindow.TaskSummary.cs`가 현재 활성 탭의 run 메타를 읽도록 변경했습니다.
|
||||
- 테스트: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify_tab_loop_isolation\\ -p:IntermediateOutputPath=obj\\verify_tab_loop_isolation\\` 경고 0 / 오류 0
|
||||
- 테스트: `dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter "AppStateServiceTests" -p:OutputPath=bin\\verify_tab_loop_isolation_tests\\ -p:IntermediateOutputPath=obj\\verify_tab_loop_isolation_tests\\` 통과 45
|
||||
업데이트: 2026-04-15 22:39 (KST)
|
||||
- AX Agent 동일 탭 내 background conversation 표시 정책을 다시 정리했습니다. 기존 `src/AxCopilot/Views/ChatStreamingUiPolicy.cs`는 `BackgroundConversation`에도 상단 라이브 가이드를 유지하도록 되어 있어, 사용자가 같은 탭의 다른 대화를 보고 있을 때 idle 타이머가 다시 실행중 카드와 상태 바를 살려내는 회귀가 있었습니다.
|
||||
- `ChatStreamingUiPolicy.ShouldShowTopLevelGuide(...)`를 `ActiveConversation` 전용으로 좁히고, `src/AxCopilot/Views/ChatWindow.xaml.cs`에는 `GetGuideVisibilityForActiveTab()`를 추가해 `RefreshStreamingControlsForActiveTab()`와 실시간 이벤트 렌더 분기가 동일한 가시성 기준을 공유하도록 맞췄습니다.
|
||||
- `src/AxCopilot/Views/ChatWindow.AgentStatusPresentation.cs`의 `AgentProgressHintTimer_Tick(...)`는 background conversation 상태에서 `RemoveAgentLiveCard(animated: false)`, `HideStreamingStatusBar()`, `HideStickyProgress()`를 유지하고 실행 힌트 상태만 탭별로 보존합니다. 이로써 사용자가 다른 대화에 머무는 동안에는 실행중 카드가 다시 생기지 않고, 실제 실행 대화로 돌아왔을 때만 최신 run 상태가 다시 복원됩니다.
|
||||
- `src/AxCopilot/Views/ChatWindow.StatusPresentation.cs`의 `UpdateStreamMetricsLabel(...)`도 같은 기준을 따르도록 조정했습니다. `_isStreaming`만 보던 기존 로직과 달리, 현재 활성 대화가 실제 스트리밍 대화일 때만 시간/토큰 라벨을 표시해 background conversation에서 메트릭 줄이 다시 나타나는 회귀를 막습니다.
|
||||
- 테스트: `src/AxCopilot.Tests/Views/ChatStreamingUiPolicyTests.cs`의 상단 가이드 가시성 기대값을 갱신했습니다.
|
||||
- 검증:
|
||||
- `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify_background_conversation_live_ui\\ -p:IntermediateOutputPath=obj\\verify_background_conversation_live_ui\\` 경고 0 / 오류 0
|
||||
- `dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter "ChatStreamingUiPolicyTests|AppStateServiceTests" -p:OutputPath=bin\\verify_background_conversation_live_ui_tests\\ -p:IntermediateOutputPath=obj\\verify_background_conversation_live_ui_tests\\` 통과 49
|
||||
|
||||
Reference in New Issue
Block a user