diff --git a/frontend/src/game/tts-worker.ts b/frontend/src/game/tts-worker.ts index 18d1f20..9770c5c 100644 --- a/frontend/src/game/tts-worker.ts +++ b/frontend/src/game/tts-worker.ts @@ -1,7 +1,9 @@ // Web Worker for Kokoro TTS — runs ONNX neural network inference off the main thread. // This prevents the 1-5 second freezes that occur when generate() runs on the UI thread. -let tts: any = null +import type { KokoroTTS } from 'kokoro-js' + +let tts: KokoroTTS | null = null self.addEventListener('message', async (e: MessageEvent) => { const msg = e.data @@ -13,8 +15,8 @@ self.addEventListener('message', async (e: MessageEvent) => { tts = await KokoroTTS.from_pretrained('onnx-community/Kokoro-82M-ONNX', { dtype: 'q8', device: null, - progress_callback: (p: any) => { - if (p.progress !== undefined) { + progress_callback: (p) => { + if ('progress' in p && typeof p.progress === 'number') { self.postMessage({ type: 'progress', progress: p.progress }) } }, diff --git a/server/src/app.ts b/server/src/app.ts index a0b0679..5cef627 100644 --- a/server/src/app.ts +++ b/server/src/app.ts @@ -1,4 +1,4 @@ -import { Hono } from 'hono' +import { Hono, type Context } from 'hono' import { cors } from 'hono/cors' import { logger } from 'hono/logger' import { secureHeaders } from 'hono/secure-headers' @@ -79,7 +79,7 @@ if (process.env.NODE_ENV === 'production' && existsSync(publicDir)) { webmanifest: 'application/manifest+json', } - function serveFile(c: any, reqPath: string, cacheControl: string) { + function serveFile(c: Context, reqPath: string, cacheControl: string) { const resolved = join(publicDir, reqPath) // Prevent path traversal if (!resolved.startsWith(publicDir)) return c.notFound() diff --git a/server/src/engine/fight-loop.ts b/server/src/engine/fight-loop.ts index 1dafa16..1726d1b 100644 --- a/server/src/engine/fight-loop.ts +++ b/server/src/engine/fight-loop.ts @@ -78,8 +78,8 @@ export async function startFightLoop(options: FightLoopOptions = {}): Promise b.eloRating - a.eloRating) diff --git a/server/src/routes/bets.ts b/server/src/routes/bets.ts index 3bb8f81..2169924 100644 --- a/server/src/routes/bets.ts +++ b/server/src/routes/bets.ts @@ -103,8 +103,8 @@ betsRouter.post('/place', rateLimit(60_000, 10), async (c) => { odds: bet.oddsAtPlacement, potentialPayout: bet.potentialPayout, }) - } catch (err: any) { - return c.json({ error: err.message }, 400) + } catch (err: unknown) { + return c.json({ error: err instanceof Error ? err.message : String(err) }, 400) } })