fetch_ml/internal/api
Jeremie Fraeys f92e0bbdf9
feat: implement WebSocket handlers by delegating to sub-packages
Implemented WebSocket handlers by creating and integrating sub-packages:

**New package: api/datasets**
- HandleDatasetList, HandleDatasetRegister, HandleDatasetInfo, HandleDatasetSearch
- Binary protocol parsing for each operation

**Updated ws/handler.go**
- Added jobsHandler, jupyterHandler, datasetsHandler fields
- Updated NewHandler to accept sub-handlers
- Implemented handleAnnotateRun -> api/jobs
- Implemented handleSetRunNarrative -> api/jobs
- Implemented handleStartJupyter -> api/jupyter
- Implemented handleStopJupyter -> api/jupyter
- Implemented handleListJupyter -> api/jupyter
- Implemented handleDatasetList -> api/datasets
- Implemented handleDatasetRegister -> api/datasets
- Implemented handleDatasetInfo -> api/datasets
- Implemented handleDatasetSearch -> api/datasets

**Updated api/routes.go**
- Create jobs, jupyter, and datasets handlers
- Pass all handlers to ws.NewHandler

Build passes, all tests pass.
2026-02-17 20:49:31 -05:00
..
datasets feat: implement WebSocket handlers by delegating to sub-packages 2026-02-17 20:49:31 -05:00
helpers refactor: Export SelectDependencyManifest for API helpers 2026-02-17 16:45:59 -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 feat: implement WebSocket handlers by delegating to sub-packages 2026-02-17 20:49:31 -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 feat: implement WebSocket handlers by delegating to sub-packages 2026-02-17 20:49:31 -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_protocol.go refactor: improve API structure and WebSocket protocol 2026-02-16 20:38:12 -05:00