- Slim Entry.cs from ~550 to ~330 lines (thin dispatcher only) - Extract HtmlSanitizer, CommandLogger, EntryFileService from Entry.cs - Extract PythonSidecarClient from duplicated sidecar plumbing - Add IEntryFileRepository + DiskEntryFileRepository (mirrors Fragment pattern) - Move payload records to Dtos/CommandDtos.cs - Move database result records to Dtos/DatabaseDtos.cs - Register new services and repository in DI - All 70/70 smoke tests pass, no behavior changes Co-Authored-By: Warp <agent@warp.dev>
15 lines
573 B
C#
15 lines
573 B
C#
using Journal.Core.Dtos;
|
|
|
|
namespace Journal.Core.Services;
|
|
|
|
public interface IJournalDatabaseService
|
|
{
|
|
string GetDatabasePath(string? dataDirectory = null);
|
|
byte[] DeriveDatabaseKey(string password);
|
|
string BuildPragmaKeyStatement(string password);
|
|
IReadOnlyDictionary<string, string> GetSchemaStatements();
|
|
string WriteSchemaBootstrap(string? dataDirectory = null);
|
|
JournalDatabaseStatus GetStatus(string password, string? dataDirectory = null);
|
|
JournalDatabaseHydrationResult HydrateWorkspace(string password, string? dataDirectory = null);
|
|
}
|