perf(storage): 极简化任务历史并增加保留治理
停止持久化 provider 原始响应、兼容响应快照、attempt/event/outbox 重复 JSON,并由标准任务结果动态生成 Kling/Keling/Volces 兼容响应。 增加事件去重与预算、极简 callback 投递、7/30 天分批清理、安全删除条件、并发迁移索引及可实际恢复的任务域排除备份。历史清理默认关闭,待兼容协议和异步恢复在线验证后单独启用。 验证:Go 全量测试与 go vet、PostgreSQL 18 集成与实际备份恢复、迁移安全测试、bash -n、ShellCheck、Compose 配置和人工发布脚本测试均通过。
This commit is contained in:
@@ -81,3 +81,22 @@ func TestValidateAsyncWorkerSettings(t *testing.T) {
|
||||
t.Fatalf("Validate() error = %v, want invalid non-integer hard limit", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestValidateTaskHistorySettings(t *testing.T) {
|
||||
cfg := Load()
|
||||
cfg.TaskRetentionDays = 30
|
||||
cfg.TaskAnalysisRetentionDays = 31
|
||||
if err := cfg.Validate(); err == nil || !strings.Contains(err.Error(), "ANALYSIS_RETENTION") {
|
||||
t.Fatalf("Validate() error = %v, want invalid analysis retention", err)
|
||||
}
|
||||
cfg.TaskAnalysisRetentionDays = 7
|
||||
cfg.TaskCleanupIntervalSeconds = 59
|
||||
if err := cfg.Validate(); err == nil || !strings.Contains(err.Error(), "CLEANUP_INTERVAL") {
|
||||
t.Fatalf("Validate() error = %v, want invalid cleanup interval", err)
|
||||
}
|
||||
cfg.TaskCleanupIntervalSeconds = 300
|
||||
cfg.TaskCleanupBatchSize = 5001
|
||||
if err := cfg.Validate(); err == nil || !strings.Contains(err.Error(), "CLEANUP_BATCH") {
|
||||
t.Fatalf("Validate() error = %v, want invalid cleanup batch", err)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user