Files
OmniRoute/docker-compose.yml.bak
Erick Kinnee 6bbff5eac9 fix(translator): guard against double-emission for incrementally-streamed tool calls
Add a guard that skips response.completed synthesis for call_ids already
tracked via incremental output_item.added/.done events. Without this,
providers that stream incrementally AND echo function_call items in the
response.completed output[] snapshot get duplicate tool call chunks.

Also adds a regression test combining both incremental events and a
response.completed snapshot in the same turn.

Refs: diegosouzapw/OmniRoute#7613
2026-07-17 21:52:20 +00:00

60 lines
1.5 KiB
YAML

services:
redis:
image: docker.io/library/redis:7-alpine
container_name: omniroute-redis
restart: unless-stopped
networks:
- dockernet
volumes:
- redis-data:/data
command: redis-server --save 60 1 --loglevel warning
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 3
omniroute:
image: diegosouzapw/omniroute:latest
container_name: omniroute
restart: unless-stopped
stop_grace_period: 40s
networks:
- dockernet
depends_on:
redis:
condition: service_healthy
environment:
- JWT_SECRET=6E1dyjMlUIZzIMvN5sH+3/dEzgm99HpxLKtjcAzFg1m3x17wZyF31U2i6rlYJZaF
- API_KEY_SECRET=3b6888cbf398a151972f193402cd193caba6ce926f20040537b82c5efcbcf964
- INITIAL_PASSWORD=CHANGEME
- DATA_DIR=/app/data
- REDIS_URL=redis://redis:6379
- PORT=20128
- NODE_ENV=production
- CONTAINER_HOST=docker
- AUTH_COOKIE_SECURE=false
- ALLOW_API_KEY_REVEAL=true
- OMNIROUTE_ALLOW_PRIVATE_PROVIDER_URLS=true
- OMNIROUTE_ALLOW_LOCAL_PROVIDER_URLS=true
- BASE_URL=http://omniroute:20128
- NEXT_PUBLIC_BASE_URL=http://omniroute:20128
volumes:
- omniroute-data:/app/data
healthcheck:
test: ["CMD", "node", "healthcheck.mjs"]
interval: 30s
timeout: 5s
retries: 3
start_period: 15s
networks:
dockernet:
external: true
volumes:
redis-data:
name: omniroute-redis-data
omniroute-data:
name: omniroute-data