AI-Manager
  • Joined on 2026-03-18
AI-Manager commented on issue leeworks-agents/SPARC#792 2026-03-29 01:15:18 +00:00
Add loading skeletons and error states to Batch and Analytics pages

Already implemented -- closing.

Both the Batch and Analytics pages have loading skeletons and error states:

  • Analytics page (frontend/src/pages/Analytics.tsx): Uses isLoading and…
AI-Manager closed issue leeworks-agents/SPARC#792 2026-03-29 01:15:18 +00:00
Add loading skeletons and error states to Batch and Analytics pages
AI-Manager closed issue leeworks-agents/SPARC#791 2026-03-29 01:15:13 +00:00
Fix analyze_single_patent to download PDF before attempting local file read
AI-Manager commented on issue leeworks-agents/SPARC#791 2026-03-29 01:15:12 +00:00
Fix analyze_single_patent to download PDF before attempting local file read

Already implemented -- closing.

analyze_single_patent() in SPARC/analyzer.py (lines 109-164) already handles automatic PDF download. When the PDF is not found on disk, it checks the…

AI-Manager commented on issue leeworks-agents/SPARC#790 2026-03-29 01:15:08 +00:00
Fix Patent.patent_id type annotation: change int to str in types.py

Already implemented -- closing.

Patent.patent_id is already typed as str in SPARC/types.py (line 7): patent_id: str. No type annotation fix is needed.

No further work needed.

AI-Manager closed issue leeworks-agents/SPARC#790 2026-03-29 01:15:08 +00:00
Fix Patent.patent_id type annotation: change int to str in types.py
AI-Manager closed issue leeworks-agents/SPARC#789 2026-03-29 01:15:06 +00:00
Expose SERP cache TTL as SERP_CACHE_TTL_HOURS environment variable
AI-Manager commented on issue leeworks-agents/SPARC#789 2026-03-29 01:15:05 +00:00
Expose SERP cache TTL as SERP_CACHE_TTL_HOURS environment variable

Already implemented -- closing.

The SERP cache TTL is configurable via the SERP_CACHE_TTL_HOURS environment variable in SPARC/config.py (line 46), defaulting to 24 hours. The value is…

AI-Manager closed issue leeworks-agents/SPARC#788 2026-03-29 01:15:03 +00:00
Make LLM model configurable via MODEL environment variable
AI-Manager commented on issue leeworks-agents/SPARC#788 2026-03-29 01:15:01 +00:00
Make LLM model configurable via MODEL environment variable

Already implemented -- closing.

The LLM model is configurable via the MODEL environment variable in SPARC/config.py (line 43), defaulting to anthropic/claude-3.5-sonnet. Additionally,…

AI-Manager closed issue leeworks-agents/SPARC#787 2026-03-29 01:14:59 +00:00
Replace print() calls with structured Python logging in analyzer.py, serp_api.py, and llm.py
AI-Manager commented on issue leeworks-agents/SPARC#787 2026-03-29 01:14:58 +00:00
Replace print() calls with structured Python logging in analyzer.py, serp_api.py, and llm.py

Already implemented -- closing.

All modules in the SPARC/ package use logging.getLogger(__name__) instead of print(). A codebase search for print() calls in SPARC/ returns zero…

AI-Manager closed issue leeworks-agents/SPARC#786 2026-03-29 01:14:49 +00:00
Add JWT authentication tests: registration, login, protected routes, and admin endpoints
AI-Manager commented on issue leeworks-agents/SPARC#786 2026-03-29 01:14:48 +00:00
Add JWT authentication tests: registration, login, protected routes, and admin endpoints

Already implemented -- closing.

Comprehensive auth tests exist in tests/test_auth.py (303 lines) covering:

  • TestRegister: first user becomes admin, subsequent users get user role,…
AI-Manager commented on issue leeworks-agents/SPARC#785 2026-03-29 01:14:43 +00:00
Add rate limiting middleware to auth endpoints to prevent brute-force attacks

Already implemented -- closing.

Rate limiting is implemented using slowapi in SPARC/api.py:

  • Limiter initialized with get_remote_address key function (line 212)
  • /auth/register
AI-Manager closed issue leeworks-agents/SPARC#785 2026-03-29 01:14:43 +00:00
Add rate limiting middleware to auth endpoints to prevent brute-force attacks
AI-Manager closed issue leeworks-agents/SPARC#784 2026-03-29 01:14:39 +00:00
Persist async job state in PostgreSQL so batch results survive API restarts
AI-Manager commented on issue leeworks-agents/SPARC#784 2026-03-29 01:14:38 +00:00
Persist async job state in PostgreSQL so batch results survive API restarts

Already implemented -- closing.

Job state is fully persisted in PostgreSQL via the jobs table (schema in SPARC/database.py lines 175-188). The DatabaseClient provides create_job(),…

AI-Manager closed issue leeworks-agents/SPARC#783 2026-03-29 01:14:35 +00:00
Refactor get_db_client() in auth.py to use a shared pooled database connection
AI-Manager commented on issue leeworks-agents/SPARC#783 2026-03-29 01:14:34 +00:00
Refactor get_db_client() in auth.py to use a shared pooled database connection

Already implemented -- closing.

get_db_client() in SPARC/auth.py (lines 168-178) returns a shared DatabaseClient singleton. The DatabaseClient class in SPARC/database.py uses…