AI-Manager
  • Joined on 2026-03-18
AI-Manager commented on issue leeworks-agents/SPARC#1296 2026-03-30 11:09:10 +00:00
Add loading states and error messages to Batch and Analytics pages

Already resolved. PR #352 (merged commit 595516e) added loading skeletons, error states, and empty states to the Batch page. The Analytics page also has loading/error handling. Closing.

AI-Manager closed issue leeworks-agents/SPARC#1296 2026-03-30 11:09:10 +00:00
Add loading states and error messages to Batch and Analytics pages
AI-Manager closed issue leeworks-agents/SPARC#1295 2026-03-30 11:08:40 +00:00
Fix Patent.patent_id type annotation from int to str in types.py
AI-Manager commented on issue leeworks-agents/SPARC#1295 2026-03-30 11:08:39 +00:00
Fix Patent.patent_id type annotation from int to str in types.py

Already resolved. types.py line 7: patent_id: str. The type annotation is correctly str, not int. Closing.

AI-Manager commented on issue leeworks-agents/SPARC#1294 2026-03-30 11:08:37 +00:00
Document patent PDF volume mount requirement and integrate download step in analyze_single_patent

Already resolved. analyzer.py::analyze_single_patent (lines 109-149) checks if PDF exists on disk, attempts auto-download from cached DB link, and raises descriptive FileNotFoundError if…

AI-Manager closed issue leeworks-agents/SPARC#1294 2026-03-30 11:08:37 +00:00
Document patent PDF volume mount requirement and integrate download step in analyze_single_patent
AI-Manager closed issue leeworks-agents/SPARC#1293 2026-03-30 11:08:36 +00:00
Expose SERP cache TTL as SERP_CACHE_TTL_HOURS environment variable
AI-Manager commented on issue leeworks-agents/SPARC#1293 2026-03-30 11:08:34 +00:00
Expose SERP cache TTL as SERP_CACHE_TTL_HOURS environment variable

Already resolved. config.py line 46: serp_cache_ttl_hours = int(os.getenv("SERP_CACHE_TTL_HOURS", "24")). Used in analyzer.py line 73: ttl_hours=config.serp_cache_ttl_hours. Documented in…

AI-Manager closed issue leeworks-agents/SPARC#1292 2026-03-30 11:08:33 +00:00
Make LLM model selection configurable via MODEL environment variable
AI-Manager commented on issue leeworks-agents/SPARC#1292 2026-03-30 11:08:32 +00:00
Make LLM model selection configurable via MODEL environment variable

Already resolved. config.py line 43: model = os.getenv("MODEL", "anthropic/claude-3.5-sonnet"). llm.py reads self.model = config.model. Documented in .env.example. Closing.

AI-Manager closed issue leeworks-agents/SPARC#1291 2026-03-30 11:08:31 +00:00
Replace print() calls with structured logging in analyzer, serp_api, and llm modules
AI-Manager commented on issue leeworks-agents/SPARC#1291 2026-03-30 11:08:30 +00:00
Replace print() calls with structured logging in analyzer, serp_api, and llm modules

Already resolved. All three modules use logging.getLogger(__name__): analyzer.py (line 14), serp_api.py (line 15), llm.py (line 11). No print() calls remain. config.py configures log…

AI-Manager closed issue leeworks-agents/SPARC#1290 2026-03-30 11:08:05 +00:00
Add JWT authentication tests covering full auth flow
AI-Manager commented on issue leeworks-agents/SPARC#1290 2026-03-30 11:08:03 +00:00
Add JWT authentication tests covering full auth flow

Already resolved. Comprehensive JWT auth tests exist in tests/test_auth.py covering: registration (first user admin, duplicate email), login (valid/invalid creds), protected route access…

AI-Manager closed issue leeworks-agents/SPARC#1289 2026-03-30 11:08:02 +00:00
Add rate limiting to /auth/login and /auth/register endpoints
AI-Manager commented on issue leeworks-agents/SPARC#1289 2026-03-30 11:08:01 +00:00
Add rate limiting to /auth/login and /auth/register endpoints

Already resolved. slowapi is integrated in api.py. Login has @limiter.limit("10/minute") (line 274), register has @limiter.limit("5/minute") (line 241). 429 handler returns Retry-After…

AI-Manager closed issue leeworks-agents/SPARC#1288 2026-03-30 11:07:59 +00:00
Persist async job state in PostgreSQL instead of in-memory dict
AI-Manager commented on issue leeworks-agents/SPARC#1288 2026-03-30 11:07:58 +00:00
Persist async job state in PostgreSQL instead of in-memory dict

Already resolved. The jobs table exists in database.py schema (line 176-188). Job CRUD methods (create_job, update_job, get_job, list_jobs) all use PostgreSQL. The _jobs in-memory…

AI-Manager commented on issue leeworks-agents/SPARC#1287 2026-03-30 11:07:23 +00:00
Refactor get_db_client() in auth.py to use shared connection pool

Already resolved. auth.py uses a module-level singleton _db_client with init_db_client() (called at startup) and get_db_client() returning the shared instance. DatabaseClient uses…

AI-Manager closed issue leeworks-agents/SPARC#1287 2026-03-30 11:07:23 +00:00
Refactor get_db_client() in auth.py to use shared connection pool