AX Agent 진행 시간·글로우 경로 정리 및 최근 로컬 변경 일괄 반영

- AX Agent 스트리밍 경과 시간을 공용 helper로 통일해 비정상적인 수천만 시간 표시를 방지함

- 채팅 입력창 글로우를 런처와 같은 표시/숨김 중심의 얇은 외곽 글로우로 정리하고 런처 글로우 설정은 일반 설정에 유지함

- README와 DEVELOPMENT 문서를 2026-04-08 12:02 (KST) 기준으로 갱신하고 Release 빌드 경고 0 / 오류 0을 확인함
This commit is contained in:
2026-04-08 23:20:53 +09:00
parent 6e99837a4c
commit 1b4a2bfb1c
24 changed files with 1103 additions and 173 deletions

View File

@@ -43,7 +43,7 @@ public class NotifyTool : IAgentTool
Required = ["title", "message"],
};
public Task<ToolResult> ExecuteAsync(JsonElement args, AgentContext context, CancellationToken ct = default)
public async Task<ToolResult> ExecuteAsync(JsonElement args, AgentContext context, CancellationToken ct = default)
{
var title = args.GetProperty("title").GetString() ?? "알림";
var message = args.GetProperty("message").GetString() ?? "";
@@ -51,15 +51,16 @@ public class NotifyTool : IAgentTool
try
{
Application.Current.Dispatcher.Invoke(() =>
// InvokeAsync로 변경 — Dispatcher.Invoke는 UI 스레드가 _convLock 대기 중일 때 데드락 발생
await Application.Current.Dispatcher.InvokeAsync(() =>
{
ShowToast(title, message, level);
});
return Task.FromResult(ToolResult.Ok($"✓ Notification sent: [{level}] {title}"));
return ToolResult.Ok($"✓ Notification sent: [{level}] {title}");
}
catch (Exception ex)
{
return Task.FromResult(ToolResult.Fail($"알림 전송 실패: {ex.Message}"));
return ToolResult.Fail($"알림 전송 실패: {ex.Message}");
}
}