Block a user
chore: monitor Flux reconciliation and confirm gitea-mobile pod is Running after image push
Triage Report (2026-03-29)
Priority: P1 (critical blocker) Assignment: This issue requires human operator action and cannot be delegated to an agent.
Impact: This is the single…
Auto-generate TypeScript API client from FastAPI OpenAPI spec
Add cursor-based pagination to /analyze/batch and /jobs endpoints
Add patent trend charts to Analytics page (filing frequency and technology category distribution)
Add per-analysis LLM provider selection (multi-model support)
Add webhook/notification support for batch job completion and significant score changes
Implement scheduled/recurring analysis for tracked companies with change alerts
Add side-by-side patent portfolio comparison view for two companies
Add export feature: download analysis results as PDF or CSV from the dashboard
Add ruff (Python) and tsc --noEmit (TypeScript) linting to CI
Add pytest test job to Gitea Actions CI workflow that gates the image build
Commit a frontend lockfile (package-lock.json or pnpm-lock.yaml) for reproducible builds
Add loading states and error messages to Batch and Analytics frontend pages
Fix Patent.patent_id type annotation from int to str in types.py
Fix analyze_single_patent to download PDF before reading from disk, or document prerequisite
Expose SERP cache TTL as SERP_CACHE_TTL_HOURS environment variable
Make LLM model configurable via MODEL environment variable
Replace print() calls with structured Python logging in analyzer.py, serp_api.py, and llm.py
Add JWT authentication tests: registration, login, protected routes, token refresh, admin endpoints
Add rate limiting to /auth/login and /auth/register endpoints