feat(worker): session skills SignalR surface + per-level persistence

This commit is contained in:
Mika Kuns
2026-07-23 16:47:14 +02:00
committed by mika kuns
parent 4626481359
commit b4c58087d2
18 changed files with 397 additions and 19 deletions
@@ -72,4 +72,33 @@ public sealed class TaskRepositoryAgentSettingsTests : IDisposable
Assert.Null(entity.SystemPrompt);
Assert.Null(entity.AgentPath);
}
[Fact]
public async Task UpdateAgentSettingsAsync_Persists_SessionSkills()
{
var taskId = await SeedTaskAsync();
await _repo.UpdateAgentSettingsAsync(taskId, null, null, null, sessionSkills: "[\"ponytail\",\"ponytail-help\"]");
var entity = await _repo.GetByIdAsync(taskId);
Assert.NotNull(entity);
Assert.Equal("[\"ponytail\",\"ponytail-help\"]", entity!.SessionSkills);
}
[Fact]
public async Task UpdateAgentSettingsAsync_Null_SessionSkills_ClearsColumn()
{
var taskId = await SeedTaskAsync();
using (var ctx = _db.CreateContext())
{
await new TaskRepository(ctx).UpdateAgentSettingsAsync(taskId, null, null, null, sessionSkills: "[\"a\"]");
}
await _repo.UpdateAgentSettingsAsync(taskId, null, null, null, sessionSkills: null);
var entity = await _repo.GetByIdAsync(taskId);
Assert.NotNull(entity);
Assert.Null(entity!.SessionSkills);
}
}