Files
xianyan/CHANGELOG.md
Developer 00ff5f152a feat: 添加清除结果功能到检查提供者
refactor: 更新URL哈希处理逻辑

feat: 添加聊天消息存储支持

docs: 更新API控制器基类文档

chore: 删除无用脚本文件

fix: 修复分类模型返回类型问题

feat: 添加回执登录功能

build: 更新依赖项配置

style: 统一HTML模板中的哈希ID引用格式

ci: 添加部署和检查脚本
2026-04-30 10:19:56 +08:00

7.2 KiB
Raw Blame History

Changelog

所有重要变更均记录于此文件。格式基于 Keep a Changelog


[1.40.0] - 2026-04-30

🔐 v8.0.0 用户安全接口升级 — 回执验证替代邮箱验证码

重大变更:

  1. 🔑 回执(Receipt)验证机制 — 客户端自行验证邮箱后生成HMAC-SHA256回执服务端验签放权

    • 新增 ReceiptHelper 工具类:生成 receipt+sig支持6种action类型
    • 密钥: Xy7kP9mL2qR4wS8v有效期300秒nonce防重放
  2. 📧 新增回执登录(receiptLogin) — 账号+回执+签名,无需密码

    • 支持用户名/邮箱/手机号 + 回执登录
    • 本地SMTP发送验证码 → 验证通过 → 生成回执 → 登录
  3. 📝 注册流程变更 — 移除emailCode参数改用receipt+sig

    • 客户端本地验证邮箱通过SMTP发送验证码
    • 验证通过后自动生成回执提交注册
  4. 🔐 密码管理变更 — 修改密码/重置密码改用回执验证

    • changepwd: 非测试用户需receipt+sig (payload=userId)
    • resetpwd: 必须receipt+sig (payload=邮箱或手机号)
  5. 📧📱 邮箱/手机变更变更 — 改用回执验证替代captcha

    • changeemail: receipt+sig (payload=新邮箱)
    • changemobile: receipt+sig (payload=新手机号)
  6. 🎯 LoginPage三种登录方式 — 密码登录/验证码登录/Token登录

    • CupertinoSlidingSegmentedControl切换登录模式
    • 验证码登录: 本地SMTP发送验证码 + 回执登录
    • Token登录: 直接使用Token令牌
  7. 📨 EmailService — 本地SMTP发送验证码邮件

    • 使用mailer库 (free.mboxhosting.com:465 SSL)
    • Apple风格HTML邮件模板
    • 5分钟有效期验证码

API测试验证: 10/11 通过 (1个失败为业务逻辑正常行为)

修改文件:

  • lib/core/utils/receipt_helper.dart🆕 HMAC-SHA256回执生成工具
  • lib/features/auth/services/email_service.dart🆕 本地SMTP验证码服务
  • lib/features/auth/services/user_security_service.dart — 回执验证+receiptLogin
  • lib/features/auth/services/auth_service.dart — 同步参数变更
  • lib/features/auth/providers/auth_provider.dart — 移除emailCode改用receipt
  • lib/features/auth/presentation/login_page.dart — 三种登录方式+注册验证码
  • pubspec.yaml — 新增 mailer: ^7.1.0
  • Script/receipt_api_test.dart🆕 v8.0.0回执API测试脚本

[1.39.0] - 2026-04-30

🎴 卡片震动/Slidable冲突修复/分类切换优化

变更:

  1. 📳 卡片切出震动反馈

    • 卡片左右滑出时触发HapticFeedback.mediumImpact()
  2. 🔒 Slidable与分类切换冲突修复

    • AppSlidable改为StatefulWidget内部持有SlidableController
    • 新增onOpened/onClosed回调追踪Slidable打开/关闭状态
    • HomePage通过_slidableOpenCount计数器追踪打开的Slidable数量
    • Slidable打开时禁止Listener触发分类切换避免操作按钮未完全呼出就切换分类
    • 操作按钮完全呼出后Slidable关闭才允许右滑切换分类
  3. 🤝 卡片与Slidable滑动冲突解决

    • 卡片区域(offset<250)水平滑动不触发分类切换
    • Slidable打开时水平滑动不触发分类切换
    • 垂直滚动时不会误触分类切换

修改文件:

  • lib/features/home/presentation/home_daily_card.dart — 卡片切出震动反馈
  • lib/features/home/presentation/home_page.dart — _slidableOpenCount追踪、分类切换守卫
  • lib/shared/widgets/app_slidable.dart — StatelessWidget→StatefulWidget、SlidableController、onOpened/onClosed回调

🚀 API功能全面接入阶段三~六)

阶段三: 成就激励体系 (4/4 完成)

  • 🏆 成就中心页 — 头衔进度+已达成/进行中列表+领取奖励
  • 📝 学习打卡 — 6种打卡类型(诗词/成语/故事/名言/游戏/国学)+打卡记录
  • 🎖️ 头衔系统 — 多级头衔展示+当前头衔高亮
  • 🎁 奖励领取 — 成就达成后领取积分+弹窗提示

阶段四: 内容创作社区 (3/3 完成)

  • 📝 文章广场 — 分类筛选+文章卡片+搜索
  • ✏️ 文章编辑 — 标题+内容+摘要+分类+标签
  • 📄 我的文章 — 管理已发布文章+删除+编辑

阶段五: 工具增强 (3/3 完成)

  • 🔍 内容查重 — 精确/模糊/相似度/综合4种模式+5种数据源+风险报告
  • 💰 金币记录 — 时间线展示积分变动+来源emoji
  • 👤 公开用户主页 — 头像+昵称+头衔+积分+文章+收藏统计

ourceType


[1.31.0] - 2026-04-29

🚀 API功能全面接入阶段一+阶段二)

阶段一: 基础补齐 (7/7 完成)

  • 📚 个人学习中心页 — 仪表盘+每日推荐+热力图+统计
  • 📅 签到增强 — 月历视图+补签功能
  • 📖 国学经典专区 — 11种古籍分类+搜索
  • 🏥 健康生活专区 — 6大健康分类+搜索
  • 🎯 推荐偏好设置 — 7种内容类型偏好开关
  • 💬 Feed互动增强 — 评论输入+评分+阅读时长
  • 📊 数据可视化 — fl_chart折线图+饼图

阶段二: 游戏互动中心 (5/5 完成)

  • 🎮 游戏中心主页 — 6大游戏入口
  • 📝 诗词填空 — 选项填空+验证+计分
  • 🔗 成语接龙 — 接龙链+输入验证+提示
  • 谜语/脑筋急转弯/歇后语 — 揭晓答案+切换
  • 🌸 飞花令 — 诗词含字接龙

新增文件:

  • lib/features/user_center/presentation/learning_center_page.dart
  • lib/features/classics/ — 国学经典模块(Service+Provider+Page)
  • lib/features/health/ — 健康生活模块(Service+Provider+Page)
  • lib/features/game/ — 游戏中心模块(Models+Service+4个Page)

修改文件:

  • lib/features/user_center/services/user_center_service.dart — 新增5个每日推荐API
  • lib/features/user_center/providers/dashboard_provider.dart — 扩展dailyRecommend状态
  • lib/features/signin/presentation/signin_page.dart — 添加月历视图+补签
  • lib/features/search/presentation/user_preference_page.dart — 添加内容偏好开关
  • lib/features/home/presentation/home_sentence_card.dart — 添加评论输入
  • lib/features/statistics/presentation/statistics_page.dart — 添加fl_chart图表
  • lib/features/inspiration/services/tool_api_service.dart — 新增7个统计API
  • lib/features/inspiration/models/tool_item.dart — 添加国学/健康/游戏入口
  • lib/core/router/app_router.dart — 新增4个路由(learning/classics/health/game)
  • lib/features/profile/presentation/profile_page.dart — 添加学习中心入口
  • pubspec.yaml — 添加fl_chart依赖


已归档版本

1.30.0(中国传统色页面增强重构) / 1.23.0(Phase A偷工减料修复+Phase B缺失功能补全) / 1.22.0(句子广场交互增强:间距优化/循环滚动/边缘光晕) / 1.21.0(Bug修复:数据管理卡死/Tab抖动/密码页/详情Sheet/字体管理) / 1.20.0 / 1.19.0 / 1.18.0 / 1.17.0 / 1.16.0 / 1.15.0 / 1.14.0 / 1.13.0 / 1.10.0 / 1.7.16 / 1.7.15 / 1.7.14 / 1.7.13 / 1.7.12 / 1.7.11 / 1.7.10 / 1.7.9 / 1.7.8 / 1.7.7 / 1.7.6 / 1.7.5 / 1.7.4 / 1.7.3 / 1.7.2 / 1.7.1 / 1.7.0 / 1.6.4 / 1.6.3 / 1.6.2 / 1.6.1 / 1.6.0 / 1.5.2 / 1.5.1 / 1.5.0 / 1.4.1 / 1.4.0 / 1.3.0 / 1.2.0 / 0.28.x / 0.27.0 / 0.26.0 — 详见 git history