docs: 记录 K95 频道切换修复留痕

This commit is contained in:
Zhou Weidong committed 2026-10-21 17:47:10 +08:00
1 parent 9baab3777a
commit c70054e83d
2 files changed
+149

No files matched your search

+49
View File
@@ -24072,6 +24072,47 @@ Build successful. Please see dist-dev directory
- 已先写计划 `docs/plans/2026-10-21-K94-home-type-feed.md`,记录数据层、频道缓存、
首页无感切换、播放器队列更新、分页触发和测试矩阵。
- 不改后端、ReelShortWeb、specs;不安装或操作真机。
- 已完成 HomeFeedController 状态机:每频道保存 loaded/loading/inFlight/lastError;
响应始终写回发起频道,仅当前频道 notify;requestSeq 仅处理同频道新旧请求。
- 首屏/刷新加入默认 10 秒可注入超时;无在飞请求时 `loadingFirstPage=false`;
失败频道再次选中会自动重试,loadMore 失败保留游标与 hasMore。
- 已完成 PlayerLogic feedRevision 与串行更新:连续 updateFeed 只应用最新 feed;
session 替换和 selectEpisode await 后校验 revision;空→非空恢复播放并 select(0)。
- PlayerPage.didUpdateWidget 改用 drama id 列表签名判断变化,频道变化传 resetToFirst。
门禁原始输出:
```text
$ dart analyze lib test
Analyzing lib, test...
No issues found!
$ flutter test --no-pub
00:51 +539: All tests passed!
$ flutter build apk --debug
Running Gradle task 'assembleDebug'... 24.8s
✓ Built build/app/outputs/flutter-apk/app-debug.apk
```
解读:K95 静态分析零告警,539 项全量测试通过,debug APK 构建成功;
控制器/播放器定向测试 39 项也已单独复核通过。未安装或操作真机。
### K95 交付结果
- ReelShort 功能提交:`3c4d65a fix(home): 修复频道快速切换卡 loading`。
- ReelShort develop 合并提交:`dfa79be merge: 合并 K95 频道切换加载修复`,
已推送 `c8392b2..dfa79be`。
- HomeFeedController 已按发起频道写回请求结果;每频道独立维护
loaded/loading/inFlight/lastError,跨频道响应不再丢失,无在飞请求时不会转圈。
- 首屏/刷新加入默认 10 秒可注入超时;失败频道再次选中会自动重试;
同频道 requestSeq 保留,loadMore 失败保留 hasMore/cursor。
- PlayerLogic 已加入 feedRevision 和串行 feed 更新;旧 session/select 异步流程会被 revision 丢弃,
连续更新只应用最后一份 feed;空→非空恢复播放并从第 1 个开始。
- PlayerPage 使用 drama id 列表签名判断变化,频道变化通过 resetToFirst 强制回到第 1 个。
- 门禁:`dart analyze lib test` 零告警;`flutter test --no-pub` 539 项全过;
`flutter build apk --debug` 成功生成 `build/app/outputs/flutter-apk/app-debug.apk`。
- 未改后端、ReelShortWeb、specs;未安装或操作真机,等待用户验收。
- 已完成数据层:新增 `FeedPage`,`CatalogApi.feed` 与 `CatalogRepository.fetchFeed`
支持 types/cursor/size,并补齐所有测试仓库实现。
- 已完成 `HomeFeedChannel` 与 `HomeFeedController`:推荐 seed、三频道独立缓存、
@@ -24114,3 +24155,11 @@ Running Gradle task 'assembleDebug'... 27.9s
- 门禁:`dart analyze lib test` 零告警;`flutter test --no-pub` 532 项全过;
`flutter build apk --debug` 成功生成 `build/app/outputs/flutter-apk/app-debug.apk`。
- 未改后端、ReelShortWeb、specs;未安装或操作真机,等待用户验收。
## 2026-10-21 K95 修复首页频道快速切换卡 Loading
- 已完整读取 K95 `docs/plans/INBOX.md`;本批次只改 ReelShort Flutter 客户端。
- 已创建 ReelShort `fix/k95-feed-switch-loading` worktree,基于最新 `origin/develop`。
- 已先写计划 `docs/plans/2026-10-21-K95-feed-switch-loading.md`,明确频道请求归属、
loading/in-flight 状态、超时、Player feedRevision 与串行化方案。
- 不改后端、ReelShortWeb、specs;不安装或操作真机。