chore(backlog): sync task metadata and finalize jellyfin task states

This commit is contained in:
2026-02-17 20:34:45 -08:00
parent 7c1d81ea80
commit a531527e1f
57 changed files with 117 additions and 117 deletions

View File

@@ -4,12 +4,12 @@ title: Refactor runtime services per plan.md
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-10 18:46' created_date: '2026-02-10 18:46'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
references: references:
- plan.md - plan.md
ordinal: 1000 ordinal: 2000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:46' created_date: '2026-02-10 18:46'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
references: references:
@@ -13,7 +13,7 @@ references:
- src/main.ts - src/main.ts
- src/core/services/index.ts - src/core/services/index.ts
parent_task_id: TASK-1 parent_task_id: TASK-1
ordinal: 11000 ordinal: 12000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:46' created_date: '2026-02-10 18:46'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-1.1 - TASK-1.1
@@ -16,7 +16,7 @@ references:
- src/core/services/tokenizer-service.ts - src/core/services/tokenizer-service.ts
- src/core/services/app-lifecycle-deps-runtime-service.ts - src/core/services/app-lifecycle-deps-runtime-service.ts
parent_task_id: TASK-1 parent_task_id: TASK-1
ordinal: 9000 ordinal: 10000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:46' created_date: '2026-02-10 18:46'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-1.2 - TASK-1.2
@@ -17,7 +17,7 @@ references:
- src/core/services/numeric-shortcut-session-service.ts - src/core/services/numeric-shortcut-session-service.ts
- src/core/services/app-ready-runtime-service.ts - src/core/services/app-ready-runtime-service.ts
parent_task_id: TASK-1 parent_task_id: TASK-1
ordinal: 5000 ordinal: 6000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:46' created_date: '2026-02-10 18:46'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-1.3 - TASK-1.3
@@ -15,7 +15,7 @@ references:
- src/core/services/overlay-visibility-service.ts - src/core/services/overlay-visibility-service.ts
- src/core/services/tokenizer-deps-runtime-service.ts - src/core/services/tokenizer-deps-runtime-service.ts
parent_task_id: TASK-1 parent_task_id: TASK-1
ordinal: 2000 ordinal: 3000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:46' created_date: '2026-02-10 18:46'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-1.4 - TASK-1.4
@@ -16,7 +16,7 @@ references:
- src/core/services/tokenizer-service.ts - src/core/services/tokenizer-service.ts
- src/core/services/cli-command-service.ts - src/core/services/cli-command-service.ts
parent_task_id: TASK-1 parent_task_id: TASK-1
ordinal: 4000 ordinal: 5000
--- ---
## Description ## Description

View File

@@ -4,14 +4,14 @@ title: 'Phase 6 (Optional): Reorganize services by domain directories'
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-10 18:46' created_date: '2026-02-10 18:46'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-1.5 - TASK-1.5
references: references:
- plan.md - plan.md
parent_task_id: TASK-1 parent_task_id: TASK-1
ordinal: 3000 ordinal: 4000
--- ---
## Description ## Description

View File

@@ -1,45 +0,0 @@
---
id: TASK-13
title: Fix macOS native window bounds for overlay binding
status: Done
assignee:
- codex
created_date: '2026-02-11 15:45'
updated_date: '2026-02-11 16:36'
labels:
- bug
- macos
- overlay
dependencies: []
references:
- src/window-trackers/macos-tracker.ts
- scripts/get-mpv-window-macos.swift
priority: high
---
## Description
<!-- SECTION:DESCRIPTION:BEGIN -->
Overlay windows on macOS are not properly aligned to the mpv window after switching from AppleScript window discovery to native Swift/CoreGraphics bounds retrieval.
Implement a robust native bounds strategy that prefers Accessibility window geometry (matching app-window coordinates used previously) and falls back to filtered CoreGraphics windows when Accessibility data is unavailable.
<!-- SECTION:DESCRIPTION:END -->
## Acceptance Criteria
<!-- AC:BEGIN -->
- [x] #1 Overlay bounds track the active mpv window with correct position and size on macOS.
- [x] #2 Helper avoids selecting off-screen/non-primary mpv-related windows.
- [x] #3 Build succeeds with the updated macOS helper.
<!-- AC:END -->
## Implementation Notes
<!-- SECTION:NOTES:BEGIN -->
Follow-up in progress after packaged app runtime showed fullscreen fallback behavior:
- Added packaged-app helper path resolution in tracker (`process.resourcesPath/scripts/get-mpv-window-macos`).
- Added `.asar` helper materialization to temp path so child process execution is possible if candidate path resolves inside asar.
- Added throttled tracker logging for helper execution failures to expose runtime errors without log spam.
- Updated Electron builder `extraResources` to ship `dist/scripts/get-mpv-window-macos` outside asar at `resources/scripts/get-mpv-window-macos`.
- Added macOS-only invisible subtitle vertical nudge (`+5px`) in renderer layout to align interactive subtitles with mpv glyph baseline after bounds fix.
- Increased macOS-only invisible subtitle line-height for multi-line text to improve separation as line count grows.
<!-- SECTION:NOTES:END -->

View File

@@ -4,13 +4,14 @@ title: Fix second-instance --start when texthooker-only instance is running
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-11 23:47' created_date: '2026-02-11 23:47'
updated_date: '2026-02-11 23:47' updated_date: '2026-02-18 04:11'
labels: labels:
- bugfix - bugfix
- cli - cli
- overlay - overlay
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 51000
--- ---
## Description ## Description

View File

@@ -4,13 +4,14 @@ title: Ensure subminer launcher shows visible overlay on startup
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-12 00:22' created_date: '2026-02-12 00:22'
updated_date: '2026-02-12 00:23' updated_date: '2026-02-18 04:11'
labels: labels:
- bugfix - bugfix
- launcher - launcher
- overlay - overlay
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 50000
--- ---
## Description ## Description

View File

@@ -4,13 +4,14 @@ title: Fix renderer module loading regression after task 6 split
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-12 00:45' created_date: '2026-02-12 00:45'
updated_date: '2026-02-12 00:46' updated_date: '2026-02-18 04:11'
labels: labels:
- regression - regression
- overlay - overlay
- renderer - renderer
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 49000
--- ---
## Description ## Description

View File

@@ -4,13 +4,14 @@ title: Revert overlay startup experiment changes and keep renderer fix
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-12 01:45' created_date: '2026-02-12 01:45'
updated_date: '2026-02-12 01:46' updated_date: '2026-02-18 04:11'
labels: labels:
- regression - regression
- overlay - overlay
- launcher - launcher
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 48000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-12 02:27' created_date: '2026-02-12 02:27'
updated_date: '2026-02-12 09:42' updated_date: '2026-02-18 04:11'
labels: labels:
- overlay - overlay
- ux - ux
@@ -14,6 +14,7 @@ dependencies: []
documentation: documentation:
- overlay_window.md - overlay_window.md
priority: high priority: high
ordinal: 47000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-11 16:48' created_date: '2026-02-11 16:48'
updated_date: '2026-02-11 16:48' updated_date: '2026-02-18 04:11'
labels: labels:
- build - build
- macos - macos
@@ -14,6 +14,7 @@ dependencies: []
references: references:
- scripts/build-external.sh - scripts/build-external.sh
priority: medium priority: medium
ordinal: 54000
--- ---
## Description ## Description

View File

@@ -5,14 +5,14 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:56' created_date: '2026-02-10 18:56'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-1 - TASK-1
references: references:
- investigation.md - investigation.md
- docs/refactor-main-checklist.md - docs/refactor-main-checklist.md
ordinal: 13000 ordinal: 14000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:56' created_date: '2026-02-10 18:56'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-1 - TASK-1
@@ -20,7 +20,7 @@ references:
- src/ipc/ - src/ipc/
- src/core/services/index.ts - src/core/services/index.ts
parent_task_id: TASK-2 parent_task_id: TASK-2
ordinal: 10000 ordinal: 11000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:56' created_date: '2026-02-10 18:56'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-2.1 - TASK-2.1
@@ -13,7 +13,7 @@ references:
- investigation.md - investigation.md
- src/core/services/overlay-shortcut-handler.ts - src/core/services/overlay-shortcut-handler.ts
parent_task_id: TASK-2 parent_task_id: TASK-2
ordinal: 8000 ordinal: 9000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:56' created_date: '2026-02-10 18:56'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-2.1 - TASK-2.1
@@ -13,7 +13,7 @@ references:
- investigation.md - investigation.md
- src/core/services/mining-service.ts - src/core/services/mining-service.ts
parent_task_id: TASK-2 parent_task_id: TASK-2
ordinal: 7000 ordinal: 8000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-10 18:56' created_date: '2026-02-10 18:56'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-2.1 - TASK-2.1
@@ -13,7 +13,7 @@ references:
- investigation.md - investigation.md
- src/core/services/anki-jimaku-service.ts - src/core/services/anki-jimaku-service.ts
parent_task_id: TASK-2 parent_task_id: TASK-2
ordinal: 6000 ordinal: 7000
--- ---
## Description ## Description

View File

@@ -4,7 +4,7 @@ title: Perform desktop smoke validation with mpv
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-10 18:56' created_date: '2026-02-10 18:56'
updated_date: '2026-02-11 03:35' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: dependencies:
- TASK-2.2 - TASK-2.2
@@ -14,7 +14,7 @@ references:
- investigation.md - investigation.md
- docs/refactor-main-checklist.md - docs/refactor-main-checklist.md
parent_task_id: TASK-2 parent_task_id: TASK-2
ordinal: 12000 ordinal: 13000
--- ---
## Description ## Description

View File

@@ -4,11 +4,12 @@ title: Add renderer-to-main IPC contract for measured overlay content bounds
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-12 08:47' created_date: '2026-02-12 08:47'
updated_date: '2026-02-13 08:05' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
parent_task_id: TASK-20 parent_task_id: TASK-20
priority: medium priority: medium
ordinal: 45000
--- ---
## Description ## Description

View File

@@ -4,10 +4,11 @@ title: Persist and restore MPV secondary subtitle visibility across app lifecycl
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 07:59' created_date: '2026-02-13 07:59'
updated_date: '2026-02-13 08:01' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 46000
--- ---
## Description ## Description

View File

@@ -6,10 +6,11 @@ title: >-
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 16:42' created_date: '2026-02-13 16:42'
updated_date: '2026-02-16 02:00' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 34000
--- ---
## Description ## Description

View File

@@ -4,11 +4,12 @@ title: Implement JLPT token lookup service for subtitle words
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 16:42' created_date: '2026-02-13 16:42'
updated_date: '2026-02-16 02:01' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
parent_task_id: TASK-23 parent_task_id: TASK-23
priority: high priority: high
ordinal: 32000
--- ---
## Description ## Description

View File

@@ -4,11 +4,12 @@ title: Bundle JLPT Yomitan dictionary assets for offline local lookup
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 16:42' created_date: '2026-02-13 16:42'
updated_date: '2026-02-16 02:01' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
parent_task_id: TASK-23 parent_task_id: TASK-23
priority: high priority: high
ordinal: 33000
--- ---
## Description ## Description

View File

@@ -4,10 +4,12 @@ title: Render JLPT token underlines with level-based colors in subtitle lines
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 16:42' created_date: '2026-02-13 16:42'
updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
parent_task_id: TASK-23 parent_task_id: TASK-23
priority: high priority: high
ordinal: 44000
--- ---
## Description ## Description

View File

@@ -4,11 +4,12 @@ title: Add opt-in control and end-to-end flow + tests for JLPT tagging
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 16:42' created_date: '2026-02-13 16:42'
updated_date: '2026-02-16 02:00' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
parent_task_id: TASK-23 parent_task_id: TASK-23
priority: high priority: high
ordinal: 35000
--- ---
## Description ## Description

View File

@@ -6,10 +6,11 @@ title: >-
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 16:45' created_date: '2026-02-13 16:45'
updated_date: '2026-02-15 08:17' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 37000
--- ---
## Description ## Description

View File

@@ -6,13 +6,14 @@ title: >-
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 16:47' created_date: '2026-02-13 16:47'
updated_date: '2026-02-16 06:48' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
documentation: documentation:
- /Users/sudacode/.codex/worktrees/2089/SubMiner/docs/configuration.md - /Users/sudacode/.codex/worktrees/2089/SubMiner/docs/configuration.md
- /Users/sudacode/.codex/worktrees/2089/SubMiner/docs/jlpt-vocab-bundle.md - /Users/sudacode/.codex/worktrees/2089/SubMiner/docs/jlpt-vocab-bundle.md
priority: high priority: high
ordinal: 28000
--- ---
## Description ## Description

View File

@@ -6,9 +6,11 @@ title: >-
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 16:49' created_date: '2026-02-13 16:49'
updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 43000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- backend - backend
created_date: '2026-02-13 17:13' created_date: '2026-02-13 17:13'
updated_date: '2026-02-14 08:43' updated_date: '2026-02-18 04:11'
labels: labels:
- refactor - refactor
- documentation - documentation
@@ -16,6 +16,7 @@ documentation:
- docs/structure-roadmap.md - docs/structure-roadmap.md
parent_task_id: TASK-27 parent_task_id: TASK-27
priority: high priority: high
ordinal: 42000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- backend - backend
created_date: '2026-02-13 17:13' created_date: '2026-02-13 17:13'
updated_date: '2026-02-15 01:25' updated_date: '2026-02-18 04:11'
labels: labels:
- 'owner:backend' - 'owner:backend'
- 'owner:architect' - 'owner:architect'
@@ -18,6 +18,7 @@ documentation:
- docs/architecture.md - docs/architecture.md
parent_task_id: TASK-27 parent_task_id: TASK-27
priority: high priority: high
ordinal: 40000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- backend - backend
created_date: '2026-02-13 17:13' created_date: '2026-02-13 17:13'
updated_date: '2026-02-15 04:23' updated_date: '2026-02-18 04:11'
labels: labels:
- 'owner:backend' - 'owner:backend'
dependencies: dependencies:
@@ -16,6 +16,7 @@ documentation:
- docs/architecture.md - docs/architecture.md
parent_task_id: TASK-27 parent_task_id: TASK-27
priority: high priority: high
ordinal: 39000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- backend - backend
created_date: '2026-02-13 17:13' created_date: '2026-02-13 17:13'
updated_date: '2026-02-15 00:31' updated_date: '2026-02-18 04:11'
labels: labels:
- 'owner:backend' - 'owner:backend'
dependencies: dependencies:
@@ -16,6 +16,7 @@ documentation:
- docs/architecture.md - docs/architecture.md
parent_task_id: TASK-27 parent_task_id: TASK-27
priority: high priority: high
ordinal: 41000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- frontend - frontend
created_date: '2026-02-13 17:13' created_date: '2026-02-13 17:13'
updated_date: '2026-02-15 23:59' updated_date: '2026-02-18 04:11'
labels: labels:
- refactor - refactor
- renderer - renderer
@@ -21,6 +21,7 @@ documentation:
- docs/architecture.md - docs/architecture.md
parent_task_id: TASK-27 parent_task_id: TASK-27
priority: low priority: low
ordinal: 36000
--- ---
## Description ## Description

View File

@@ -4,7 +4,7 @@ title: Add SQLite-backed immersion tracking for mining sessions
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 17:52' created_date: '2026-02-13 17:52'
updated_date: '2026-02-18 02:36' updated_date: '2026-02-18 04:11'
labels: labels:
- analytics - analytics
- backend - backend
@@ -12,6 +12,7 @@ labels:
- immersion - immersion
dependencies: [] dependencies: []
priority: medium priority: medium
ordinal: 15000
--- ---
## Description ## Description

View File

@@ -4,7 +4,7 @@ title: Add Anilist integration for post-watch updates
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 17:57' created_date: '2026-02-13 17:57'
updated_date: '2026-02-17 09:27' updated_date: '2026-02-18 04:11'
labels: labels:
- anilist - anilist
- anime - anime
@@ -13,6 +13,7 @@ labels:
- api - api
dependencies: [] dependencies: []
priority: medium priority: medium
ordinal: 16000
--- ---
## Description ## Description

View File

@@ -4,7 +4,7 @@ title: Implement secure AniList token lifecycle and account management
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-17 04:12' created_date: '2026-02-17 04:12'
updated_date: '2026-02-17 04:19' updated_date: '2026-02-18 04:11'
labels: labels:
- anilist - anilist
- security - security
@@ -12,6 +12,7 @@ labels:
dependencies: [] dependencies: []
parent_task_id: TASK-29 parent_task_id: TASK-29
priority: medium priority: medium
ordinal: 18000
--- ---
## Acceptance Criteria ## Acceptance Criteria

View File

@@ -4,7 +4,7 @@ title: Implement AniList retry/backoff queue for failed post-watch updates
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-17 04:13' created_date: '2026-02-17 04:13'
updated_date: '2026-02-17 04:19' updated_date: '2026-02-18 04:11'
labels: labels:
- anilist - anilist
- reliability - reliability
@@ -12,6 +12,7 @@ labels:
dependencies: [] dependencies: []
parent_task_id: TASK-29 parent_task_id: TASK-29
priority: medium priority: medium
ordinal: 19000
--- ---
## Acceptance Criteria ## Acceptance Criteria

View File

@@ -1,15 +1,16 @@
--- ---
id: TASK-31 id: TASK-31
title: Add optional Jellyfin integration with basic streaming/ playback features title: Add optional Jellyfin integration with basic streaming/ playback features
status: In Progress status: Done
assignee: [] assignee: []
created_date: '2026-02-13 18:38' created_date: '2026-02-13 18:38'
updated_date: '2026-02-18 02:54' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
references: references:
- TASK-64 - TASK-64
- docs/plans/2026-02-17-jellyfin-cast-remote-playback.md - docs/plans/2026-02-17-jellyfin-cast-remote-playback.md
ordinal: 57000
--- ---
## Description ## Description
@@ -21,8 +22,8 @@ Implement optional Jellyfin integration so SubMiner can act as a lightweight Jel
## Acceptance Criteria ## Acceptance Criteria
<!-- AC:BEGIN --> <!-- AC:BEGIN -->
- [x] #1 Add a configurable Jellyfin integration path that can be enabled/disabled without impacting core non-Jellyfin functionality. - [x] #1 Add a configurable Jellyfin integration path that can be enabled/disabled without impacting core non-Jellyfin functionality.
- [ ] #2 Support authenticating against a user-selected Jellyfin server (server URL + credentials/token) and securely storing/reusing connection settings. - [x] #2 Support authenticating against a user-selected Jellyfin server (server URL + credentials/token) and securely storing/reusing connection settings.
- [ ] #3 Allow discovery or manual selection of movies/tv shows/music libraries and playback items from the connected Jellyfin server. - [x] #3 Allow discovery or manual selection of movies/tv shows/music libraries and playback items from the connected Jellyfin server.
- [x] #4 Enable playback from Jellyfin items via existing player pipeline with a dedicated selection/launch flow. - [x] #4 Enable playback from Jellyfin items via existing player pipeline with a dedicated selection/launch flow.
- [x] #5 Honor Jellyfin playback options so direct play is attempted first when media/profiles are compatible. - [x] #5 Honor Jellyfin playback options so direct play is attempted first when media/profiles are compatible.
- [x] #6 Fall back to Jellyfin-managed transcoding when direct play is not possible, passing required transcode parameters to the player. - [x] #6 Fall back to Jellyfin-managed transcoding when direct play is not possible, passing required transcode parameters to the player.

View File

@@ -4,7 +4,7 @@ title: Restrict mpv socket connection logs to debug mode in Electron
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-13 19:39' created_date: '2026-02-13 19:39'
updated_date: '2026-02-16 03:05' updated_date: '2026-02-18 04:11'
labels: labels:
- electron - electron
- logging - logging
@@ -13,6 +13,7 @@ labels:
- quality - quality
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 31000
--- ---
## Description ## Description

View File

@@ -4,13 +4,14 @@ title: Add CI/CD pipeline for automated testing and quality gates
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-14 00:57' created_date: '2026-02-14 00:57'
updated_date: '2026-02-17 07:36' updated_date: '2026-02-18 04:11'
labels: labels:
- infrastructure - infrastructure
- ci - ci
- quality - quality
dependencies: [] dependencies: []
priority: high priority: high
ordinal: 17000
--- ---
## Description ## Description

View File

@@ -4,13 +4,14 @@ title: Add structured logging with configurable verbosity levels
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-14 00:59' created_date: '2026-02-14 00:59'
updated_date: '2026-02-17 04:16' updated_date: '2026-02-18 04:11'
labels: labels:
- infrastructure - infrastructure
- developer-experience - developer-experience
- observability - observability
dependencies: [] dependencies: []
priority: medium priority: medium
ordinal: 20000
--- ---
## Description ## Description

View File

@@ -4,10 +4,11 @@ title: Improve Mermaid diagrams in docs for readability
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-11 07:11' created_date: '2026-02-11 07:11'
updated_date: '2026-02-11 07:11' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
priority: medium priority: medium
ordinal: 55000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-11 08:20' created_date: '2026-02-11 08:20'
updated_date: '2026-02-11 17:46' updated_date: '2026-02-18 04:11'
labels: labels:
- refactor - refactor
- types - types
@@ -17,6 +17,7 @@ references:
- src/types.ts - src/types.ts
- src/main.ts - src/main.ts
priority: high priority: high
ordinal: 53000
--- ---
## Description ## Description

View File

@@ -4,7 +4,7 @@ title: Consolidate fragmented JLPT utility modules
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-16 04:47' created_date: '2026-02-16 04:47'
updated_date: '2026-02-16 04:57' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
references: references:
@@ -15,6 +15,7 @@ references:
- >- - >-
/home/sudacode/projects/japanese/SubMiner/src/core/services/jlpt-ignored-mecab-pos1.ts /home/sudacode/projects/japanese/SubMiner/src/core/services/jlpt-ignored-mecab-pos1.ts
priority: medium priority: medium
ordinal: 30000
--- ---
## Description ## Description

View File

@@ -4,12 +4,13 @@ title: Audit and consolidate micro-services under 50 lines
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-16 04:47' created_date: '2026-02-16 04:47'
updated_date: '2026-02-16 05:04' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
references: references:
- /home/sudacode/projects/japanese/SubMiner/src/core/services/ - /home/sudacode/projects/japanese/SubMiner/src/core/services/
priority: medium priority: medium
ordinal: 29000
--- ---
## Description ## Description

View File

@@ -6,9 +6,10 @@ title: >-
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-16 22:04' created_date: '2026-02-16 22:04'
updated_date: '2026-02-16 22:06' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
ordinal: 27000
--- ---
## Description ## Description

View File

@@ -4,9 +4,10 @@ title: Restrict Yomitan frequency lookup to selected headword only
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-16 22:16' created_date: '2026-02-16 22:16'
updated_date: '2026-02-16 22:18' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
ordinal: 26000
--- ---
## Description ## Description

View File

@@ -5,7 +5,7 @@ status: Done
assignee: assignee:
- codex - codex
created_date: '2026-02-11 08:20' created_date: '2026-02-11 08:20'
updated_date: '2026-02-11 20:45' updated_date: '2026-02-18 04:11'
labels: labels:
- refactor - refactor
- renderer - renderer
@@ -16,6 +16,7 @@ dependencies:
references: references:
- src/renderer/renderer.ts - src/renderer/renderer.ts
priority: high priority: high
ordinal: 52000
--- ---
## Description ## Description

View File

@@ -4,9 +4,10 @@ title: Remove hard-coded particle term exclusions from frequency lookup
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-16 22:20' created_date: '2026-02-16 22:20'
updated_date: '2026-02-16 22:21' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
ordinal: 25000
--- ---
## Description ## Description

View File

@@ -4,9 +4,10 @@ title: Ensure parser utility scripts exit immediately after output
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-16 22:35' created_date: '2026-02-16 22:35'
updated_date: '2026-02-16 22:37' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
ordinal: 24000
--- ---
## Description ## Description

View File

@@ -4,10 +4,11 @@ title: Color full Japanese term when Yomitan splits lookup into multiple tokens
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-16 23:03' created_date: '2026-02-16 23:03'
updated_date: '2026-02-16 23:11' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
priority: medium priority: medium
ordinal: 23000
--- ---
## Description ## Description

View File

@@ -4,10 +4,11 @@ title: Add runtime toggle to log selected Yomitan token groups
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-16 23:38' created_date: '2026-02-16 23:38'
updated_date: '2026-02-16 23:41' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
priority: low priority: low
ordinal: 22000
--- ---
## Description ## Description

View File

@@ -4,11 +4,12 @@ title: Drive Yomitan group debug logging from overlay debug mode (Y-D)
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-16 23:48' created_date: '2026-02-16 23:48'
updated_date: '2026-02-16 23:50' updated_date: '2026-02-18 04:11'
labels: [] labels: []
dependencies: [] dependencies: []
parent_task_id: TASK-63 parent_task_id: TASK-63
priority: low priority: low
ordinal: 21000
--- ---
## Description ## Description

View File

@@ -1,11 +1,11 @@
--- ---
id: TASK-64 id: TASK-64
title: Implement Jellyfin cast-to-device remote playback mode title: Implement Jellyfin cast-to-device remote playback mode
status: In Progress status: Done
assignee: assignee:
- '@sudacode' - '@sudacode'
created_date: '2026-02-17 21:25' created_date: '2026-02-17 21:25'
updated_date: '2026-02-18 02:56' updated_date: '2026-02-18 04:11'
labels: labels:
- jellyfin - jellyfin
- mpv - mpv
@@ -14,6 +14,7 @@ dependencies: []
references: references:
- TASK-31 - TASK-31
priority: high priority: high
ordinal: 56000
--- ---
## Description ## Description
@@ -25,7 +26,7 @@ Deliver a jellyfin-mpv-shim-like experience in SubMiner so Jellyfin users can ca
## Acceptance Criteria ## Acceptance Criteria
<!-- AC:BEGIN --> <!-- AC:BEGIN -->
- [x] #1 SubMiner can register itself as a playable remote device in Jellyfin and appears in cast-to-device targets while connected. - [x] #1 SubMiner can register itself as a playable remote device in Jellyfin and appears in cast-to-device targets while connected.
- [ ] #2 When a user casts an item from Jellyfin, SubMiner opens playback in mpv using existing Jellyfin/SubMiner defaults for subtitle behavior. - [x] #2 When a user casts an item from Jellyfin, SubMiner opens playback in mpv using existing Jellyfin/SubMiner defaults for subtitle behavior.
- [x] #3 Remote playback control events from Jellyfin (play/pause/seek/stop and stream selection where available) are handled by SubMiner without breaking existing CLI-driven playback flows. - [x] #3 Remote playback control events from Jellyfin (play/pause/seek/stop and stream selection where available) are handled by SubMiner without breaking existing CLI-driven playback flows.
- [x] #4 SubMiner reports playback state/progress back to Jellyfin so server/client state remains synchronized for now playing and resume behavior. - [x] #4 SubMiner reports playback state/progress back to Jellyfin so server/client state remains synchronized for now playing and resume behavior.
- [x] #5 Automated tests cover new remote-session/event-handling behavior and existing Jellyfin playback flows remain green. - [x] #5 Automated tests cover new remote-session/event-handling behavior and existing Jellyfin playback flows remain green.

View File

@@ -4,7 +4,7 @@ title: Extract main.ts global state into an AppState container
status: Done status: Done
assignee: [] assignee: []
created_date: '2026-02-11 08:20' created_date: '2026-02-11 08:20'
updated_date: '2026-02-15 04:30' updated_date: '2026-02-18 04:11'
labels: labels:
- refactor - refactor
- main - main
@@ -14,6 +14,7 @@ dependencies: []
references: references:
- src/main.ts - src/main.ts
priority: high priority: high
ordinal: 38000
--- ---
## Description ## Description