refactor: split anki-connect and stats-server resolvers into modules

- Break src/config/resolve/anki-connect.ts into focused resolvers under anki-connect/ (initialize, known-words, legacy, modern, shared)
- Break src/core/services/stats-server.ts into route groups under stats-server/ (analytics, integration, library, mining, static, shared support)
- Add route-group and resolver isolation tests
- Update docs/architecture/domains.md to reflect new module layout
This commit is contained in:
2026-07-15 22:58:55 -07:00
parent 2398f5c030
commit 83fffe533a
19 changed files with 2568 additions and 2384 deletions
+9 -2
View File
@@ -23,7 +23,14 @@ test('stats data uses the shared HTTP contract while native dialogs retain IPC',
assert.doesNotMatch(ipcHandlers, /statsGet[A-Z]/);
const apiClient = read('stats/src/lib/api-client.ts');
const statsServer = read('src/core/services/stats-server.ts');
const statsServerRoutes = [
'analytics-routes.ts',
'integration-routes.ts',
'library-routes.ts',
'mining-routes.ts',
]
.map((filename) => read(`src/core/services/stats-server/${filename}`))
.join('\n');
assert.match(apiClient, /StatsHttpClient/);
assert.match(statsServer, /statsJson/);
assert.match(statsServerRoutes, /statsJson/);
});