Per-list optional VerifyCommand (list_config.verify_command) runs via VerifyCommandRunner in the list's working dir right after a successful merge/continue-merge, before the task is allowed to reach Done. A non-zero exit or timeout leaves the merge in place but keeps the task out of Done and reports StatusVerifyFailed with an output excerpt through MergeResultDto/review_task; no command configured behaves exactly as before. Merges against the same repo are now serialized per working dir so a running verify can't be interrupted by a second merge landing mid-build. Adds the field to the List Settings modal (en/de localized) and covers success/failure/timeout in TaskMergeServiceTests + VerifyCommandRunnerTests.
23 lines
925 B
C#
23 lines
925 B
C#
using ClaudeDo.Data.Models;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Metadata.Builders;
|
|
|
|
namespace ClaudeDo.Data.Configuration;
|
|
|
|
public class ListConfigEntityConfiguration : IEntityTypeConfiguration<ListConfigEntity>
|
|
{
|
|
public void Configure(EntityTypeBuilder<ListConfigEntity> builder)
|
|
{
|
|
builder.ToTable("list_config");
|
|
|
|
builder.HasKey(c => c.ListId);
|
|
builder.Property(c => c.ListId).HasColumnName("list_id");
|
|
builder.Property(c => c.Model).HasColumnName("model");
|
|
builder.Property(c => c.SystemPrompt).HasColumnName("system_prompt");
|
|
builder.Property(c => c.AgentPath).HasColumnName("agent_path");
|
|
builder.Property(c => c.MaxTurns).HasColumnName("max_turns");
|
|
builder.Property(c => c.SessionSkills).HasColumnName("session_skills");
|
|
builder.Property(c => c.VerifyCommand).HasColumnName("verify_command");
|
|
}
|
|
}
|