Files
SubMiner/backlog/tasks/task-144 - Sequence-startup-OSD-notifications-for-tokenization-annotations-and-character-dictionary-sync.md
sudacode e0f82d28f0 Improve startup dictionary sync UX and default playback keybindings
- Add default `f` fullscreen overlay binding and switch default AniSkip skip key to `Tab`
- Make character-dictionary auto-sync non-blocking at startup with tokenization gating for Yomitan mutations
- Add ordered startup OSD progress (checking/generating/updating/importing), refresh current subtitle on sync completion, and extend regression tests
2026-03-09 00:50:32 -07:00

1.9 KiB

id, title, status, assignee, created_date, updated_date, labels, dependencies, references, priority
id title status assignee created_date updated_date labels dependencies references priority
TASK-144 Sequence startup OSD notifications for tokenization, annotations, and character dictionary sync Done
2026-03-09 10:40 2026-03-09 10:40
startup
overlay
ux
/home/sudacode/projects/japanese/SubMiner/src/main.ts
/home/sudacode/projects/japanese/SubMiner/src/main/runtime/startup-osd-sequencer.ts
/home/sudacode/projects/japanese/SubMiner/src/main/runtime/subtitle-tokenization-main-deps.ts
/home/sudacode/projects/japanese/SubMiner/src/main/runtime/character-dictionary-auto-sync-notifications.ts
medium

Description

Keep startup OSD progress ordered. While tokenization is still pending, only show the tokenization loading message. After tokenization becomes ready, show annotation loading if annotation warmup still remains. Only surface character dictionary auto-sync progress after annotation loading clears, and only if the dictionary work is still active.

Acceptance Criteria

  • #1 Character dictionary progress stays hidden while tokenization startup loading is still active.
  • #2 Annotation loading OSD appears after tokenization readiness and before any later character dictionary progress.
  • #3 Regression coverage verifies buffered dictionary progress/failure ordering during startup.

Implementation Notes

Added a small startup OSD sequencer in main runtime. Annotation warmup OSD now flows through that sequencer, and character dictionary sync notifications buffer until tokenization plus annotation loading clear. Buffered ready updates are dropped if dictionary progress finished before it ever became visible, while buffered failures still surface after annotation loading completes.