diff --git a/src/ClaudeDo.Worker/Hub/HubBroadcaster.cs b/src/ClaudeDo.Worker/Hub/HubBroadcaster.cs index 2e01d17..17263ba 100644 --- a/src/ClaudeDo.Worker/Hub/HubBroadcaster.cs +++ b/src/ClaudeDo.Worker/Hub/HubBroadcaster.cs @@ -1,3 +1,4 @@ +using ClaudeDo.Data.Models; using Microsoft.AspNetCore.SignalR; namespace ClaudeDo.Worker.Hub; @@ -28,4 +29,7 @@ public sealed class HubBroadcaster public Task RunCreated(string taskId, int runNumber, bool isRetry) => _hub.Clients.All.SendAsync("RunCreated", taskId, runNumber, isRetry); + + public Task WorkerLog(string message, WorkerLogLevel level, DateTime timestampUtc) => + _hub.Clients.All.SendAsync("WorkerLog", message, level, timestampUtc); } diff --git a/src/ClaudeDo.Worker/Program.cs b/src/ClaudeDo.Worker/Program.cs index ce43e9c..5f4977a 100644 --- a/src/ClaudeDo.Worker/Program.cs +++ b/src/ClaudeDo.Worker/Program.cs @@ -20,7 +20,10 @@ builder.Services.AddDbContextFactory(opt => builder.Services.AddSingleton(cfg); builder.Services.AddHostedService(); -builder.Services.AddSignalR(); +builder.Services.AddSignalR().AddJsonProtocol(options => +{ + options.PayloadSerializerOptions.Converters.Add(new System.Text.Json.Serialization.JsonStringEnumConverter()); +}); // Runner stack. builder.Services.AddSingleton();