31 lines
1.5 KiB
Markdown
31 lines
1.5 KiB
Markdown
# 更新日志
|
||
|
||
本项目的所有显著变更都记录在此文件中。
|
||
格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/),
|
||
版本遵循 [语义化版本](https://semver.org/lang/zh-CN/)。
|
||
|
||
## [0.1.0] - 2026-10-16
|
||
|
||
首个公开版本。
|
||
|
||
### Added
|
||
- 云优先多用户架构:所有数据存服务器,按用户独立 SQLite 档案库;浏览器 / PWA / Windows 桌面三端同源
|
||
- 留痕本体:自定义记录类型 + 动态表单、维度、指标、全文检索(FTS5 trigram 中文)、时间线、统计总览
|
||
- 学业成绩:学期 GPA/排名、课程成绩、绩点梯度自定义与趋势图
|
||
- 附件:SHA-256 内容寻址去重存储
|
||
- 管理后台:邀请码全生命周期管理(自定义码、备注、启用/停用、删除、批量生成)、用户列表、注册配额
|
||
- 演示账号 demo/demo1234:启动自动播种 16 条足迹 + 4 学期成绩(幂等、失败自愈)
|
||
- PWA(sw v3:接口永不缓存)与 Tauri 桌面安装包
|
||
- 质量设施:pre-push 钩子、静态检查套件、35 条集成断言、部署冒烟脚本、Gitea Actions CI
|
||
|
||
### Fixed
|
||
- 登录持久化与刷新丢会话
|
||
- Service Worker 缓存 /auth/me 导致切换账号后仍显示旧用户
|
||
- 静态兜底邀请码(INVITE_CODE)注册路径不可达
|
||
- 容器内命令层挂载方式不可靠导致的「未知命令」
|
||
- 桌面构建可能嵌入过期前端(beforeBuildCommand 缺失)
|
||
|
||
### Security
|
||
- scrypt 口令散列 + timingSafeEqual 校验
|
||
- Bearer Token(365 天过期)、按用户数据隔离、邀请码注册门控
|