fix: validate explicit migrations and preserve large business ids

This commit is contained in:
Yvan
2026-11-06 07:00:05 +08:00
parent f6f2a4745e
commit 0f0ec2e6d7
53 changed files with 2653 additions and 1445 deletions
+1 -1
View File
@@ -106,7 +106,7 @@ func Definition() module.Definition {
})
}})
migrations = append(migrations, migration.Step{ID: "202611050021_business_alert_surface", Migrate: migrateAlertSurface})
definition := module.Definition{Name: "business", Migrations: migrations, TimedTasks: append([]module.TimedTask{alertDetectionTask}, tasks...), Surface: module.Surface{
definition := module.Definition{Name: "business", Migrations: migrations, Prerequisites: databusiness.CheckPrerequisites, ValidateSchema: databusiness.CheckSchema, TimedTasks: append([]module.TimedTask{alertDetectionTask}, tasks...), Surface: module.Surface{
Menus: []module.Menu{
alertExemptionMenu,
performanceMenu,
+2 -2
View File
@@ -25,8 +25,8 @@ func TestCatalogContainsBuiltInModulesInDependencyOrder(t *testing.T) {
t.Fatalf("definition[%d] = %q, want %q", index, got, name)
}
}
if got := catalog.MigrationSteps(); len(got) != 35 {
t.Fatalf("module migrations = %d, want 35", len(got))
if got := catalog.MigrationSteps(); len(got) != 37 {
t.Fatalf("module migrations = %d, want 37", len(got))
}
var menus, apis int
for _, definition := range catalog.Definitions {
+3 -2
View File
@@ -20,8 +20,9 @@ func Definition() module.Definition {
}, 888)
}})
return module.Definition{
Name: "integration",
Migrations: migrations,
Name: "integration",
ValidateSchema: dataintegration.CheckSchema,
Migrations: migrations,
Surface: module.Surface{
Menus: []module.Menu{
{Name: "integrationConfig", Path: "integrationConfig", ParentName: "extensions", Component: "view/systemTools/integration/config.vue", Title: "通信集成", Icon: "connection", Sort: 8},
+4 -3
View File
@@ -56,8 +56,9 @@ func Definition() module.Definition {
return datasystem.GrantMenuAPIs(db, "paymentOrders", orderReadAPIs)
}})
return module.Definition{
Name: "payment",
Migrations: migrations,
Surface: adminSurface,
Name: "payment",
ValidateSchema: datapayment.CheckSchema,
Migrations: migrations,
Surface: adminSurface,
}
}
+3 -2
View File
@@ -11,7 +11,8 @@ import (
// catalog. Other business modules can expose the same shape independently.
func Definition() module.Definition {
return module.Definition{
Name: "system",
Migrations: datasystem.Migrations(),
Name: "system",
Migrations: datasystem.Migrations(),
ValidateSchema: datasystem.CheckSchema,
}
}
+4 -3
View File
@@ -8,9 +8,10 @@ import (
func Definition() module.Definition {
return module.Definition{
Name: "task",
Migrations: datatask.Migrations(),
TimedTasks: TimedTasks(),
Name: "task",
ValidateSchema: datatask.CheckSchema,
Migrations: datatask.Migrations(),
TimedTasks: TimedTasks(),
}
}