2026-08-19 20:52:13 -07:00
|
|
|
apiVersion: v1
|
|
|
|
|
kind: ConfigMap
|
|
|
|
|
metadata:
|
|
|
|
|
name: api-gateway-config
|
|
|
|
|
namespace: api
|
|
|
|
|
labels:
|
|
|
|
|
app: api-gateway
|
|
|
|
|
data:
|
|
|
|
|
config.yaml: |
|
|
|
|
|
# Gateway configuration - loaded at startup, never compiled in
|
|
|
|
|
# See REQUIREMENTS.md for full specification
|
|
|
|
|
|
|
|
|
|
# Routes: standard HTTP proxy routes (not LLM-specific)
|
|
|
|
|
# These are for non-LLM services (agent-pod/console, etc.)
|
|
|
|
|
routes: []
|
|
|
|
|
|
|
|
|
|
# Models: LLM model registry for body-based dispatch
|
|
|
|
|
# POST /v1/chat/completions routes based on the "model" field in request JSON
|
|
|
|
|
models:
|
|
|
|
|
- name: "reasoning"
|
|
|
|
|
address: "reasoning-predictor.llm-serving:80"
|
|
|
|
|
path: "/v1/chat/completions"
|
|
|
|
|
|
|
|
|
|
- name: "ornith:35b"
|
|
|
|
|
address: "ornith-predictor.llm-serving:80"
|
|
|
|
|
path: "/v1/chat/completions"
|
|
|
|
|
|
|
|
|
|
- name: "qwen2.5:3b-instruct"
|
|
|
|
|
address: "ornith-predictor.llm-serving:80"
|
|
|
|
|
path: "/v1/chat/completions"
|
|
|
|
|
|
|
|
|
|
- name: "nomic-ai/nomic-embed-text-v2-moe"
|
|
|
|
|
address: "embeddings-predictor.llm-serving:80"
|
|
|
|
|
path: "/v1/embeddings"
|
|
|
|
|
|
|
|
|
|
- name: "BAAI/bge-reranker-base"
|
|
|
|
|
address: "reranker-predictor.llm-serving:80"
|
|
|
|
|
path: "/v1/rerank"
|
2026-08-26 16:39:30 -07:00
|
|
|
|
|
|
|
|
# Service adapters for X-Service header routing
|
|
|
|
|
adapters:
|
|
|
|
|
- serviceName: sqs
|
|
|
|
|
upstream:
|
2026-08-27 09:03:58 -07:00
|
|
|
url: http://management-service.sqs.svc.cluster.local:8080
|
2026-08-26 16:39:30 -07:00
|
|
|
timeoutSeconds: 30
|
|
|
|
|
auth:
|
|
|
|
|
required: false
|
|
|
|
|
resources:
|
|
|
|
|
- name: send-message
|
|
|
|
|
methods:
|
|
|
|
|
- verb: POST
|
|
|
|
|
upstreamPath: /sqs/send
|
|
|
|
|
- name: receive-message
|
|
|
|
|
methods:
|
|
|
|
|
- verb: POST
|
|
|
|
|
upstreamPath: /sqs/receive
|
|
|
|
|
- name: list-queues
|
|
|
|
|
methods:
|
|
|
|
|
- verb: GET
|
|
|
|
|
upstreamPath: /sqs/queues
|
|
|
|
|
|
|
|
|
|
- serviceName: workflow
|
|
|
|
|
upstream:
|
|
|
|
|
url: http://temporal-frontend.temporal.svc.cluster.local:7233
|
|
|
|
|
timeoutSeconds: 60
|
|
|
|
|
auth:
|
|
|
|
|
required: false
|
|
|
|
|
resources:
|
|
|
|
|
- name: execute
|
|
|
|
|
methods:
|
|
|
|
|
- verb: POST
|
|
|
|
|
upstreamPath: /workflow/execute
|
|
|
|
|
- name: describe
|
|
|
|
|
methods:
|
|
|
|
|
- verb: GET
|
|
|
|
|
upstreamPath: /workflow/describe
|
|
|
|
|
- name: list
|
|
|
|
|
methods:
|
|
|
|
|
- verb: GET
|
|
|
|
|
upstreamPath: /workflow/list
|
|
|
|
|
|
|
|
|
|
- serviceName: memory
|
|
|
|
|
upstream:
|
|
|
|
|
url: http://poimen-memory.poimen.svc.cluster.local:8080
|
|
|
|
|
timeoutSeconds: 30
|
|
|
|
|
auth:
|
|
|
|
|
required: true
|
|
|
|
|
capability: "memory:read"
|
|
|
|
|
resources:
|
|
|
|
|
- name: query
|
|
|
|
|
methods:
|
|
|
|
|
- verb: POST
|
|
|
|
|
upstreamPath: /memory/query
|
|
|
|
|
- name: ingest
|
|
|
|
|
methods:
|
|
|
|
|
- verb: POST
|
|
|
|
|
upstreamPath: /memory/ingest
|
|
|
|
|
- name: skills
|
|
|
|
|
methods:
|
|
|
|
|
- verb: GET
|
|
|
|
|
upstreamPath: /memory/skills
|
|
|
|
|
|
|
|
|
|
- serviceName: s3
|
|
|
|
|
upstream:
|
2026-08-27 09:03:58 -07:00
|
|
|
url: http://minio.storage.svc.cluster.local:9000
|
2026-08-26 16:39:30 -07:00
|
|
|
timeoutSeconds: 30
|
|
|
|
|
auth:
|
|
|
|
|
required: false
|
|
|
|
|
resources:
|
|
|
|
|
- name: list-objects
|
|
|
|
|
methods:
|
|
|
|
|
- verb: GET
|
|
|
|
|
upstreamPath: /
|
|
|
|
|
- name: get-object
|
|
|
|
|
methods:
|
|
|
|
|
- verb: GET
|
|
|
|
|
upstreamPath: /
|
|
|
|
|
- name: put-object
|
|
|
|
|
methods:
|
|
|
|
|
- verb: PUT
|
|
|
|
|
upstreamPath: /
|
|
|
|
|
|
|
|
|
|
- serviceName: iam
|
|
|
|
|
upstream:
|
2026-08-27 09:03:58 -07:00
|
|
|
url: http://authentik-server.iam.svc.cluster.local:80
|
2026-08-26 16:39:30 -07:00
|
|
|
timeoutSeconds: 30
|
|
|
|
|
auth:
|
|
|
|
|
required: true
|
|
|
|
|
capability: "iam:admin"
|
|
|
|
|
resources:
|
|
|
|
|
- name: list-roles
|
|
|
|
|
methods:
|
|
|
|
|
- verb: GET
|
|
|
|
|
upstreamPath: /api/v3/roles
|
|
|
|
|
- name: list-users
|
|
|
|
|
methods:
|
|
|
|
|
- verb: GET
|
|
|
|
|
upstreamPath: /api/v3/users
|
|
|
|
|
- name: create-role
|
|
|
|
|
methods:
|
|
|
|
|
- verb: POST
|
|
|
|
|
upstreamPath: /api/v3/roles
|