Skip to content

Commit e43f0ea

Browse files
committed
CHORE: 移除退役的旧收藏导入流程
1 parent e612d45 commit e43f0ea

4 files changed

Lines changed: 3 additions & 581 deletions

File tree

‎TASKS.md‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
55
## 本次完成
66

7+
- [x] 移除已退役的 SharedPreferences→Drift 旧版数据导入(2026-10-03):从启动流程移除导入调用,删除仅供旧版 SP 数据迁移使用的实现及专属测试;当前 Drift 数据库初始化和应用内数据流程不变。相关启动测试与定向分析通过。**完成时间**: 2026-10-03 22:10
8+
- [x] 收藏复习队列直接从到期调度读取(2026-10-03):句子和词汇复习分别通过单条联表查询,从 `memory_schedules` 读取到期 active schedule 及对应收藏内容;内存中继续执行现有排序,避免遍历所有收藏并逐张读取 schedule。新增三个部分索引,并在 v58 升级中补齐旧版本可能缺失的收藏 subject ID 和 schedule;复习加载与重排日志记录来源、耗时和队列数量。定向测试 70 项通过,相关文件 `dart analyze` 通过。**完成时间**: 2026-10-03 21:41
79
- [x] 增加收藏与复习计划一致性诊断日志(2026-10-03):记录单词/意群收藏生命周期事务开始、提交、回滚及复习计划创建、无变化、归档、恢复和跳过原因;回滚日志标出失败阶段与异常类型,不输出数据库异常文本或收藏原文。生命周期测试 5 项通过,并验证成功事件顺序、失败阶段和日志不包含收藏原文;相关文件定向分析通过。**完成时间**: 2026-10-03 20:40
810
- [x] 修复收藏与复习计划一致性并删除绕行书签写入(2026-10-03):单词、意群的保存/删除/恢复与 schedule 变更统一放入同一数据库事务;移除依赖补偿写入的逻辑。删除 BookmarkManager 中无生产调用方的直接书签写入方法,持久化测试改走收藏生命周期。生命周期测试 5 项、书签持久化测试 6 项、选区收藏 widget 测试 41 项、词汇复习测试 19 项通过;相关文件 `flutter analyze` 通过。**完成时间**: 2026-10-03 20:28
911
- [x] 修复复习中切换复习顺序不立即生效(2026-10-03):句子复习与词汇/意群复习会重排尚未评分的队列,并立即显示新顺序的首张卡;提交结果未知时保留当前卡与幂等快照,成功重试或明确拒绝后才应用暂存顺序。评分总结只记录已确认成功的提交,队列未改变当前卡时保留翻面及预览状态。日志记录排序加载、暂存/应用结果、提交重试与未知结果,并限制队列日志只显示前 5 张卡。重排只读取 active 调度快照,不会恢复已取消收藏。相关测试与定向分析通过。**完成时间**: 2026-10-03 10:36

‎lib/database/migration/sp_to_drift_migration.dart‎

Lines changed: 0 additions & 260 deletions
This file was deleted.

‎lib/providers/startup_bootstrap_provider.dart‎

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ import '../config/auth_config.dart' as auth_config;
2525
import '../config/paddle_config.dart' as paddle_config;
2626
import '../config/revenuecat_config.dart' as revenuecat_config;
2727
import '../database/app_database.dart';
28-
import '../database/migration/sp_to_drift_migration.dart';
2928
import '../database/providers.dart';
3029
import '../features/onboarding_survey/providers/onboarding_survey_provider.dart'
3130
show sharedPreferencesProvider;
@@ -175,18 +174,12 @@ class DefaultStartupBootstrapper implements StartupBootstrapper {
175174
final issues = <StartupIssue>[];
176175
await _configurePersistentLogs(issues);
177176

178-
// 显式打开数据库,确保 Drift schema upgrade 的异常不会被旧数据导入吞掉。
177+
// 显式打开数据库,使 schema upgrade 失败进入本地初始化错误状态。
179178
await _trace('database_open_and_schema_check', () async {
180179
await _database.customSelect('SELECT 1').get();
181180
});
182181

183182
if (!_isDemoMode) {
184-
final migration = SpToDriftMigration(
185-
_database,
186-
_prefs,
187-
subtitleLoader: defaultSubtitleLoader,
188-
);
189-
await _trace('shared_preferences_to_drift_migration', migration.migrate);
190183
await _runBestEffort(
191184
issues,
192185
'bundled_examples_install',

0 commit comments

Comments
 (0)