chore: update backlog task records

This commit is contained in:
2026-03-27 00:33:48 -07:00
parent ac857e932e
commit a92631bf52
3 changed files with 43 additions and 15 deletions

View File

@@ -1,11 +1,11 @@
project_name: 'SubMiner' project_name: "SubMiner"
default_status: 'To Do' default_status: "To Do"
statuses: ['To Do', 'In Progress', 'Done'] statuses: ["To Do", "In Progress", "Done"]
labels: [] labels: []
definition_of_done: [] definition_of_done: []
date_format: yyyy-mm-dd date_format: yyyy-mm-dd
max_column_width: 20 max_column_width: 20
default_editor: 'nvim' default_editor: "nvim"
auto_open_browser: false auto_open_browser: false
default_port: 6420 default_port: 6420
remote_operations: true remote_operations: true
@@ -13,4 +13,4 @@ auto_commit: false
bypass_git_hooks: false bypass_git_hooks: false
check_active_branches: true check_active_branches: true
active_branch_days: 30 active_branch_days: 30
task_prefix: 'task' task_prefix: "task"

View File

@@ -1,9 +1,10 @@
--- ---
id: TASK-238.3 id: TASK-238.3
title: Introduce domain type entrypoints and shrink src/types.ts import surface title: Introduce domain type entrypoints and shrink src/types.ts import surface
status: To Do status: Done
assignee: [] assignee: []
created_date: '2026-03-26 20:49' created_date: '2026-03-26 20:49'
updated_date: '2026-03-27 00:14'
labels: labels:
- tech-debt - tech-debt
- types - types
@@ -28,10 +29,10 @@ priority: medium
## Acceptance Criteria ## Acceptance Criteria
<!-- AC:BEGIN --> <!-- AC:BEGIN -->
- [ ] #1 Domain-focused type modules exist for the main clusters currently mixed together in `src/types.ts` (for example Anki, config/runtime, subtitle/media, and integration/runtime-option types). - [x] #1 Domain-focused type modules exist for the main clusters currently mixed together in `src/types.ts` (for example Anki, config/runtime, subtitle/media, and integration/runtime-option types).
- [ ] #2 `src/types.ts` becomes a thinner compatibility layer or barrel instead of the sole source of truth for every shared type. - [x] #2 `src/types.ts` becomes a thinner compatibility layer or barrel instead of the sole source of truth for every shared type.
- [ ] #3 A meaningful set of imports is migrated to the new entrypoints without breaking the maintained typecheck/test lanes. - [x] #3 A meaningful set of imports is migrated to the new entrypoints without breaking the maintained typecheck/test lanes.
- [ ] #4 The new structure is documented well enough that contributors can tell where new shared types should live. - [x] #4 The new structure is documented well enough that contributors can tell where new shared types should live.
<!-- AC:END --> <!-- AC:END -->
## Implementation Plan ## Implementation Plan
@@ -42,3 +43,17 @@ priority: medium
3. Migrate the highest-value import sites first, especially config/runtime and Anki-heavy surfaces. 3. Migrate the highest-value import sites first, especially config/runtime and Anki-heavy surfaces.
4. Verify with `bun run typecheck` and the cheapest test lane covering touched domains. 4. Verify with `bun run typecheck` and the cheapest test lane covering touched domains.
<!-- SECTION:PLAN:END --> <!-- SECTION:PLAN:END -->
## Implementation Notes
<!-- SECTION:NOTES:BEGIN -->
Implemented domain entrypoints under `src/types/` and kept `src/types.ts` as a compatibility barrel (`src/types/anki.ts`, `src/types/config.ts`, `src/types/integrations.ts`, `src/types/runtime.ts`, `src/types/runtime-options.ts`, `src/types/subtitle.ts`). Migrated the highest-value import surfaces away from `src/types.ts` in config/runtime/Anki-related modules and shared IPC surfaces. Added type-level regression coverage in `src/types-domain-entrypoints.type-test.ts`.
Aligned docs in `docs/architecture/README.md`, `docs/architecture/domains.md`, and `docs-site/changelog.md` to support the change and clear docs-site sync mismatch.
<!-- SECTION:NOTES:END -->
## Final Summary
<!-- SECTION:FINAL_SUMMARY:BEGIN -->
Task completed with commit `5dd8bb7f` (`refactor: split shared type entrypoints`). The refactor introduced domain type entrypoints, shrank the `src/types.ts` import surface, updated import consumers, and recorded verification evidence in the local verifier artifacts. Backlog now tracks TASK-238.3 as done.
<!-- SECTION:FINAL_SUMMARY:END -->

View File

@@ -1,7 +1,8 @@
--- ---
id: TASK-238.4 id: TASK-238.4
title: Decompose character dictionary runtime into fetch, build, and cache modules title: Decompose character dictionary runtime into fetch, build, and cache modules
status: To Do status: Done
updated_date: '2026-03-27 00:20'
assignee: [] assignee: []
created_date: '2026-03-26 20:49' created_date: '2026-03-26 20:49'
labels: labels:
@@ -29,10 +30,10 @@ priority: medium
## Acceptance Criteria ## Acceptance Criteria
<!-- AC:BEGIN --> <!-- AC:BEGIN -->
- [ ] #1 AniList fetch/parsing logic, dictionary-entry building, and snapshot/cache/zip persistence no longer live in one giant file. - [x] #1 AniList fetch/parsing logic, dictionary-entry building, and snapshot/cache/zip persistence no longer live in one giant file.
- [ ] #2 The public runtime API stays behavior-compatible for current callers. - [x] #2 The public runtime API stays behavior-compatible for current callers.
- [ ] #3 The top-level runtime/orchestration file becomes materially smaller and easier to review. - [x] #3 The top-level runtime/orchestration file becomes materially smaller and easier to review.
- [ ] #4 Existing character-dictionary tests still pass, and new focused tests cover the extracted modules where needed. - [x] #4 Existing character-dictionary tests still pass, and new focused tests cover the extracted modules where needed.
<!-- AC:END --> <!-- AC:END -->
## Implementation Plan ## Implementation Plan
@@ -43,3 +44,15 @@ priority: medium
3. Leave the exported runtime API stable for current main-process callers. 3. Leave the exported runtime API stable for current main-process callers.
4. Verify with the maintained character-dictionary/runtime test lane plus `bun run typecheck`. 4. Verify with the maintained character-dictionary/runtime test lane plus `bun run typecheck`.
<!-- SECTION:PLAN:END --> <!-- SECTION:PLAN:END -->
## Implementation Notes
<!-- SECTION:NOTES:BEGIN -->
Split `src/main/character-dictionary-runtime.ts` into focused modules under `src/main/character-dictionary-runtime/` (`fetch`, `build`, `cache`, plus helper modules). The orchestrator stayed as a compatibility shim/API surface with delegated module functions. Added focused tests for cache snapshot semantics and term rebuild + collapsible-open-state behavior in the new modules. Updated runtime architecture docs in `docs/architecture/domains.md` and `docs-site/architecture.md`.
<!-- SECTION:NOTES:END -->
## Final Summary
<!-- SECTION:FINAL_SUMMARY:BEGIN -->
Task completed with commit `5b06579e` (`refactor: split character dictionary runtime modules`). Runtime refactor landed with regression coverage and verification including runtime-compat lanes, and all changed behavior was validated as API-compatible for callers.
<!-- SECTION:FINAL_SUMMARY:END -->