mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-02-27 18:22:41 -08:00
chore(cleanup): prune dead code after refactors
This commit is contained in:
54
docs/reports/2026-02-22-task-100-dead-code-report.md
Normal file
54
docs/reports/2026-02-22-task-100-dead-code-report.md
Normal file
@@ -0,0 +1,54 @@
|
||||
# TASK-100 Dead Code Report (2026-02-22)
|
||||
|
||||
## Baseline Verification
|
||||
|
||||
- `bun run build` -> PASS
|
||||
- `bun run test:fast` -> PASS
|
||||
|
||||
## Discovery Commands
|
||||
|
||||
- `tsc --noEmit --noUnusedLocals --noUnusedParameters`
|
||||
- `bunx ts-prune -p tsconfig.json`
|
||||
|
||||
## Triage
|
||||
|
||||
### Remove
|
||||
|
||||
- `src/anki-connect.ts` - removed unused `url` instance field.
|
||||
- `src/anki-integration.ts` - removed unused wrappers: `poll`, `showProgressTick`, `refreshMiscInfoField`.
|
||||
- `src/anki-integration/card-creation.ts` - removed unused `MediaGenerator` import.
|
||||
- `src/anki-integration/ui-feedback.ts` - removed unused callback parameter in `withUpdateProgress`.
|
||||
- `src/core/services/anki-jimaku-ipc.ts` - removed unused `JimakuDownloadQuery` import.
|
||||
- `src/core/services/immersion-tracker-service.ts` - removed unused fields `lastMaintenanceMs`, `lastQueueWriteAtMs`; removed unused `runRollupMaintenance` wrapper.
|
||||
- `src/core/services/ipc-command.ts` - removed unused `RuntimeOptionValue` import.
|
||||
- `src/renderer/positioning/position-state.ts` - removed unused `ctx` parameter from `getPersistedOffset`.
|
||||
- `src/tokenizers/index.ts` - removed unused exported helpers `getRegisteredTokenizerProviderIds`, `createTokenizerProvider`.
|
||||
- `src/token-mergers/index.ts` - removed unused exported helpers `getRegisteredTokenMergerProviderIds`, `createTokenMergerProvider`.
|
||||
- `src/core/utils/index.ts` - removed unused barrel re-exports `asBoolean`, `asFiniteNumber`, `asString`.
|
||||
|
||||
### Keep (intentional / out-of-scope)
|
||||
|
||||
- `src/main/runtime/composers/composer-contracts.type-test.ts` private `_` type aliases remain; they are compile-time contract assertions.
|
||||
- `src/main.ts` large unused-import cluster from ongoing composer/runtime decomposition kept for separate focused task to avoid behavior risk.
|
||||
- Broad `ts-prune` type-export findings in `src/types.ts` and multiple domain modules kept; many are declaration-surface exports and module-local false positives.
|
||||
|
||||
## Complexity Delta
|
||||
|
||||
- Removed 13 confirmed dead declarations/imports/helpers.
|
||||
- Removed 4 unused exported entrypoints from provider registries/util barrel.
|
||||
- `tsc --noEmit --noUnusedLocals --noUnusedParameters` diagnostics reduced to `39` lines; remaining diagnostics are concentrated in `src/main.ts` plus intentional type-test aliases.
|
||||
|
||||
## Regression Safety / Tests
|
||||
|
||||
- `bun test src/anki-integration.test.ts src/core/services/mining.test.ts src/core/services/anki-jimaku-ipc.test.ts src/core/services/immersion-tracker-service.test.ts src/core/services/ipc.test.ts`
|
||||
- partial pass; direct IPC test invocation hit Electron ESM test harness issue (`Export named 'ipcMain' not found`) unrelated to cleanup.
|
||||
- Required task gates:
|
||||
- `bun run build` -> PASS
|
||||
- `bun run test:core:src` -> PASS
|
||||
- `bun run test:config:src` -> PASS
|
||||
- `bun run check:file-budgets` -> PASS (warning mode, no strict hotspot violations)
|
||||
|
||||
## Remaining Candidates
|
||||
|
||||
- Continue with dedicated `src/main.ts` dead-import cleanup once runtime composer migration settles.
|
||||
- Revisit `ts-prune` findings with a declaration-aware filter to separate true dead exports from public API type surfaces.
|
||||
Reference in New Issue
Block a user