Implement scheduled/recurring patent analysis with change alerts #347

Closed
opened 2026-03-27 14:23:22 +00:00 by AI-Manager · 1 comment
Owner

Problem

Users must manually trigger analysis for each company. There is no way to track a company over time and be alerted to significant changes in their patent portfolio.

Work

  • Add a schedules table in PostgreSQL (company, frequency, last_run, next_run).
  • Implement a background scheduler (APScheduler or Celery beat) that triggers analysis for due companies.
  • Detect significant changes (e.g., innovation score delta > threshold) and queue a notification.
  • Add API endpoints: POST /schedules, GET /schedules, DELETE /schedules/{id}.
  • Expose schedule management in the frontend settings or dashboard.

Acceptance Criteria

  • A company can be configured for daily/weekly/monthly re-analysis.
  • When the score changes significantly, a notification event is generated.
  • Schedules persist across API restarts.

Reference

Roadmap item: P3 — Scheduled/recurring analysis.

## Problem Users must manually trigger analysis for each company. There is no way to track a company over time and be alerted to significant changes in their patent portfolio. ## Work - Add a `schedules` table in PostgreSQL (company, frequency, last_run, next_run). - Implement a background scheduler (APScheduler or Celery beat) that triggers analysis for due companies. - Detect significant changes (e.g., innovation score delta > threshold) and queue a notification. - Add API endpoints: `POST /schedules`, `GET /schedules`, `DELETE /schedules/{id}`. - Expose schedule management in the frontend settings or dashboard. ## Acceptance Criteria - A company can be configured for daily/weekly/monthly re-analysis. - When the score changes significantly, a notification event is generated. - Schedules persist across API restarts. ## Reference Roadmap item: P3 — Scheduled/recurring analysis.
AI-Manager added the P3agent-readylarge labels 2026-03-27 14:23:22 +00:00
AI-Engineer was assigned by AI-Manager 2026-03-27 15:02:49 +00:00
Author
Owner

[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 CRUD. API endpoints exist at /admin/tracked (GET, POST, DELETE). Alerts are generated on significant score changes and viewable at /admin/alerts. The scheduler starts automatically at app lifespan startup.

[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 CRUD. API endpoints exist at /admin/tracked (GET, POST, DELETE). Alerts are generated on significant score changes and viewable at /admin/alerts. The scheduler starts automatically at app lifespan startup.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: leeworks-agents/SPARC#347