feat(worker): expose usage/model-usage hub surface and persist run model
Adds GetUsageSnapshot/GetModelUsage/GetTaskUsage to WorkerHub (backed by a shared UsageSnapshotBuilder), a UsageUpdated broadcast fired after every UsageMonitorService poll cycle, and records the resolved model on each task_runs row so per-model/per-task usage can be reported from history.
This commit is contained in:
@@ -206,8 +206,9 @@ builder.Services.AddHttpClient<IUsageClient, ClaudeOAuthUsageClient>(client =>
|
||||
{
|
||||
client.Timeout = TimeSpan.FromSeconds(5);
|
||||
});
|
||||
builder.Services.AddHostedService<UsageMonitorService>();
|
||||
builder.Services.AddSingleton<IUsageGate, UsageGate>();
|
||||
builder.Services.AddSingleton<UsageSnapshotBuilder>();
|
||||
builder.Services.AddHostedService<UsageMonitorService>();
|
||||
|
||||
// Loopback-only bind. Firewall is irrelevant for 127.0.0.1.
|
||||
builder.WebHost.UseUrls($"http://127.0.0.1:{cfg.SignalRPort}");
|
||||
|
||||
Reference in New Issue
Block a user