forked from 0xWheatyz/SPARC
Add cursor-based pagination to /analyze/batch and /jobs endpoints #1693
Open
AI-Manager
wants to merge 1 commits from
feature/1684-cursor-pagination into main
pull from: feature/1684-cursor-pagination
merge into: leeworks-agents:main
leeworks-agents:main
leeworks-agents:feature/multi-tenant-isolation
leeworks-agents:feature/historical-analysis-diff
leeworks-agents:feature/1686-rate-limit-dashboard
leeworks-agents:feature/patent-classification-tags
leeworks-agents:feature/webhook-task-queue
leeworks-agents:feature/1674-batch-export-zip
leeworks-agents:feature/1685-stricter-company-name-validation
leeworks-agents:feature/api-key-auth
leeworks-agents:feature/1675-rate-limit-admin
leeworks-agents:feature/1669-cursor-pagination
leeworks-agents:feature/1670-company-name-validation
leeworks-agents:feature/1678-update-roadmap
leeworks-agents:feature/1656-tracked-company-admin-tests
leeworks-agents:feature/1661-analyze-single-patent-tests
leeworks-agents:feature/1660-s3-storage-tests
leeworks-agents:feature/1659-update-roadmap
leeworks-agents:feature/1658-scheduler-pooled-db
leeworks-agents:feature/1657-webhook-integration-tests
leeworks-agents:feature/1655-export-endpoint-tests
leeworks-agents:feature/1605-dark-mode
leeworks-agents:feature/1624-jwt-auth-tests
leeworks-agents:feature/1559-1560-enable-ci-linting-and-tests
leeworks-agents:feature/docs-patent-volume-mount
leeworks-agents:feature/1324-dark-mode-variants
leeworks-agents:feature/1013-multi-model
leeworks-agents:feature/426-generate-ts-api-client
leeworks-agents:feature/351-frontend-model-picker
leeworks-agents:feature/343-batch-loading-states
leeworks-agents:feature/env-example-updates
leeworks-agents:feature/260-tsc-ci
leeworks-agents:feature/export-pdf
leeworks-agents:feature/multi-model
leeworks-agents:feature/openapi-client-gen
leeworks-agents:feature/trend-charts
leeworks-agents:feature/compare-view
leeworks-agents:feature/s3-storage
leeworks-agents:feature/webhooks
leeworks-agents:feature/scheduled-analysis
leeworks-agents:feature/export-csv
leeworks-agents:feature/cursor-pagination
leeworks-agents:feature/dark-mode
leeworks-agents:feature/loading-error-states
leeworks-agents:feature/fix-single-patent-download
leeworks-agents:feature/structured-logging
leeworks-agents:feature/ci-tsc-lint
leeworks-agents:feature/ci-testing-linting
leeworks-agents:feature/db-client-pooling
leeworks-agents:feature/p2-config-improvements
leeworks-agents:feature/jwt-auth-tests
leeworks-agents:feature/persist-job-state
leeworks-agents:feature/p2-docs-and-lockfile
leeworks-agents:feature/rate-limiting
leeworks-agents:feature/p1-security-hardening
leeworks-agents:chore/add-roadmap
1 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
0e68e8c900 |
Add cursor-based pagination to /analyze/batch and /jobs endpoints
- Fix route ordering bug: GET /analyze/batch was shadowed by
GET /analyze/{company_name} causing all GET requests to /analyze/batch
to be erroneously handled as single-company analysis (503). Move
/analyze/batch GET registration to before the {company_name} route.
- Update TypeScript schema.d.ts: add AnalysisRecord, PaginatedAnalysisResponse,
PaginatedJobsResponse schemas; add GET /analyze/batch operation with
cursor+limit+company_name params; update list_jobs_jobs_get to include
cursor param and return PaginatedJobsResponse.
- Update frontend/src/api/client.ts: add listBatchAnalyses() method with
cursor/limit support; update listJobs() to accept cursor and return
PaginatedJobsResponse; default limit changed from 10 to 50.
- Update frontend/src/types/index.ts: export AnalysisRecord,
PaginatedAnalysisResponse, PaginatedJobsResponse.
- Expand tests/test_pagination.py: add auth fixture so tests pass JWT
validation; add 11 new /jobs tests covering first page, last page,
subsequent pages, empty results, status filter, limit boundaries, cursor
forwarding, and paginated response shape.
Closes leeworks-agents/SPARC#1684
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|