docs: remove references to deleted OpenClaw REST facade (port 8004)
Update all documentation to reflect removal of OpenClaw REST service: - README.md, README_zh.md: remove service table entry - deploy/README.md: update port range 8000-8003 - services/README.md: remove 8004 references and service list - docs/compat-removal-plan.md: remove REST surface mention - docs/current-architecture.md: remove service reference - docs/legacy-inventory.md: simplify to WebSocket-only description Follow-up to: refactor(openclaw): remove REST facade
This commit is contained in:
@@ -61,7 +61,7 @@ backward-compatible behavior while migration settles.
|
||||
|
||||
- OpenClaw currently appears through two different shapes:
|
||||
- WebSocket gateway integration on `:18789`
|
||||
- optional REST surface at `backend.apps.openclaw_service` on `:8004`
|
||||
|
||||
- These are both valid, but they are not the same surface and should not be
|
||||
documented as interchangeable.
|
||||
|
||||
|
||||
@@ -83,7 +83,6 @@ Current service surfaces:
|
||||
- read-only explain/news APIs
|
||||
- `backend.apps.runtime_service` on `:8003`
|
||||
- runtime lifecycle and gateway process management
|
||||
- `backend.apps.openclaw_service` on `:8004`
|
||||
- optional OpenClaw REST facade
|
||||
- gateway WebSocket on `:8765`
|
||||
- live feed/event transport and pipeline coordination
|
||||
|
||||
@@ -65,7 +65,7 @@ topology and service-routing policy are frozen.
|
||||
|
||||
| Surface | Current State | Decision Needed |
|
||||
|---------|---------------|-----------------|
|
||||
| OpenClaw dual integration | REST facade (`:8004`) + Gateway WebSocket (`:18789`) | Which surface is the long-term contract? |
|
||||
| OpenClaw integration | Gateway WebSocket (port 18789) | Stable — REST facade removed |
|
||||
| Env-dependent service fallbacks | `TRADING_SERVICE_URL`, `NEWS_SERVICE_URL` fallbacks to local modules | Remove fallbacks and require explicit URLs? |
|
||||
| Split-service production deploy | Docs show gateway-first, dev uses split-service | Align production with dev topology? |
|
||||
|
||||
@@ -104,70 +104,6 @@ python3 -m backend.main \
|
||||
**Ownership**: ops-team
|
||||
**Status**: Stable and intentional
|
||||
|
||||
### OpenClaw Dual Integration
|
||||
|
||||
Two different integration surfaces exist for OpenClaw:
|
||||
|
||||
#### A. REST Facade (Port 8004)
|
||||
|
||||
**File**: `backend/apps/openclaw_service.py`
|
||||
**Routes**: `backend/api/openclaw.py` (prefix `/api/openclaw`)
|
||||
|
||||
**Purpose**:
|
||||
- Read-only OpenClaw CLI integration
|
||||
- Typed Pydantic models for all responses
|
||||
- Direct HTTP/REST access to OpenClaw state
|
||||
|
||||
**Use when**:
|
||||
- You need typed, stable API contracts
|
||||
- You want to poll OpenClaw status from external systems
|
||||
- You need programmatic access without WebSocket complexity
|
||||
|
||||
**Example**:
|
||||
```bash
|
||||
curl http://localhost:8004/api/openclaw/status
|
||||
```
|
||||
|
||||
#### B. Gateway WebSocket Integration (Port 18789)
|
||||
|
||||
**Files**:
|
||||
- `backend/services/gateway_openclaw_handlers.py`
|
||||
- `shared/client/openclaw_websocket_client.py`
|
||||
|
||||
**Purpose**:
|
||||
- Real-time bidirectional communication with OpenClaw
|
||||
- Event streaming and live updates
|
||||
- Integration with Gateway event flow
|
||||
|
||||
**Use when**:
|
||||
- You need real-time updates
|
||||
- You're already connected to Gateway WebSocket
|
||||
- You want event-driven rather than polling architecture
|
||||
|
||||
**Example**:
|
||||
```javascript
|
||||
// Frontend connects to ws://localhost:18789
|
||||
const ws = new WebSocket('ws://localhost:18789');
|
||||
```
|
||||
|
||||
#### Key Differences
|
||||
|
||||
| Aspect | REST Facade (8004) | Gateway WebSocket (18789) |
|
||||
|--------|-------------------|---------------------------|
|
||||
| Protocol | HTTP/REST | WebSocket |
|
||||
| Access pattern | Request/response | Event-driven |
|
||||
| Typing | Pydantic models | JSON messages |
|
||||
| Real-time | Polling required | Push notifications |
|
||||
| Use case | External integrations, scripts | Frontend, live dashboards |
|
||||
| Stability | Higher (explicit contracts) | Evolving with Gateway |
|
||||
|
||||
**Decision needed**: Which surface becomes the long-term contract?
|
||||
- REST facade is more stable but read-only
|
||||
- WebSocket integration is more capable but tied to Gateway evolution
|
||||
|
||||
**Ownership**: runtime-team
|
||||
**Status**: Deferred until topology final
|
||||
|
||||
### Dashboard Export Layer
|
||||
|
||||
**Files**: `runs/<run_id>/team_dashboard/*.json`
|
||||
|
||||
Reference in New Issue
Block a user