Skip to content

fix: code quality and safety improvements #5838

fix: code quality and safety improvements

fix: code quality and safety improvements #5838

Triggered via pull request August 2, 2026 12:02
Status Failure
Total duration 1m 58s
Artifacts

ci.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

22 errors and 1 warning
Type check
Process completed with exit code 2.
Type check: src/hooks/useRealtimeSync.ts#L100
The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type.
Type check: src/hooks/useRealtimeSync.ts#L100
The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type.
Type check: src/components/ContributionHeatmap.tsx#L332
The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type.
Type check: src/components/ContributionHeatmap.tsx#L332
The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type.
Type check: src/components/ContributionHeatmap.tsx#L321
The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type.
Type check: src/components/ContributionHeatmap.tsx#L321
The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type.
Type check: src/app/api/metrics/repo-health/route.ts#L153
Expected 1 arguments, but got 2.
Type check: src/app/api/metrics/languages/route.ts#L59
Expected 1 arguments, but got 2.
Type check: src/app/api/local-coding/sync/route.ts#L281
Expected 1 arguments, but got 2.
Build
Process completed with exit code 1.
CI passed
Process completed with exit code 1.
test/anthropic-service.test.ts > generateWeeklySummary — src/lib/anthropic.ts > returns null when the text block contains only whitespace: src/lib/anthropic.ts#L66
TypeError: () => ({ messages: { create: messagesCreate } }) is not a constructor ❯ getClient src/lib/anthropic.ts:66:15 ❯ generateWeeklySummary src/lib/anthropic.ts:134:18 ❯ test/anthropic-service.test.ts:232:26
test/anthropic-service.test.ts > generateWeeklySummary — src/lib/anthropic.ts > returns null when the API response has no text block: src/lib/anthropic.ts#L66
TypeError: () => ({ messages: { create: messagesCreate } }) is not a constructor ❯ getClient src/lib/anthropic.ts:66:15 ❯ generateWeeklySummary src/lib/anthropic.ts:134:18 ❯ test/anthropic-service.test.ts:219:26
test/anthropic-service.test.ts > generateWeeklySummary — src/lib/anthropic.ts > uses 'none' for topRepo when the value is null: src/lib/anthropic.ts#L66
TypeError: () => ({ messages: { create: messagesCreate } }) is not a constructor ❯ getClient src/lib/anthropic.ts:66:15 ❯ generateWeeklySummary src/lib/anthropic.ts:134:18 ❯ test/anthropic-service.test.ts:202:11
test/anthropic-service.test.ts > generateWeeklySummary — src/lib/anthropic.ts > preserves special characters in topRepo (no HTML encoding): src/lib/anthropic.ts#L66
TypeError: () => ({ messages: { create: messagesCreate } }) is not a constructor ❯ getClient src/lib/anthropic.ts:66:15 ❯ generateWeeklySummary src/lib/anthropic.ts:134:18 ❯ test/anthropic-service.test.ts:188:11
test/anthropic-service.test.ts > generateWeeklySummary — src/lib/anthropic.ts > includes all key metrics in the JSON payload: src/lib/anthropic.ts#L66
TypeError: () => ({ messages: { create: messagesCreate } }) is not a constructor ❯ getClient src/lib/anthropic.ts:66:15 ❯ generateWeeklySummary src/lib/anthropic.ts:134:18 ❯ test/anthropic-service.test.ts:167:11
test/anthropic-service.test.ts > generateWeeklySummary — src/lib/anthropic.ts > encodes metrics as structured JSON — user message is valid JSON: src/lib/anthropic.ts#L66
TypeError: () => ({ messages: { create: messagesCreate } }) is not a constructor ❯ getClient src/lib/anthropic.ts:66:15 ❯ generateWeeklySummary src/lib/anthropic.ts:134:18 ❯ test/anthropic-service.test.ts:153:11
test/anthropic-service.test.ts > generateWeeklySummary — src/lib/anthropic.ts > sends max_tokens ≤ 200 (enough for 2–3 sentences, not an essay): src/lib/anthropic.ts#L66
TypeError: () => ({ messages: { create: messagesCreate } }) is not a constructor ❯ getClient src/lib/anthropic.ts:66:15 ❯ generateWeeklySummary src/lib/anthropic.ts:134:18 ❯ test/anthropic-service.test.ts:137:11
test/anthropic-service.test.ts > generateWeeklySummary — src/lib/anthropic.ts > calls the SDK with the correct model: src/lib/anthropic.ts#L66
TypeError: () => ({ messages: { create: messagesCreate } }) is not a constructor ❯ getClient src/lib/anthropic.ts:66:15 ❯ generateWeeklySummary src/lib/anthropic.ts:134:18 ❯ test/anthropic-service.test.ts:124:11
test/anthropic-service.test.ts > generateWeeklySummary — src/lib/anthropic.ts > returns the trimmed summary string on a successful API call: src/lib/anthropic.ts#L66
TypeError: () => ({ messages: { create: messagesCreate } }) is not a constructor ❯ getClient src/lib/anthropic.ts:66:15 ❯ generateWeeklySummary src/lib/anthropic.ts:134:18 ❯ test/anthropic-service.test.ts:112:26
test/GoalTracker.test.ts > GoalTracker - useGoalTracker Hook > handles sync failures gracefully: test/GoalTracker.test.ts#L146
AssertionError: expected 'Sync failed. Please try again.' to be 'Failed to sync goals. Please try agai…' // Object.is equality Expected: "Failed to sync goals. Please try again." Received: "Sync failed. Please try again." ❯ test/GoalTracker.test.ts:146:38
Coverage report unavailable
Vitest did not produce a coverage summary. This warning does not fail CI.