Files
foxhunt/services/api_gateway
jgrusewski e047c1eea3 refactor: rename all service crates to kebab-case
Rename 7 service binaries from snake_case to kebab-case to match
K8s deployment names. Update Cargo.toml package/bin names, K8s
manifest S3 paths and commands, and cross-crate dependency keys.

- api_gateway → api-gateway
- trading_service → trading-service
- broker_gateway_service → broker-gateway
- ml_training_service → ml-training-service
- backtesting_service → backtesting-service
- trading_agent_service → trading-agent-service
- data_acquisition_service → data-acquisition-service

broker-gateway gets an explicit [lib] name = "broker_gateway_service"
since its new package name maps to broker_gateway (not the original
broker_gateway_service used in source code). All other services map
correctly with Rust's automatic hyphen-to-underscore conversion.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 22:06:00 +01:00
..

api_gateway

API Gateway service with 6-layer authentication, RBAC, rate limiting, and gRPC proxy routing.

Key Types

  • ApiGatewayService -- main service implementation
  • RoleBasedAccessControl -- RBAC authorization
  • RateLimiter -- 3-tier rate limiting (auth/trading/compute)
  • CircuitBreaker -- upstream service protection

Configuration

  • JWT_SECRET -- JWT signing secret (min 32 chars)
  • UPSTREAM_TRADING_URL -- trading service gRPC endpoint
  • UPSTREAM_ML_URL -- ML service gRPC endpoint

Features

  • mfa (default) -- multi-factor authentication support
  • Build without: cargo check -p api_gateway --no-default-features --features minimal