mirror of
https://github.com/jackwener/OpenCLI.git
synced 2026-09-14 18:25:42 +08:00
23beb9508c
* fix(youtube): channel videos-tab fallback reads wrong tab from InnerTube response After PR #1109, `opencli youtube channel <id>` still returns empty `recent_videos` for channels whose Home tab is empty AND whose InnerTube `/youtubei/v1/browse` response includes multiple tabs. Root cause: the fallback fetch sends a browse request with the Videos tab's `params`. The response, however, includes ALL tabs (Home, Videos, Shorts, ...), with only the requested tab marked `selected: true`. The existing code reads `tabs?.[0]?.tabRenderer?.content?.richGridRenderer?.contents` — for multi-tab responses `tabs[0]` is Home (empty), so `richGrid` ends up `[]` and `recentVideos` stays empty. PR #1109's test channels happened to return single-tab lists with Videos at index 0, masking the bug. Fix: find the tab with `selected: true` instead of assuming `tabs[0]`. Reproducer: `opencli youtube channel UC44DSuDgw7_qccvZzIK3Jpg` (杀鱼伟-Vi, ~3.1K subs, posts daily). Returns 0 videos pre-patch, 30+ videos post-patch. `npm run typecheck` clean, `npm test` passes (1952/1952). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(youtube): preserve videos tab fallback --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Co-authored-by: jackwener <jakevingoo@gmail.com>