## Split llmModerationClient.ts (2103 → 3 files) - **moderationBuilders.ts** (67 lines) — shared: escapeXml, getAnalysisContent, buildReferenceXml - **mediaAnalysisClient.ts** (656 lines) — vision analysis with multi-layer LRU/DB/phash caching, image/video download, ffmpeg frame extraction, prepareMediaMessage - **moderationOrchestrator.ts** (998 lines) — callModerationLLM, runTextOnlyBatch, runMediaBatch, runModerationAnalysis, runSimpleTextFallback - **llmModerationClient.ts** (30 lines) — re-export bridge (backward compat) No import changes needed — aiAnalysisWorker.ts still imports from llmModerationClient.js. ## Unit tests (backend) - vitest.config.ts + e2e.test.ts with 9 tests against production: - health, metrics, dashboard/stats, recordings, config, auth, guilds, negative (404/400) ## Monitoring metrics - moderationMetrics.ts in backend health module: - LLM call count/duration/tokens - Cache hit/miss per layer - Media analysis count/download duration - Batch size distribution, errors, SearXNG, auto-delete
11 lines
199 B
TypeScript
11 lines
199 B
TypeScript
import { defineConfig } from "vitest/config";
|
|
|
|
export default defineConfig({
|
|
test: {
|
|
globals: true,
|
|
environment: "node",
|
|
include: ["src/**/*.test.ts"],
|
|
testTimeout: 15000,
|
|
},
|
|
});
|