fetch_ml/internal/api
Jeremie Fraeys f0ffbb4a3d
refactor: Phase 5 complete - API packages extracted
Extracted all deferred API packages from monolithic ws_*.go files:

- api/routes.go (75 lines) - Extracted route registration from server.go
- api/errors.go (108 lines) - Standardized error responses and error codes
- api/jobs/handlers.go (271 lines) - Job WebSocket handlers
  * HandleAnnotateRun, HandleSetRunNarrative
  * HandleCancelJob, HandlePruneJobs, HandleListJobs
- api/jupyter/handlers.go (244 lines) - Jupyter WebSocket handlers
  * HandleStartJupyter, HandleStopJupyter
  * HandleListJupyter, HandleListJupyterPackages
  * HandleRemoveJupyter, HandleRestoreJupyter
- api/validate/handlers.go (163 lines) - Validation WebSocket handlers
  * HandleValidate, HandleGetValidateStatus, HandleListValidations
- api/ws/handler.go (298 lines) - WebSocket handler framework
  * Core WebSocket handling logic
  * Opcode constants and error codes

Lines redistributed: ~1,150 lines from ws_jobs.go (1,365), ws_jupyter.go (512),
ws_validate.go (523), ws_handler.go (379) into focused packages.

Note: Original ws_*.go files still present - cleanup in next commit.
Build status: Compiles successfully
2026-02-17 13:25:58 -05:00
..
helpers refactor: Phase 3 - fix config/storage boundaries 2026-02-17 12:49:53 -05:00
jobs refactor: Phase 5 complete - API packages extracted 2026-02-17 13:25:58 -05:00
jupyter refactor: Phase 5 complete - API packages extracted 2026-02-17 13:25:58 -05:00
validate refactor: Phase 5 complete - API packages extracted 2026-02-17 13:25:58 -05:00
ws refactor: Phase 5 complete - API packages extracted 2026-02-17 13:25:58 -05:00
errors.go refactor: Phase 5 complete - API packages extracted 2026-02-17 13:25:58 -05:00
factory.go refactor: Phase 5 - split API package into focused files 2026-02-17 13:11:02 -05:00
handlers.go refactor: improve API structure and WebSocket protocol 2026-02-16 20:38:12 -05:00
health.go feat(api): refactor websocket handlers; add health and prometheus middleware 2026-01-05 12:31:07 -05:00
metrics_middleware.go feat(api): refactor websocket handlers; add health and prometheus middleware 2026-01-05 12:31:07 -05:00
middleware.go refactor: Phase 5 - split API package into focused files 2026-02-17 13:11:02 -05:00
monitoring_config.go feat(api): refactor websocket handlers; add health and prometheus middleware 2026-01-05 12:31:07 -05:00
protocol.go feat(core): API, worker, queue, and manifest improvements 2026-02-12 12:05:17 -05:00
routes.go refactor: Phase 5 complete - API packages extracted 2026-02-17 13:25:58 -05:00
server.go refactor: Phase 5 complete - API packages extracted 2026-02-17 13:25:58 -05:00
server_config.go feat(core): API, worker, queue, and manifest improvements 2026-02-12 12:05:17 -05:00
ws_datasets.go refactor: improve API structure and WebSocket protocol 2026-02-16 20:38:12 -05:00
ws_handler.go refactor: improve API structure and WebSocket protocol 2026-02-16 20:38:12 -05:00
ws_jobs.go refactor: Phase 3 - fix config/storage boundaries 2026-02-17 12:49:53 -05:00
ws_jupyter.go refactor: improve API structure and WebSocket protocol 2026-02-16 20:38:12 -05:00
ws_protocol.go refactor: improve API structure and WebSocket protocol 2026-02-16 20:38:12 -05:00
ws_tls_auth.go feat(api): refactor websocket handlers; add health and prometheus middleware 2026-01-05 12:31:07 -05:00
ws_validate.go refactor: Phase 3 - fix config/storage boundaries 2026-02-17 12:49:53 -05:00