* fix: harden preload argv parsing for popup windows * fix: align youtube playback with shared overlay startup * fix: unwrap mpv youtube streams for anki media mining * docs: update docs for youtube subtitle and mining flow * refactor: unify cli and runtime wiring for startup and youtube flow * feat: update subtitle sidebar overlay behavior * chore: add shared log-file source for diagnostics * fix(ci): add changelog fragment for immersion changes * fix: address CodeRabbit review feedback * fix: persist canonical title from youtube metadata * style: format stats library tab * fix: address latest review feedback * style: format stats library files * test: stub launcher youtube deps in CI * test: isolate launcher youtube flow deps * test: stub launcher youtube deps in failing case * test: force x11 backend in launcher ci harness * test: address latest review feedback * fix(launcher): preserve user YouTube ytdl raw options * docs(backlog): update task tracking notes * fix(immersion): special-case youtube media paths in runtime and tracking * feat(stats): improve YouTube media metadata and picker key handling * fix(ci): format stats media library hook * fix: address latest CodeRabbit review items * docs: update youtube release notes and docs * feat: auto-load youtube subtitles before manual picker * fix: restore app-owned youtube subtitle flow * docs: update youtube playback docs and config copy * refactor: remove legacy youtube launcher mode plumbing * fix: refine youtube subtitle startup binding * docs: clarify youtube subtitle startup behavior * fix: address PR #31 latest review follow-ups * fix: address PR #31 follow-up review comments * test: harden youtube picker test harness * udpate backlog * fix: add timeout to youtube metadata probe * docs: refresh youtube and stats docs * update backlog * update backlog * chore: release v0.9.0
3.0 KiB
id, title, status, assignee, created_date, updated_date, labels, dependencies, references, priority, ordinal
| id | title | status | assignee | created_date | updated_date | labels | dependencies | references | priority | ordinal | |||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TASK-221 | Assess and address PR #31 latest CodeRabbit review | Done | 2026-03-23 07:53 | 2026-03-24 06:41 |
|
|
medium | 152500 |
Description
Inspect the latest CodeRabbit review on PR #31, evaluate each actionable comment against the current branch, implement valid fixes, verify the changes, and prepare PR thread updates.
Implementation Plan
- Inspect latest CodeRabbit review on PR #31 and separate valid action items from non-blocking suggestions.
- Add regression coverage for any real bugs before changing production code.
- Implement the minimal fixes for confirmed issues in runtime, renderer modal flow, and test fixtures.
- Run targeted tests plus repo-native verification lanes.
- Update PR threads with fix status and rationale for any comments not actioned yet.
Implementation Notes
Implemented and pushed commit 207151db to PR #31.
Replied in-thread to the CodeRabbit comments for YouTube host matching, duplicate picker submissions, and missing MediaDetailView test fixture videoId fields.
Follow-up scope added: update release-facing docs/changelog for the YouTube subtitle picker work and run a release-readiness gate before handoff.
Added release-facing docs/changelog updates in commit b7e0026d and pushed them to PR #31.
Ran the release-readiness gate: changelog:lint, changelog:pr-check, verify:config-example, typecheck, test:fast, test:env, build, test:smoke:dist, docs:test, docs:build.
Final Summary
Assessed the latest CodeRabbit review on PR #31 and applied the confirmed fixes. Tightened isYoutubeMediaPath() to match only exact YouTube hosts or subdomains with a regression test for notyoutube.com, added an in-flight guard plus temporary control disabling to the YouTube track picker with a duplicate-submit regression test, replaced the picker empty-state innerHTML fallback with explicit DOM construction, and added the missing videoId fields to the MediaDetailView test fixtures. Verified with targeted Bun tests and the runtime-compat verification lane (build, test:runtime:compat, test:smoke:dist).
Updated README.md, docs-site/usage.md, and changes/2026-03-23-immersion-youtube.md so the PR is release-facing and user-visible surfaces describe the YouTube subtitle picker flow plus its latest hardening.
Release-readiness checks passed locally: bun run changelog:lint, bun run changelog:pr-check, bun run verify:config-example, bun run typecheck, bun run test:fast, bun run test:env, bun run build, bun run test:smoke:dist, bun run docs:test, and bun run docs:build.