fix: 提供 SQLite 迁移故障恢复开关

This commit is contained in:
Logan.Li committed 2026-07-30 23:49:38 +08:00
1 parent 99b5d94dc2
commit f22e575124
3 files changed
+28 -15

No files matched your search

+3
View File
@@ -266,6 +266,9 @@ WebSocket 无法设自定义 header → 后端 JWTAuth 支持 `?token=` query pa
3. **新增 handler 不绑 model** — 用独立 request struct
4. **GORM 指针字段必须解引用** — `*field` 后再用
5. **Update handler 禁止复用 CreateRequest** — 用 `map[string]interface{}` 接收
6. **高频数据必须有保留策略** — 监控、Agent 上报、日志和审计数据必须可配置保留期、定时清理并记录影响行数和任务结果;不能无限累积。
7. **SQLite 清理必须回收文件空间** — `DELETE` 后文件不会自动变小。备份成功且应用停写的维护窗口内,执行 `PRAGMA wal_checkpoint(TRUNCATE)` 与 `VACUUM`,并验证主库/WAL 体积;高峰期禁止 `VACUUM`。
8. **避免启动期重建大表** — SQLite 下 GORM `AutoMigrate` 可能通过重建表完成结构变更并放大 WAL 写入;大表结构变更必须可追踪、幂等,不得每次启动无条件重建。
### ⛔ React 前端规范