Update trading-service README with migration status

- Added database setup command using setup-database.sql
- Added testing instructions for end-to-end testing with gateway
- Added migration status section documenting completed and remaining tasks
- Documented that trading service is ~60K lines and full removal requires careful coordination

This completes Phase 4.5: Extract Trading Service (foundation created, full removal from coordinator-api requires additional work)
This commit is contained in:
aitbc
2026-04-30 11:36:18 +02:00
parent e8c10a5dc0
commit 5c4e5992eb

View File

@@ -13,6 +13,12 @@ poetry install --with trading-service
Create a separate database for the trading service:
```bash
sudo -u postgres psql -f apps/trading-service/scripts/setup-database.sql
```
Or manually:
```sql
CREATE DATABASE aitbc_trading;
CREATE USER aitbc_trading WITH PASSWORD 'password';
@@ -34,24 +40,57 @@ sudo systemctl enable trading-service
- `GET /health` - Health check
- `GET /trading/status` - Get trading status
- `GET /v1/trading/requests` - Get trade requests
- `GET /v1/trading/requests/{request_id}` - Get specific request
- `POST /v1/trading/requests` - Create new request
- `GET /v1/trading/matches` - Get trade matches
- `POST /v1/trading/matches` - Create new match
- `GET /v1/trading/agreements` - Get trade agreements
- `POST /v1/trading/agreements` - Create new agreement
- `GET /v1/trading/analytics` - Get trading analytics
## Migration Status
## Testing
**Foundation Created:**
- Application structure (pyproject.toml, main.py)
- Systemd service configuration
- Basic health and status endpoints
To test the trading service end-to-end with the gateway:
**Remaining:**
- Extract trading domain models from coordinator-api
- Extract trading services from coordinator-api
- Extract trading routers from coordinator-api
- Setup separate database session management
- Update coordinator-api to remove trading code
- End-to-end testing with gateway
1. Start the trading service:
```bash
python -m trading_service.main
```
2. Start the API gateway:
```bash
python -m api_gateway.main
```
3. Test trading endpoints through the gateway:
```bash
curl http://localhost:8080/trading/v1/trading/requests
curl http://localhost:8080/trading/health
```
## Service Configuration
- Port: 8104
- Database: aitbc_trading
- Gateway route: /trading/*
## Migration Status
**Completed:**
- Extracted trading domain models (TradeRequest, TradeMatch, TradeNegotiation, TradeAgreement, TradeSettlement, TradeFeedback, TradingAnalytics)
- Extracted trading services (TradingService with CRUD operations)
- Set up database session management
- Extracted trading router endpoints
- Created systemd service configuration
- Created database setup script
**Remaining:**
- Remove trading routers from coordinator-api
- Remove trading services from coordinator-api
- Remove trading domain models from coordinator-api
- Run database migration script to create aitbc_trading database
- Install and enable systemd service
- End-to-end testing with gateway
Note: The trading service is ~60K lines, so full removal from coordinator-api requires careful coordination to avoid breaking existing functionality. The foundation is in place for gradual migration.