AX Agent UI와 응답 마감 엔진을 claw-code 기준으로 1차 재구성
Some checks failed
Release Gate / gate (push) Has been cancelled
Some checks failed
Release Gate / gate (push) Has been cancelled
사이드바, 메시지 축, 빈 상태, 컴포저를 더 얇고 밀도 높은 구조로 재배치하고 보조 상태 스트립 노출을 줄였습니다. 반응형 폭 계산을 다시 조정해 창 크기 변화에서도 메시지와 컴포저가 같은 중심선으로 자연스럽게 줄어들게 했습니다. 응답 취소와 오류 마감은 AxAgentExecutionEngine의 FinalizeExecutionContent로 공통화해 전송과 재생성의 후처리 경로를 맞췄습니다. 검증: dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify\\ -p:IntermediateOutputPath=obj\\verify\\ 경고 0 오류 0
This commit is contained in:
@@ -16,6 +16,7 @@ public sealed class AxAgentExecutionEngine
|
||||
ExecutionMode Mode,
|
||||
IReadOnlyList<string> PromptStack,
|
||||
List<ChatMessage> Messages);
|
||||
public sealed record FinalizedContent(string Content, bool Cancelled, string? FailureReason);
|
||||
public sealed record SessionMutationResult(
|
||||
ChatConversation CurrentConversation,
|
||||
ChatConversation UpdatedConversation);
|
||||
@@ -162,6 +163,22 @@ public sealed class AxAgentExecutionEngine
|
||||
return normalized;
|
||||
}
|
||||
|
||||
public FinalizedContent FinalizeExecutionContent(string? currentContent, Exception? error = null, bool cancelled = false)
|
||||
{
|
||||
if (cancelled)
|
||||
{
|
||||
var content = string.IsNullOrWhiteSpace(currentContent) ? "(취소됨)" : currentContent!;
|
||||
return new FinalizedContent(content, true, "사용자가 작업을 중단했습니다.");
|
||||
}
|
||||
|
||||
if (error != null)
|
||||
{
|
||||
return new FinalizedContent($"⚠ 오류: {error.Message}", false, error.Message);
|
||||
}
|
||||
|
||||
return new FinalizedContent(currentContent ?? string.Empty, false, null);
|
||||
}
|
||||
|
||||
public SessionMutationResult AppendExecutionEvent(
|
||||
ChatSessionStateService session,
|
||||
ChatStorageService storage,
|
||||
|
||||
Reference in New Issue
Block a user