diff --git a/__tests__/api/story-log.test.ts b/__tests__/api/story-log.test.ts index 2ba3025..0a9b5df 100644 --- a/__tests__/api/story-log.test.ts +++ b/__tests__/api/story-log.test.ts @@ -129,7 +129,7 @@ describe('POST /api/stories/:id/log', () => { const res = await postStoryLog( ...makeRequest({ type: 'TEST_RESULT', content: 'Test gefaald.', status: 'FAILED' }) ) - const data = await res.json() + await res.json() expect(res.status).toBe(201) expect(mockPrisma.storyLog.create).toHaveBeenCalledWith( diff --git a/actions/claude-jobs.ts b/actions/claude-jobs.ts index 75b15fa..12fa3e9 100644 --- a/actions/claude-jobs.ts +++ b/actions/claude-jobs.ts @@ -3,9 +3,7 @@ import { revalidatePath } from 'next/cache' import { prisma } from '@/lib/prisma' import { getSession } from '@/lib/auth' -import { productAccessFilter } from '@/lib/product-access' import { ACTIVE_JOB_STATUSES, jobStatusToApi } from '@/lib/job-status' -import { enforceUserRateLimit } from '@/lib/rate-limit' type EnqueueResult = | { success: true; jobId: string } diff --git a/components/dialogs/product-dialog.tsx b/components/dialogs/product-dialog.tsx index a0a9797..a478fb9 100644 --- a/components/dialogs/product-dialog.tsx +++ b/components/dialogs/product-dialog.tsx @@ -1,7 +1,7 @@ 'use client' import { useEffect, useState } from 'react' -import { useForm } from 'react-hook-form' +import { useForm, useWatch } from 'react-hook-form' import { zodResolver } from '@hookform/resolvers/zod' import { toast } from 'sonner' import { cn } from '@/lib/utils' @@ -150,7 +150,7 @@ export function ProductDialog(props: Props) { } } - const autoPr = form.watch('auto_pr') + const autoPr = useWatch({ control: form.control, name: 'auto_pr' }) return ( <> diff --git a/components/sprint/sprint-header.tsx b/components/sprint/sprint-header.tsx index dac19e4..893e21a 100644 --- a/components/sprint/sprint-header.tsx +++ b/components/sprint/sprint-header.tsx @@ -61,7 +61,7 @@ function toDateInputValue(d: Date | null) { return d.toISOString().slice(0, 10) } -export function SprintHeader({ productId, productName, sprint, isDemo, sprintStories }: SprintHeaderProps) { +export function SprintHeader({ productId: _productId, productName, sprint, isDemo, sprintStories }: SprintHeaderProps) { const [editingGoal, setEditingGoal] = useState(false) const [editingDates, setEditingDates] = useState(false) const [completeOpen, setCompleteOpen] = useState(false) diff --git a/lib/insights/agent-throughput.ts b/lib/insights/agent-throughput.ts index 2a44340..b5017d2 100644 --- a/lib/insights/agent-throughput.ts +++ b/lib/insights/agent-throughput.ts @@ -21,8 +21,6 @@ export interface JobsPerDayResult { kpi: ThroughputKpi } -const STATUSES = ['queued', 'claimed', 'running', 'done', 'failed', 'cancelled'] as const - type RawDayRow = { day: Date; status: string; count: bigint } type RawKpiRow = { today_count: bigint; done_7d: bigint; terminal_7d: bigint; avg_seconds: number | null }