fetch_ml/internal/api
Jeremie Fraeys 188cf55939
refactor(api): overhaul WebSocket handler and protocol layer
Major WebSocket handler refactor:
- Rewrite ws/handler.go with structured message routing and backpressure
- Add connection lifecycle management with heartbeats and timeouts
- Implement graceful connection draining for zero-downtime restarts

Protocol improvements:
- Define structured protocol types in protocol.go for hub communication
- Add versioned message envelopes for backward compatibility
- Standardize error codes and response formats across WebSocket API

Job streaming via WebSocket:
- Simplify ws/jobs.go with async job status streaming
- Add compression for high-volume job updates

Testing:
- Update websocket_e2e_test.go for new protocol semantics
- Add connection resilience tests
2026-03-12 12:01:21 -04:00
..
audit feat(audit): add HTTP audit middleware and tamper-evident logging 2026-03-08 13:03:02 -04:00
datasets feat(api): integrate scheduler protocol and WebSocket enhancements 2026-02-26 12:05:57 -05:00
groups feat(auth): add token-based access and structured logging 2026-03-08 12:51:07 -04:00
helpers feat(api): add groups and tokens handlers, refactor routes 2026-03-08 12:51:25 -04:00
jobs feat(auth): add token-based access and structured logging 2026-03-08 12:51:07 -04:00
jupyter feat(auth): add token-based access and structured logging 2026-03-08 12:51:07 -04:00
middleware feat(api): add groups and tokens handlers, refactor routes 2026-03-08 12:51:25 -04:00
plugins feat(api): add groups and tokens handlers, refactor routes 2026-03-08 12:51:25 -04:00
responses feat(api): add groups and tokens handlers, refactor routes 2026-03-08 12:51:25 -04:00
scheduler feat(scheduler): implement capability-based routing and hub v2 2026-03-12 12:00:05 -04:00
tokens feat(auth): add token-based access and structured logging 2026-03-08 12:51:07 -04:00
validate feat(api): add groups and tokens handlers, refactor routes 2026-03-08 12:51:25 -04:00
ws refactor(api): overhaul WebSocket handler and protocol layer 2026-03-12 12:01:21 -04:00
adapter.go feat(auth): add token-based access and structured logging 2026-03-08 12:51:07 -04:00
factory.go feat(auth): add token-based access and structured logging 2026-03-08 12:51:07 -04:00
health.go feat(api): integrate scheduler protocol and WebSocket enhancements 2026-02-26 12:05:57 -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 feat(api): add groups and tokens handlers, refactor routes 2026-03-08 12:51:25 -04:00
monitoring_config.go feat(api): integrate scheduler protocol and WebSocket enhancements 2026-02-26 12:05:57 -05:00
protocol.go refactor(api): overhaul WebSocket handler and protocol layer 2026-03-12 12:01:21 -04:00
routes.go feat(auth): add token-based access and structured logging 2026-03-08 12:51:07 -04:00
server.go api: regenerate OpenAPI types and server code 2026-03-04 13:23:34 -05:00
server_config.go api: regenerate OpenAPI types and server code 2026-03-04 13:23:34 -05:00
server_gen.go feat(api): add groups and tokens handlers, refactor routes 2026-03-08 12:51:25 -04:00
spec_embed.go feat(api): add groups and tokens handlers, refactor routes 2026-03-08 12:51:25 -04:00
ws_protocol.go refactor: improve API structure and WebSocket protocol 2026-02-16 20:38:12 -05:00