P2.1: Add GatewayConnector BackgroundService with WebSocket client
- GatewayConnector: BackgroundService maintaining persistent WebSocket connection to OpenClaw Gateway with Bearer token auth from backend env only - IGatewayConnector: Interface exposing connection state, version info, health - Exponential backoff reconnect: 1s initial, max 5min, with jitter - Version pinning: RequiredVersion from config; fail-fast or warn on mismatch - Pre-flight HTTP version check before WebSocket connect - GatewayHealthController: GET /api/health/gateway with connection status - GatewayConnectorOptions: Configurable via GatewayConnector config section - Token never logged; read from Integrations:OpenClaw:Password/Token only - 16 tests: options defaults, config binding, health endpoint responses, connection states, DI registration, routing attributes
This commit is contained in:
@@ -27,5 +27,12 @@
|
||||
"StaleHours": 2,
|
||||
"IntervalMinutes": 30
|
||||
},
|
||||
"GatewayConnector": {
|
||||
"WebSocketPath": "/ws",
|
||||
"ReconnectInitialDelayMs": 1000,
|
||||
"ReconnectMaxDelayMs": 300000,
|
||||
"FailFastOnVersionMismatch": true,
|
||||
"FailFastOnMissingVersion": false
|
||||
},
|
||||
"AllowedHosts": "*"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user