Block a user
feat: implement POST /pulls/{owner}/{repo}/{index}/merge handler and wire merge button into PR detail template
Add merge PR button to pull request detail view
feat: implement go:embed for templates and static assets to fix distroless container paths
chore: migrate SESSION_SECRET from plaintext secret.yaml to Sealed Secrets
feat: implement POST /pulls/{owner}/{repo}/{index}/merge HTTP handler and register route
feat: add POST /pulls/{owner}/{repo}/{index}/assignees route to handler registration
Update ROADMAP.md to mark completed P1 and P2 items as done
Add multi-tenant support to scope analysis results and tracked companies per user/org
Move webhook delivery to a background task queue to avoid blocking the scheduler
Add rate limit status and usage statistics to the admin panel
Add batch export endpoint to download analysis results for multiple companies as a ZIP archive
Add user-level API key generation for programmatic access without JWT refresh
Add LLM-based patent classification tagging by technology domain
Add historical analysis diffing to show changes between runs for the same company
Add stricter input validation for company names on analysis endpoints
Add cursor-based pagination to /analyze/batch and /jobs endpoints
Refactor scheduler.py to use the application-level pooled DatabaseClient
Closed via PR #1665. Reviewed and merged. The refactor correctly replaces per-invocation DatabaseClient instantiation in scheduler.py with the shared pooled client from SPARC.auth.get_db_client().…
Add tests for tracked company admin endpoints and scheduler integration
Closed via PR #1667. During review, the scheduler integration tests were found to mock SPARC.scheduler.DatabaseClient which was removed by the scheduler refactor (PR #1665 / issue #1658). The…
Add tests for tracked company admin endpoints and scheduler integration