[Repo Manager] Triaged. Backend fully supports per-request model selection: API accepts optional model field, llm.py routes to specified model via OpenRouter, results store the model used.…
[Repo Manager] Triaged. The Batch page (Batch.tsx) has a submission spinner and error banner, but is missing: (1) a job history list that polls /jobs, (2) skeleton loaders while the job list…
[Repo Manager] Triaged. Partial implementation exists: webhooks.py supports env-var-based webhook URLs with Slack/Discord detection, retry logic, and job_completed/alert notifications. Missing:…
[Repo Manager] This issue is resolved. The scheduler module (scheduler.py) uses APScheduler to run periodic analysis on tracked companies. The database has a tracked_companies table with full…
[Repo Manager] This issue is resolved. package.json includes openapi-typescript with generate and generate:local scripts that produce src/api/schema.d.ts from the FastAPI OpenAPI spec. The…
[Repo Manager] This issue is resolved. analyze_single_patent() already integrates a PDF download step that checks disk first, then falls back to downloading from cached link, and raises FileNotFoun…
[Repo Manager] This issue is resolved. api.py already uses slowapi with rate limiting: 5/minute on /auth/login and 10/minute on /auth/register. HTTP 429 responses include proper error messages.
[Repo Manager] This issue is resolved. All three files (analyzer.py, serp_api.py, llm.py) use logging.getLogger(name) with no remaining print() calls. config.py configures LOG_LEVEL from…
[Repo Manager] This issue is resolved. Analysis.tsx already has Export CSV and Export PDF buttons using exportApi.exportCsv() and exportApi.exportPdf().
[Repo Manager] This issue is resolved. Analytics.tsx already includes PieChart, BarChart, and LineChart components from recharts with trend data queries.
[Repo Manager] This issue is resolved. Analytics.tsx already has isLoading/isError handling with skeleton cards and skeleton chart placeholders.