diff --git a/src/ClaudeDo.App/Program.cs b/src/ClaudeDo.App/Program.cs index 1757351..a3437fd 100644 --- a/src/ClaudeDo.App/Program.cs +++ b/src/ClaudeDo.App/Program.cs @@ -2,7 +2,6 @@ using Avalonia; using ClaudeDo.Data; using ClaudeDo.Data.Git; using ClaudeDo.Data.Repositories; -using ClaudeDo.Data.Seeding; using ClaudeDo.Ui; using ClaudeDo.Ui.Services; using ClaudeDo.Ui.ViewModels; @@ -31,7 +30,6 @@ sealed class Program { var db = scope.ServiceProvider.GetRequiredService(); ClaudeDoDbContext.MigrateAndConfigure(db); - DefaultListsSeeder.SeedAsync(db).GetAwaiter().GetResult(); } try diff --git a/src/ClaudeDo.Data/ClaudeDoDbContext.cs b/src/ClaudeDo.Data/ClaudeDoDbContext.cs index 1cef414..9d95673 100644 --- a/src/ClaudeDo.Data/ClaudeDoDbContext.cs +++ b/src/ClaudeDo.Data/ClaudeDoDbContext.cs @@ -1,4 +1,5 @@ using ClaudeDo.Data.Models; +using ClaudeDo.Data.Seeding; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage; @@ -73,5 +74,6 @@ public class ClaudeDoDbContext : DbContext } db.Database.Migrate(); + DefaultListsSeeder.SeedAsync(db).GetAwaiter().GetResult(); } } diff --git a/src/ClaudeDo.Installer/Steps/InitDatabaseStep.cs b/src/ClaudeDo.Installer/Steps/InitDatabaseStep.cs index 3630996..007b36c 100644 --- a/src/ClaudeDo.Installer/Steps/InitDatabaseStep.cs +++ b/src/ClaudeDo.Installer/Steps/InitDatabaseStep.cs @@ -1,5 +1,4 @@ using ClaudeDo.Data; -using ClaudeDo.Data.Seeding; using ClaudeDo.Installer.Core; using Microsoft.EntityFrameworkCore; @@ -21,7 +20,6 @@ public sealed class InitDatabaseStep : IInstallStep .Options; using var context = new ClaudeDoDbContext(options); ClaudeDoDbContext.MigrateAndConfigure(context); - DefaultListsSeeder.SeedAsync(context).GetAwaiter().GetResult(); progress.Report("Schema applied successfully"); return Task.FromResult(StepResult.Ok()); diff --git a/tests/ClaudeDo.Worker.Tests/UiSchema/TaskEntityFlagsTests.cs b/tests/ClaudeDo.Worker.Tests/UiSchema/TaskEntityFlagsTests.cs index d59b1e8..b4c9fa5 100644 --- a/tests/ClaudeDo.Worker.Tests/UiSchema/TaskEntityFlagsTests.cs +++ b/tests/ClaudeDo.Worker.Tests/UiSchema/TaskEntityFlagsTests.cs @@ -40,6 +40,25 @@ public class TaskEntityFlagsTests : IDisposable Assert.Equal("hello", loaded.Notes); } + [Fact] + public async Task Defaults_Are_False_And_Null_When_Not_Set() + { + await using var ctx = NewContext(); + var list = new ListEntity { Id = "l1", Name = "L", CreatedAt = DateTime.UtcNow }; + ctx.Lists.Add(list); + ctx.Tasks.Add(new TaskEntity + { + Id = "t2", ListId = "l1", Title = "T", CreatedAt = DateTime.UtcNow, + }); + await ctx.SaveChangesAsync(); + + await using var ctx2 = NewContext(); + var loaded = await ctx2.Tasks.SingleAsync(); + Assert.False(loaded.IsStarred); + Assert.False(loaded.IsMyDay); + Assert.Null(loaded.Notes); + } + public void Dispose() { try { if (File.Exists(_dbPath)) File.Delete(_dbPath); } catch { }