Cowork 진행 표시와 깨진 한글 문자열 복구
Some checks failed
Release Gate / gate (push) Has been cancelled

- Cowork/Code 실행 시작 직후 라이브 진행 힌트를 즉시 표시하고 중간 이벤트마다 사라지지 않도록 유지 로직 수정

- 프리셋 선택 화면, 권한 요청 팝업, 실행 전환 게이트 안내 문자열의 깨진 한글을 정상 한국어로 복구

- 내부 중단 경로의 완료 문구를 사용자 취소로 오해하지 않도록 중립 표현으로 정리

- 검증: 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:
2026-04-07 07:53:08 +09:00
parent 4e6d5d0597
commit f44b8b7dea
8 changed files with 116 additions and 85 deletions

View File

@@ -338,8 +338,8 @@ public partial class AgentLoopService
if (decision == "취소")
{
EmitEvent(AgentEventType.Complete, "", "사용자가 작업을 취소했습니다");
return "작업이 취소되었습니다.";
EmitEvent(AgentEventType.Complete, "", "작업이 중단되었습니다");
return "작업이 중단되었습니다.";
}
else if (TryParseApprovedPlanDecision(decision, out var approvedPlanText, out var approvedPlanSteps))
{
@@ -378,8 +378,8 @@ public partial class AgentLoopService
if (decision == "취소")
{
EmitEvent(AgentEventType.Complete, "", "사용자가 작업을 취소했습니다");
return "작업이 취소되었습니다.";
EmitEvent(AgentEventType.Complete, "", "작업이 중단되었습니다");
return "작업이 중단되었습니다.";
}
if (TryParseApprovedPlanDecision(decision, out var revisedPlanText, out var revisedPlanSteps))
{
@@ -659,8 +659,8 @@ public partial class AgentLoopService
if (decision == "취소")
{
EmitEvent(AgentEventType.Complete, "", "사용자가 작업을 취소했습니다");
return "작업이 취소되었습니다.";
EmitEvent(AgentEventType.Complete, "", "작업이 중단되었습니다");
return "작업이 중단되었습니다.";
}
else if (TryParseApprovedPlanDecision(decision, out var approvedPlanText, out var approvedPlanSteps))
{
@@ -1216,15 +1216,15 @@ public partial class AgentLoopService
}
catch (OperationCanceledException)
{
EmitEvent(AgentEventType.StopRequested, "", "사용자가 작업 중단 요청습니다");
EmitEvent(AgentEventType.StopRequested, "", "작업 중단 요청되었습니다");
await RunRuntimeHooksAsync(
"__stop_requested__",
"post",
JsonSerializer.Serialize(new { runId = _currentRunId, tool = effectiveCall.ToolName }),
"cancelled",
success: false);
EmitEvent(AgentEventType.Complete, "", "사용자가 작업을 취소했습니다.");
return "사용자가 작업을 취소했습니다.";
EmitEvent(AgentEventType.Complete, "", "작업이 중단되었습니다.");
return "작업이 중단되었습니다.";
}
catch (Exception ex)
{
@@ -1445,7 +1445,7 @@ public partial class AgentLoopService
if (ct.IsCancellationRequested)
{
EmitEvent(AgentEventType.StopRequested, "", "사용자가 작업 중단 요청습니다");
EmitEvent(AgentEventType.StopRequested, "", "작업 중단 요청되었습니다");
await RunRuntimeHooksAsync(
"__stop_requested__",
"post",
@@ -4833,3 +4833,4 @@ public partial class AgentLoopService
}
}