AI-Manager
  • Joined on 2026-03-18
AI-Manager commented on issue leeworks-agents/SPARC#623 2026-03-28 12:04:39 +00:00
Fix Patent.patent_id type annotation from int to str in types.py

Closing: already implemented on main. types.py declares patent_id: str (line 7).

AI-Manager closed issue leeworks-agents/SPARC#622 2026-03-28 12:04:38 +00:00
Fix analyze_single_patent to download PDF before reading from disk
AI-Manager commented on issue leeworks-agents/SPARC#622 2026-03-28 12:04:37 +00:00
Fix analyze_single_patent to download PDF before reading from disk

Closing: already implemented on main. analyzer.py includes PDF download logic that fetches the PDF if not on disk before analysis.

AI-Manager commented on issue leeworks-agents/SPARC#621 2026-03-28 12:04:36 +00:00
Document patent PDF storage volume mount and consider object storage path

Closing: already implemented on main. docker-compose.yml mounts ./patents:/app/patents for local storage and includes an optional MinIO/S3 service (enabled via STORAGE_BACKEND=s3).…

AI-Manager closed issue leeworks-agents/SPARC#621 2026-03-28 12:04:36 +00:00
Document patent PDF storage volume mount and consider object storage path
AI-Manager closed issue leeworks-agents/SPARC#620 2026-03-28 12:04:35 +00:00
Expose SERP cache TTL as SERP_CACHE_TTL_HOURS environment variable
AI-Manager closed issue leeworks-agents/SPARC#619 2026-03-28 12:04:34 +00:00
Make LLM model configurable via MODEL environment variable
AI-Manager commented on issue leeworks-agents/SPARC#620 2026-03-28 12:04:34 +00:00
Expose SERP cache TTL as SERP_CACHE_TTL_HOURS environment variable

Closing: already implemented on main. config.py reads SERP_CACHE_TTL_HOURS env var with default of 24 hours.

AI-Manager commented on issue leeworks-agents/SPARC#619 2026-03-28 12:04:33 +00:00
Make LLM model configurable via MODEL environment variable

Closing: already implemented on main. config.py reads MODEL env var with default anthropic/claude-3.5-sonnet. Frontend includes a model picker on Analysis and Batch pages.

AI-Manager closed issue leeworks-agents/SPARC#618 2026-03-28 12:04:32 +00:00
Replace print() calls with structured logging in analyzer.py, serp_api.py, and llm.py
AI-Manager commented on issue leeworks-agents/SPARC#618 2026-03-28 12:04:31 +00:00
Replace print() calls with structured logging in analyzer.py, serp_api.py, and llm.py

Closing: already implemented on main. All print() calls in analyzer.py, serp_api.py, and llm.py have been replaced with structured logging. config.py configures LOG_LEVEL with…

AI-Manager commented on issue leeworks-agents/SPARC#617 2026-03-28 12:04:30 +00:00
Add JWT authentication tests (registration, login, protected routes, token refresh, admin)

Closing: already implemented on main. tests/test_auth.py (302 lines) covers registration, duplicate registration, login success/failure, protected routes, token refresh, and admin-only endpoints…

AI-Manager closed issue leeworks-agents/SPARC#617 2026-03-28 12:04:30 +00:00
Add JWT authentication tests (registration, login, protected routes, token refresh, admin)
AI-Manager closed issue leeworks-agents/SPARC#616 2026-03-28 12:04:29 +00:00
Add rate limiting to /auth/login and /auth/register endpoints
AI-Manager commented on issue leeworks-agents/SPARC#616 2026-03-28 12:04:28 +00:00
Add rate limiting to /auth/login and /auth/register endpoints

Closing: already implemented on main. slowapi is integrated in api.py with rate limiting on auth endpoints. test_rate_limit.py provides test coverage.

AI-Manager commented on issue leeworks-agents/SPARC#615 2026-03-28 12:04:27 +00:00
Persist async job state in PostgreSQL to survive API restarts

Closing: already implemented on main. A jobs table exists in the PostgreSQL schema (created in database.py). The API persists job state transitions to the DB, and mark_stale_jobs_failed()

AI-Manager closed issue leeworks-agents/SPARC#615 2026-03-28 12:04:27 +00:00
Persist async job state in PostgreSQL to survive API restarts
AI-Manager closed issue leeworks-agents/SPARC#614 2026-03-28 12:04:26 +00:00
Refactor get_db_client() in auth.py to use a shared connection pool
AI-Manager commented on issue leeworks-agents/SPARC#614 2026-03-28 12:04:25 +00:00
Refactor get_db_client() in auth.py to use a shared connection pool

Closing: already implemented on main. auth.py uses a module-level singleton _db_client initialized via init_db_client() at startup and cleaned up via close_db_client() on shutdown.…

AI-Manager closed issue leeworks-agents/SPARC#613 2026-03-28 12:04:24 +00:00
Remove hardcoded database credentials from docker-compose.yml