diff --git a/docs/DEVLOG.md b/docs/DEVLOG.md index 8ca47ce..408f35e 100644 --- a/docs/DEVLOG.md +++ b/docs/DEVLOG.md @@ -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) ### 新增功能