release: v1.2.1 — 修复 SECRET_KEY 持久化问题
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
8d5c8a04d6
commit
ccef534a8c
1 file changed
+36
@@ -1,5 +1,41 @@
|
||||
# DEVLOG(发布记录)
|
||||
|
||||
## v1.2.1(2026-03-02)
|
||||
|
||||
### 新增功能
|
||||
- **智能 SECRET_KEY 管理系统**:自动初始化、持久化保存、重启保护,彻底解决数据丢失问题
|
||||
- 首次启动自动生成 SECRET_KEY 并保存到 .env 文件
|
||||
- 重启时使用现有 SECRET_KEY,不再重新生成
|
||||
- 添加清晰的警告提示,提醒用户备份 .env 文件
|
||||
- **README 界面截图展示**:添加仪表盘、邮箱界面、验证码提取、设置界面 4 张最新截图
|
||||
|
||||
### 修复
|
||||
- **🔥 严重 Bug 修复**:修复 SECRET_KEY 每次重启都重新生成导致数据库加密数据无法解密的问题
|
||||
- 问题表现:重启后提示"邮箱不存在"、"Failed to decrypt data"错误
|
||||
- 根本原因:SECRET_KEY 变更导致 Fernet 加密密钥改变,无法解密旧数据
|
||||
- 解决方案:start.py 添加智能环境初始化,确保 SECRET_KEY 持久化
|
||||
- **自动环境配置**:如果 .env 文件不存在,自动从 .env.example 创建
|
||||
- **智能密钥检测**:只在 SECRET_KEY 为占位符(your-secret-key-here)时生成新密钥
|
||||
|
||||
### 重要变更
|
||||
- **start.py 重构**:添加 `ensure_env_file()` 智能环境初始化函数
|
||||
- 自动检查并创建 .env 文件
|
||||
- 智能判断是否需要生成新的 SECRET_KEY
|
||||
- 显示友好的提示信息(首次生成 vs 使用现有)
|
||||
- **截图更新**:清理 12 张旧截图,更新为 4 张最新界面截图
|
||||
- **用户体验改进**:添加 SECRET_KEY 重要性说明和备份建议
|
||||
|
||||
### 测试/验证
|
||||
- `python -m pytest tests/ --tb=short -q`:114 个测试全部通过
|
||||
- **SECRET_KEY 持久性验证**:
|
||||
- 首次启动:自动生成并保存 SECRET_KEY
|
||||
- 重启验证:SECRET_KEY 保持不变(980bb366e44920382e395a3116de578b...)
|
||||
- 多次重启:密钥始终一致,数据正常解密
|
||||
- **数据加密解密验证**:
|
||||
- 清空数据库后重新启动:使用相同 SECRET_KEY
|
||||
- 导入新账号:数据正常加密存储
|
||||
- 重启后读取:数据正常解密,无错误
|
||||
|
||||
## v1.2.0(2026-03-01)
|
||||
|
||||
### 新增功能
|
||||
|
||||
Reference in new issue
Block a user