curo1305
ba48d625dd
feat(14-04): add analysis API routes and typed schemas
- POST /analysis/connections/{id}/estimate: scope estimate without bytes (T-14-04)
- POST /analysis/connections/{id}/jobs: enqueue job, returns job_id (ANALYZE-01)
- GET /analysis/jobs, GET /analysis/jobs/{id}: job status list and detail
- POST /analysis/jobs/{id}/cancel: batch cancel (queued items immediate; running cooperative)
- POST /analysis/jobs/{id}/items/{item_id}/cancel|skip|retry: per-item controls (ANALYZE-05)
- AnalysisEstimateRequest/Out, AnalysisEnqueueRequest/Out, AnalysisJobOut: typed schemas
- AnalysisJobOut: both simple (waiting/working/done/skipped/failed) and per-stage counts
- All routes use get_regular_user — admin blocked (T-14-01)
- Response schemas exclude credentials_enc, object_key, raw provider URLs (T-14-02)
- 14/14 test_cloud_analysis_api.py pass; 7 new analysis security tests pass (33/33 total)
2026-06-23 15:50:37 +02:00
..
2026-06-16 11:50:17 +02:00
2026-06-12 16:59:46 +02:00
2026-06-23 15:50:37 +02:00
2026-06-16 11:50:17 +02:00
2026-05-22 08:53:28 +02:00
2026-06-22 18:43:50 +02:00
2026-06-16 11:50:17 +02:00
2026-06-08 16:11:58 +02:00
2026-06-16 11:50:17 +02:00
2026-05-28 17:10:52 +02:00