diff --git a/.gitignore b/.gitignore
index d7cbfe5..23a269b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,14 +8,14 @@
*.pdb
# MiGu.Server 运行时数据(含敏感 token)
-backends/MiGu.Server/data/*.json
-backends/MiGu.Server/data/*.db
-backends/MiGu.Server/data/*.db-shm
-backends/MiGu.Server/data/*.db-wal
-backends/MiGu.Server/data/.internal-token
+MiGu.Server/data/*.json
+MiGu.Server/data/*.db
+MiGu.Server/data/*.db-shm
+MiGu.Server/data/*.db-wal
+MiGu.Server/data/.internal-token
# 前端构建产物
-backends/MiGu.Server/wwwroot/
+MiGu.Server/wwwroot/
frontends/apps/simple-platform-vue/auto-imports.d.ts
# 临时构建输出
diff --git a/MiGu.Server/MiGu.Server.csproj b/MiGu.Server/MiGu.Server.csproj
index 3e818bc..46fda33 100644
--- a/MiGu.Server/MiGu.Server.csproj
+++ b/MiGu.Server/MiGu.Server.csproj
@@ -16,6 +16,11 @@
+
+
+
+
+
diff --git a/MiGu.Server/Program.cs b/MiGu.Server/Program.cs
index 1cea473..bb07449 100644
--- a/MiGu.Server/Program.cs
+++ b/MiGu.Server/Program.cs
@@ -6,6 +6,7 @@ using Microsoft.OpenApi.Models;
using MiGu.Server.Auth;
using MiGu.Server.Configs;
using MiGu.Server.Launcher;
+using MiGu.Server.Persistence;
using Yarp.ReverseProxy.Transforms;
static string? FindSourceContentRoot(string startDir)
@@ -216,6 +217,7 @@ builder.Services.AddSingleton();
builder.Services.AddSingleton();
// OpsController 真实转发 SimpleLite reflection execute 所需的 HttpClient 工厂。
builder.Services.AddHttpClient();
+builder.Services.AddPlatformPersistence(builder.Configuration);
// 会话 N+1(启动反转):把 SimpleLite 子进程拉起器接入 DI;AuthController 登录成功后按 LaunchMode 调 MaybeStart。
// 配置段绑定 appsettings.json:SimpleLite,可被环境变量 SIMPLELITE__XXX 覆盖。
@@ -223,6 +225,7 @@ builder.Services.Configure(builder.Configuration.GetSection("
builder.Services.AddSingleton();
var app = builder.Build();
+await app.Services.EnsurePlatformDatabaseAsync();
// 启动期主动构造 JwtIssuer / InternalTokenStore:让 secret 校验日志在请求来之前打印。
_ = app.Services.GetRequiredService();