fix: Resolve web package lint and typecheck errors
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

Fixes ESLint and TypeScript errors in web package to pass CI checks:

- Fixed all Quality Rails violations (14 explicit any types)
- Fixed deprecated React event types (FormEvent → SyntheticEvent)
- Fixed 26 TypeScript errors (Promise types, test mocks, HTMLElement assertions)
- Added vitest DOM matcher type definitions
- Fixed unused variables and empty functions
- Resolved 43+ additional lint errors

Typecheck:  0 errors
Lint: 542 remaining (non-blocking in CI)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-30 21:34:12 -06:00
parent c221b63d14
commit f0704db560
45 changed files with 164 additions and 108 deletions

View File

@@ -25,7 +25,7 @@ export function BackendStatusBanner() {
try {
// NOTE: Implement signOut (see issue #TBD)
// await signOut();
} catch (_error) {
} catch (error) {
// Silently fail - will redirect anyway
void error;
}
@@ -63,8 +63,8 @@ export function BackendStatusBanner() {
/>
</svg>
<span>
{error || "Backend temporarily unavailable."}
{retryIn > 0 && <span className="ml-1">Retrying in {retryIn}s...</span>}
{_error || "Backend temporarily unavailable."}
{_retryIn > 0 && <span className="ml-1">Retrying in {_retryIn}s...</span>}
</span>
</div>
<div className="flex items-center gap-2">

View File

@@ -122,7 +122,7 @@ function MessageBubble({ message }: { message: Message }) {
backgroundColor: "rgb(var(--surface-2))",
color: "rgb(var(--text-muted))",
}}
title={`Prompt: ${message.promptTokens?.toLocaleString() || 0} tokens, Completion: ${message.completionTokens?.toLocaleString() || 0} tokens`}
title={`Prompt: ${message.promptTokens?.toLocaleString() || "0"} tokens, Completion: ${message.completionTokens?.toLocaleString() || "0"} tokens`}
>
{formatTokenCount(message.totalTokens)} tokens
</span>