1.9 KiB
id, title, status, assignee, created_date, updated_date, labels, milestone, dependencies, references, priority
| id | title | status | assignee | created_date | updated_date | labels | milestone | dependencies | references | priority | |||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TASK-9 | Remove trivial wrapper functions from main.ts | To Do | 2026-02-11 08:21 | 2026-02-14 00:48 |
|
Codebase Clarity & Composability |
|
|
low |
Description
main.ts contains many trivial single-line wrapper functions that add indirection without value:
function getOverlayWindows(): BrowserWindow[] {
return overlayManager.getOverlayWindows();
}
function updateOverlayBounds(geometry: WindowGeometry): void {
updateOverlayBoundsService(geometry, () => getOverlayWindows());
}
function ensureOverlayWindowLevel(window: BrowserWindow): void {
ensureOverlayWindowLevelService(window);
}
Similarly, config accessor wrappers like getJimakuLanguagePreference(), getJimakuMaxEntryResults(), resolveJimakuApiKey() are pure boilerplate.
After TASK-7 (AppState container), many of these can be eliminated by having services access the state container directly, or by using the service functions directly at call sites without local wrappers.
Acceptance Criteria
- #1 Trivial pass-through wrappers eliminated (call service/manager directly)
- #2 Config accessor wrappers replaced with direct calls or a config accessor helper
- #3 main.ts line count reduced
- #4 No functional changes
Implementation Notes
Priority changed from medium to low: this work is largely subsumed by TASK-27.2 (split main.ts). When main.ts is decomposed into composition-root modules, trivial wrappers will naturally be eliminated or inlined. Recommend folding remaining wrapper cleanup into TASK-27.2 rather than tracking separately. Keep this ticket as a checklist reference but don't execute independently.