Files
OmniRoute/debug.log
T

1776 lines
84 KiB
Plaintext

TAP version 13
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [CREDENTIALS] No external credentials file found, using defaults.
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [SECURITY] API_KEY_SECRET is not set. API key CRC validation is disabled.
# [DB] Added api_keys.allowed_connections column
# [DB] Added api_keys.auto_resolve column
# [DB] Added api_keys.is_active column
# [DB] Added api_keys.access_schedule column
# [DB] Added api_keys.max_requests_per_day column
# [DB] Added api_keys.max_requests_per_minute column
# [DB] Added api_keys.max_sessions column
# [23:37:04.405] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:04.406] DEBUG: [sse] API Key: sk-m...d970
# module: "sse"
# tag: "AUTH"
# [23:37:04.415] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# 🛡️ [RATE-LIMIT] Loaded 0 explicit + 1 auto-enabled + 0 custom rpm/tpm protection(s)
# [23:37:04.419] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:04.419] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:04.420] INFO: [sse] Using openai account: d92ece8b...
# module: "sse"
# tag: "AUTH"
# [23:37:04.436] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:04.443] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [20:37] 📊 [USAGE] OPENAI | in=4 | out=2 | account=d92ece8b...
# [23:37:04.511] DEBUG: [sse] Stored response for gpt-4o-mini (6 tokens)
# module: "sse"
# tag: "CACHE"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline handles OpenAI passthrough with valid API key auth
ok 1 - chat pipeline handles OpenAI passthrough with valid API key auth
---
duration_ms: 240.858479
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:04.649] INFO: [sse] 📥 POST /v1/chat/completions | claude/claude-3-5-sonnet-20241022 | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | claude/claude-3-5-sonnet-20241022 | 1 msgs"
# [23:37:04.650] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [20:37] 📊 [USAGE] CLAUDE | in=10 | out=4 | account=c5a7d3b2...
# [23:37:04.660] INFO: [sse] Provider: claude, Model: claude-3-5-sonnet-20241022
# module: "sse"
# tag: "ROUTING"
# [23:37:04.661] DEBUG: [sse] claude | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:04.661] DEBUG: [sse] claude | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:04.661] INFO: [sse] Using claude account: c5a7d3b2...
# module: "sse"
# tag: "AUTH"
# [23:37:04.663] DEBUG: [sse] openai → claude | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:04.666] DEBUG: [sse] CLAUDE | claude-3-5-sonnet-20241022 | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:04.672] DEBUG: [sse] Stored response for claude-3-5-sonnet-20241022 (14 tokens)
# module: "sse"
# tag: "CACHE"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline translates OpenAI requests to Claude and returns OpenAI-shaped responses
ok 2 - chat pipeline translates OpenAI requests to Claude and returns OpenAI-shaped responses
---
duration_ms: 153.337563
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:04.800] INFO: [sse] 📥 POST /v1/chat/completions | gemini/gemini-2.5-flash | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | gemini/gemini-2.5-flash | 1 msgs"
# [23:37:04.800] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [20:37] 📊 [USAGE] GEMINI | in=5 | out=7 | account=51322177...
# [23:37:04.803] INFO: [sse] Provider: gemini, Model: gemini-2.5-flash
# module: "sse"
# tag: "ROUTING"
# [23:37:04.804] DEBUG: [sse] gemini | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:04.804] DEBUG: [sse] gemini | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:04.804] INFO: [sse] Using gemini account: 51322177...
# module: "sse"
# tag: "AUTH"
# [23:37:04.806] DEBUG: [sse] openai → gemini | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:04.809] DEBUG: [sse] GEMINI | gemini-2.5-flash | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:04.814] DEBUG: [sse] Stored response for gemini-2.5-flash (12 tokens)
# module: "sse"
# tag: "CACHE"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline translates OpenAI requests to Gemini and returns OpenAI-shaped responses
ok 3 - chat pipeline translates OpenAI requests to Gemini and returns OpenAI-shaped responses
---
duration_ms: 141.730313
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:04.937] INFO: [sse] 📥 POST /v1/messages | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/messages | openai/gpt-4o-mini | 1 msgs"
# [23:37:04.937] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [20:37] 📊 [USAGE] OPENAI | in=4 | out=2 | account=2c7bd399...
# [23:37:04.939] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:04.940] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:04.940] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:04.941] INFO: [sse] Using openai account: 2c7bd399...
# module: "sse"
# tag: "AUTH"
# [23:37:04.942] DEBUG: [sse] claude → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:04.944] DEBUG: [sse] OPENAI | gpt-4o-mini | 2 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:04.947] DEBUG: [sse] Stored response for gpt-4o-mini (6 tokens)
# module: "sse"
# tag: "CACHE"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline translates Claude-format requests into OpenAI upstream and back to Claude
ok 4 - chat pipeline translates Claude-format requests into OpenAI upstream and back to Claude
---
duration_ms: 133.00343
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:05.072] INFO: [sse] 📥 POST /v1/chat/completions | claude/claude-sonnet-4-6 | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | claude/claude-sonnet-4-6 | 1 msgs"
# [23:37:05.072] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [20:37:05] 📊 [USAGE] CLAUDE | in=0 | out=3 | account=5cfec526...
# [20:37:05] 🌊 [STREAM] CLAUDE | claude-sonnet-4-6 | 25ms | complete
# [23:37:05.074] INFO: [sse] Provider: claude, Model: claude-sonnet-4-6
# module: "sse"
# tag: "ROUTING"
# [23:37:05.076] DEBUG: [sse] claude | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:05.076] DEBUG: [sse] claude | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:05.076] INFO: [sse] Using claude account: 5cfec526...
# module: "sse"
# tag: "AUTH"
# [23:37:05.077] DEBUG: [sse] openai → claude | stream=true
# module: "sse"
# tag: "FORMAT"
# [23:37:05.078] DEBUG: [sse] CLAUDE | claude-sonnet-4-6 | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:05.080] DEBUG: [sse] Translation mode: claude → openai
# module: "sse"
# tag: "STREAM"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline converts Claude SSE streams into OpenAI SSE output
ok 5 - chat pipeline converts Claude SSE streams into OpenAI SSE output
---
duration_ms: 153.585214
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [DB] Added api_keys.allowed_connections column
# [DB] Added api_keys.auto_resolve column
# [DB] Added api_keys.is_active column
# [DB] Added api_keys.access_schedule column
# [DB] Added api_keys.max_requests_per_day column
# [DB] Added api_keys.max_requests_per_minute column
# [DB] Added api_keys.max_sessions column
# [23:37:05.229] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:05.230] DEBUG: [sse] API Key: does...xist
# module: "sse"
# tag: "AUTH"
# [23:37:05.239] WARN: [sse] API key not found or invalid (must be created in API Manager)
# module: "sse"
# tag: "AUTH"
# [23:37:05.240] WARN: [sse] Invalid JSON body
# module: "sse"
# tag: "CHAT"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline rejects invalid API keys and malformed JSON bodies
ok 6 - chat pipeline rejects invalid API keys and malformed JSON bodies
---
duration_ms: 137.638739
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:05.338] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:05.338] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [23:37:05.338] WARN: [sse] Missing API key while REQUIRE_API_KEY=true
# module: "sse"
# tag: "AUTH"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline rejects requests without a bearer key when strict API key mode is enabled
ok 7 - chat pipeline rejects requests without a bearer key when strict API key mode is enabled
---
duration_ms: 126.083827
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:05.464] INFO: [sse] 📥 POST /v1/chat/completions | undefined | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | undefined | 1 msgs"
# [23:37:05.464] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [23:37:05.464] WARN: [sse] Missing model
# module: "sse"
# tag: "CHAT"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline returns 400 when the model field is omitted
ok 8 - chat pipeline returns 400 when the model field is omitted
---
duration_ms: 121.287276
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:05.622] DEBUG: [sse] Accept: text/event-stream header → overriding stream=true (body had no stream field)
# module: "sse"
# tag: "STREAM"
# [23:37:05.622] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:05.623] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [20:37:05] 📊 [USAGE] OPENAI | in=2062 | out=6 | account=2cb832e8... (estimated)
# [20:37:05] 🌊 [STREAM] OPENAI | gpt-4o-mini | 8ms | complete
# [23:37:05.626] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:05.628] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:05.628] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:05.628] INFO: [sse] Using openai account: 2cb832e8...
# module: "sse"
# tag: "AUTH"
# [23:37:05.630] DEBUG: [sse] openai → openai | stream=true
# module: "sse"
# tag: "FORMAT"
# [23:37:05.631] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:05.632] DEBUG: [sse] Standard passthrough mode
# module: "sse"
# tag: "STREAM"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline treats Accept text/event-stream as streaming mode and returns a session header
ok 9 - chat pipeline treats Accept text/event-stream as streaming mode and returns a session header
---
duration_ms: 150.696127
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [20:37] 📊 [USAGE] OPENAI | in=4 | out=2 | account=ae22a379...
# [23:37:05.767] INFO: [sse] 📥 POST /v1/chat/completions | local-router | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | local-router | 1 msgs"
# [23:37:05.767] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [23:37:05.768] INFO: [sse] Combo "local-router" [priority] with 1 models
# module: "sse"
# tag: "CHAT"
# [23:37:05.770] INFO: [sse] priority with nested resolution: 1 total models
# module: "sse"
# tag: "COMBO"
# [23:37:05.772] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:05.772] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:05.772] INFO: [sse] Trying model 1/1: openai/gpt-4o-mini
# module: "sse"
# tag: "COMBO"
# [23:37:05.773] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:05.774] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:05.774] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:05.774] INFO: [sse] Using openai account: ae22a379...
# module: "sse"
# tag: "AUTH"
# [23:37:05.776] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:05.776] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:05.780] DEBUG: [sse] Stored response for gpt-4o-mini (6 tokens)
# module: "sse"
# tag: "CACHE"
# [23:37:05.783] INFO: [sse] Model openai/gpt-4o-mini succeeded (12ms, 0 fallbacks)
# module: "sse"
# tag: "COMBO"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline supports local mode without Authorization on explicit combos
ok 10 - chat pipeline supports local mode without Authorization on explicit combos
---
duration_ms: 144.671066
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [DB] Added api_keys.allowed_connections column
# [DB] Added api_keys.auto_resolve column
# [DB] Added api_keys.is_active column
# [DB] Added api_keys.access_schedule column
# [DB] Added api_keys.max_requests_per_day column
# [DB] Added api_keys.max_requests_per_minute column
# [DB] Added api_keys.max_sessions column
# [23:37:05.916] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:05.916] DEBUG: [sse] API Key: sk-m...63cc
# module: "sse"
# tag: "AUTH"
# [20:37] 📊 [USAGE] OPENAI | in=4 | out=2 | account=015388a8...
# [23:37:05.920] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:05.921] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:05.921] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:05.921] INFO: [sse] Using openai account: 015388a8...
# module: "sse"
# tag: "AUTH"
# [23:37:05.922] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:05.923] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:05.929] DEBUG: [sse] Stored response for gpt-4o-mini (6 tokens)
# module: "sse"
# tag: "CACHE"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline honors noLog by redacting persisted call log payloads
ok 11 - chat pipeline honors noLog by redacting persisted call log payloads
---
duration_ms: 175.46898
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:06.057] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:06.057] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [23:37:06.097] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:06.098] DEBUG: [sse] openai | total connections: 0, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:06.098] DEBUG: [sse] openai | all connections (incl inactive): 0
# module: "sse"
# tag: "AUTH"
# [23:37:06.098] WARN: [sse] No credentials for openai
# module: "sse"
# tag: "AUTH"
# [23:37:06.098] ERROR: [sse] No credentials for provider: openai
# module: "sse"
# tag: "AUTH"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline returns current no-credentials contract when no provider connection exists
ok 12 - chat pipeline returns current no-credentials contract when no provider connection exists
---
duration_ms: 139.59565
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:06.226] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:06.226] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [23:37:06.229] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:06.229] WARN: [sse] openai/gpt-4o-mini is in cooldown, rejecting request
# module: "sse"
# tag: "AVAILABILITY"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline returns 503 when the requested model is temporarily unavailable
ok 13 - chat pipeline returns 503 when the requested model is temporarily unavailable
---
duration_ms: 130.400878
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:06.404] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:06.404] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [ERROR] [500]: provider exploded
# ❌ openai [500]: [500]: provider exploded
# [23:37:06.407] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:06.409] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:06.409] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:06.409] INFO: [sse] Using openai account: 5fafd15d...
# module: "sse"
# tag: "AUTH"
# [23:37:06.412] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:06.415] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:06.450] WARN: [sse] Account 5fafd15d... unavailable (500), trying fallback
# module: "sse"
# tag: "AUTH"
# [23:37:06.451] DEBUG: [sse] openai | total connections: 1, excludeId: 5fafd15d-d14e-49d1-8f7a-4c98ffc15b88
# module: "sse"
# tag: "AUTH"
# [23:37:06.451] DEBUG: [sse] openai | available: 0/1
# module: "sse"
# tag: "AUTH"
# [23:37:06.451] DEBUG: [sse] → 5fafd15d | excluded rateLimited until 2026-04-06T23:37:09.447Z
# module: "sse"
# tag: "AUTH"
# [23:37:06.451] WARN: [sse] openai | all 1 active accounts rate limited (reset after 3s) | lastErrorCode=500.0, lastError=[500]: provider exploded
# module: "sse"
# tag: "AUTH"
# [23:37:06.451] WARN: [sse] [openai/gpt-4o-mini] [500]: provider exploded (reset after 3s)
# module: "sse"
# tag: "CHAT"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline surfaces upstream 500 responses as structured errors
ok 14 - chat pipeline surfaces upstream 500 responses as structured errors
---
duration_ms: 221.19967
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:06.624] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:06.624] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [23:37:06.628] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:06.629] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:06.629] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:06.630] INFO: [sse] Using openai account: 520c2927...
# module: "sse"
# tag: "AUTH"
# [23:37:06.632] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:06.633] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:06.635] DEBUG: [sse] 429 intra-retry 1/2 on https://api.openai.com/v1/chat/completions — waiting 0ms
# module: "sse"
# tag: "RETRY"
# [23:37:06.638] DEBUG: [sse] 429 intra-retry 2/2 on https://api.openai.com/v1/chat/completions — waiting 0ms
# module: "sse"
# tag: "RETRY"
# [provider] Node 520c2927-8996-4455-aab8-9bd9b2849476 rate limited (429) - Next available at 2026-04-06T23:37:36.643Z
# [ERROR] [429]: Rate limit exceeded. Your quota will reset after 30s.
# [23:37:06.649] INFO: [sse] 520c2927 terminal status=credits_exhausted, skipping cooldown overwrite
# module: "sse"
# tag: "AUTH"
# [23:37:06.650] WARN: [sse] Account 520c2927... unavailable (429), trying fallback
# module: "sse"
# tag: "AUTH"
# [23:37:06.650] DEBUG: [sse] openai | total connections: 1, excludeId: 520c2927-8996-4455-aab8-9bd9b2849476
# module: "sse"
# tag: "AUTH"
# [23:37:06.651] DEBUG: [sse] openai | available: 0/1
# module: "sse"
# tag: "AUTH"
# [23:37:06.651] DEBUG: [sse] → 520c2927 | excluded rateLimited until 2026-04-06T23:37:36.643Z
# module: "sse"
# tag: "AUTH"
# [23:37:06.651] WARN: [sse] openai | all 1 active accounts rate limited (reset after 30s) | lastErrorCode=429.0, lastError=Rate limit exceeded. Your quota will reset after 3
# module: "sse"
# tag: "AUTH"
# [23:37:06.651] INFO: [sse] openai/gpt-4o-mini marked unavailable — all accounts exhausted (HTTP 429)
# module: "sse"
# tag: "AVAILABILITY"
# [23:37:06.651] WARN: [sse] [openai/gpt-4o-mini] [429]: Rate limit exceeded. Your quota will reset after 30s. (reset after 30s)
# module: "sse"
# tag: "CHAT"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline returns 429 with Retry-After when the upstream rate-limits the only account
ok 15 - chat pipeline returns 429 with Retry-After when the upstream rate-limits the only account
---
duration_ms: 222.318358
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:06.835] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:06.836] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [ERROR] [504]: upstream timed out
# ❌ openai [504]: [504]: upstream timed out
# [23:37:06.838] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:06.839] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:06.839] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:06.839] INFO: [sse] Using openai account: f2cfd6ee...
# module: "sse"
# tag: "AUTH"
# [23:37:06.840] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:06.841] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:06.842] WARN: [sse] Fetch timeout after 600000ms on https://api.openai.com/v1/chat/completions
# module: "sse"
# tag: "TIMEOUT"
# [23:37:06.845] WARN: [sse] Account f2cfd6ee... unavailable (504), trying fallback
# module: "sse"
# tag: "AUTH"
# [23:37:06.845] DEBUG: [sse] openai | total connections: 1, excludeId: f2cfd6ee-5788-445d-95ab-a42c4755c98c
# module: "sse"
# tag: "AUTH"
# [23:37:06.845] DEBUG: [sse] openai | available: 0/1
# module: "sse"
# tag: "AUTH"
# [23:37:06.845] DEBUG: [sse] → f2cfd6ee | excluded rateLimited until 2026-04-06T23:37:09.844Z
# module: "sse"
# tag: "AUTH"
# [23:37:06.845] WARN: [sse] openai | all 1 active accounts rate limited (reset after 3s) | lastErrorCode=504.0, lastError=[504]: upstream timed out
# module: "sse"
# tag: "AUTH"
# [23:37:06.845] WARN: [sse] [openai/gpt-4o-mini] [504]: upstream timed out (reset after 3s)
# module: "sse"
# tag: "CHAT"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline maps upstream timeouts to 504 responses
ok 16 - chat pipeline maps upstream timeouts to 504 responses
---
duration_ms: 169.592617
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [DB] Added api_keys.allowed_connections column
# [DB] Added api_keys.auto_resolve column
# [DB] Added api_keys.is_active column
# [DB] Added api_keys.access_schedule column
# [DB] Added api_keys.max_requests_per_day column
# [DB] Added api_keys.max_requests_per_minute column
# [DB] Added api_keys.max_sessions column
# [23:37:06.978] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:06.978] DEBUG: [sse] API Key: sk-m...b45a
# module: "sse"
# tag: "AUTH"
# [20:37] 📊 [USAGE] OPENAI | in=4 | out=2 | account=10055017...
# [23:37:06.980] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:06.981] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:06.981] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:06.982] INFO: [sse] Using openai account: 10055017...
# module: "sse"
# tag: "AUTH"
# [23:37:06.983] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:06.984] DEBUG: [sse] Injected 1 memories for key=b87f32c4-2259-496c-bea6-e3a84ee2ceeb
# module: "sse"
# tag: "MEMORY"
# [23:37:06.985] DEBUG: [sse] OPENAI | gpt-4o-mini | 2 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:06.991] DEBUG: [sse] Stored response for gpt-4o-mini (6 tokens)
# module: "sse"
# tag: "CACHE"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline injects memory context before sending the upstream request
ok 17 - chat pipeline injects memory context before sending the upstream request
---
duration_ms: 146.457203
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [DB] Added api_keys.allowed_connections column
# [DB] Added api_keys.auto_resolve column
# [DB] Added api_keys.is_active column
# [DB] Added api_keys.access_schedule column
# [DB] Added api_keys.max_requests_per_day column
# [DB] Added api_keys.max_requests_per_minute column
# [DB] Added api_keys.max_sessions column
# [23:37:07.121] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:07.121] DEBUG: [sse] API Key: sk-m...e321
# module: "sse"
# tag: "AUTH"
# [20:37] 📊 [USAGE] OPENAI | in=6 | out=4 | account=d2c071f5...
# [23:37:07.123] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:07.124] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:07.124] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:07.124] INFO: [sse] Using openai account: d2c071f5...
# module: "sse"
# tag: "AUTH"
# [23:37:07.125] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:07.126] DEBUG: [sse] Injected 1 skills
# module: "sse"
# tag: "SKILLS"
# [23:37:07.128] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:07.136] DEBUG: [sse] Stored response for gpt-4o-mini (10 tokens)
# module: "sse"
# tag: "CACHE"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline injects skills into tools and intercepts tool calls with skill output
ok 18 - chat pipeline injects skills into tools and intercepts tool calls with skill output
---
duration_ms: 143.886786
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:07.253] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:07.253] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [ERROR] [500]: first account failed
# ❌ openai [500]: [500]: first account failed
# [20:37] 📊 [USAGE] OPENAI | in=4 | out=2 | account=f16327df...
# [23:37:07.255] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:07.255] DEBUG: [sse] openai | total connections: 2, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:07.255] DEBUG: [sse] openai | available: 2/2
# module: "sse"
# tag: "AUTH"
# [23:37:07.256] INFO: [sse] Using openai account: dce45848...
# module: "sse"
# tag: "AUTH"
# [23:37:07.257] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:07.257] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:07.262] WARN: [sse] Account dce45848... unavailable (500), trying fallback
# module: "sse"
# tag: "AUTH"
# [23:37:07.263] DEBUG: [sse] openai | total connections: 2, excludeId: dce45848-4780-4192-afd1-e53ca9b89c71
# module: "sse"
# tag: "AUTH"
# [23:37:07.263] DEBUG: [sse] openai | available: 1/2
# module: "sse"
# tag: "AUTH"
# [23:37:07.263] DEBUG: [sse] → dce45848 | excluded rateLimited until 2026-04-06T23:37:10.261Z
# module: "sse"
# tag: "AUTH"
# [23:37:07.263] INFO: [sse] Using openai account: f16327df...
# module: "sse"
# tag: "AUTH"
# [23:37:07.264] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:07.264] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:07.267] DEBUG: [sse] Stored response for gpt-4o-mini (6 tokens)
# module: "sse"
# tag: "CACHE"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline falls back to the next account after a provider failure
ok 19 - chat pipeline falls back to the next account after a provider failure
---
duration_ms: 131.562397
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [ERROR] [503]: openai combo miss
# ❌ openai [503]: [503]: openai combo miss
# [23:37:07.383] INFO: [sse] 📥 POST /v1/chat/completions | combo-fallback | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | combo-fallback | 1 msgs"
# [23:37:07.383] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [23:37:07.383] INFO: [sse] Combo "combo-fallback" [priority] with 2 models
# module: "sse"
# tag: "CHAT"
# [23:37:07.384] INFO: [sse] priority with nested resolution: 2 total models
# module: "sse"
# tag: "COMBO"
# [23:37:07.385] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:07.385] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:07.385] INFO: [sse] Trying model 1/2: openai/gpt-4o-mini
# module: "sse"
# tag: "COMBO"
# [23:37:07.386] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:07.386] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:07.386] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:07.386] INFO: [sse] Using openai account: 4c323792...
# module: "sse"
# tag: "AUTH"
# [23:37:07.387] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:07.388] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:07.395] WARN: [sse] Account 4c323792... unavailable (503), trying fallback
# module: "sse"
# tag: "AUTH"
# [23:37:07.395] DEBUG: [sse] openai | total connections: 1, excludeId: 4c323792-707c-4d82-b957-1d5e8da61b5c
# module: "sse"
# tag: "AUTH"
# [23:37:07.395] DEBUG: [sse] openai | available: 0/1
# module: "sse"
# tag: "AUTH"
# [23:37:07.395] DEBUG: [sse] → 4c323792 | excluded rateLimited until 2026-04-06T23:37:10.394Z
# module: "sse"
# tag: "AUTH"
# [23:37:07.395] WARN: [sse] openai | all 1 active accounts rate limited (reset after 3s) | lastErrorCode=503.0, lastError=[503]: openai combo miss
# module: "sse"
# tag: "AUTH"
# [23:37:07.395] INFO: [sse] openai/gpt-4o-mini marked unavailable — all accounts exhausted (HTTP 503)
# module: "sse"
# tag: "AVAILABILITY"
# [23:37:07.395] WARN: [sse] [openai/gpt-4o-mini] [503]: openai combo miss (reset after 3s)
# module: "sse"
# tag: "CHAT"
# [23:37:07.396] WARN: [sse] Model openai/gpt-4o-mini failed, trying next
# module: "sse"
# tag: "COMBO"
# status: 503
# [23:37:07.396] INFO: [sse] Waiting 3000ms before fallback to next model
# module: "sse"
# tag: "COMBO"
# [20:37] 📊 [USAGE] CLAUDE | in=10 | out=4 | account=0c1621a2...
# [23:37:10.400] DEBUG: [sse] claude | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:10.400] DEBUG: [sse] claude | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:10.400] INFO: [sse] Trying model 2/2: claude/claude-3-5-sonnet-20241022
# module: "sse"
# tag: "COMBO"
# [23:37:10.401] INFO: [sse] Provider: claude, Model: claude-3-5-sonnet-20241022
# module: "sse"
# tag: "ROUTING"
# [23:37:10.402] DEBUG: [sse] claude | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:10.402] DEBUG: [sse] claude | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:10.402] INFO: [sse] Using claude account: 0c1621a2...
# module: "sse"
# tag: "AUTH"
# [23:37:10.404] DEBUG: [sse] openai → claude | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:10.405] DEBUG: [sse] CLAUDE | claude-3-5-sonnet-20241022 | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:10.409] DEBUG: [sse] Stored response for claude-3-5-sonnet-20241022 (14 tokens)
# module: "sse"
# tag: "CACHE"
# [23:37:10.411] INFO: [sse] Model claude/claude-3-5-sonnet-20241022 succeeded (3027ms, 0 fallbacks)
# module: "sse"
# tag: "COMBO"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# Subtest: chat pipeline falls back across combo models when the first provider fails
ok 20 - chat pipeline falls back across combo models when the first provider fails
---
duration_ms: 3215.387755
type: 'test'
...
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [23:37:10.671] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:10.671] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [23:37:10.672] INFO: [sse] 📥 POST /v1/chat/completions | openai/gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "HTTP"
# method: "POST"
# path: "/v1/chat/completions | openai/gpt-4o-mini | 1 msgs"
# [23:37:10.672] DEBUG: [sse] No API key provided (local mode)
# module: "sse"
# tag: "AUTH"
# [23:37:10.674] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:10.675] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:10.675] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:10.675] INFO: [sse] Using openai account: 32de68a2...
# module: "sse"
# tag: "AUTH"
# [23:37:10.677] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:10.678] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [23:37:10.679] INFO: [sse] Provider: openai, Model: gpt-4o-mini
# module: "sse"
# tag: "ROUTING"
# [23:37:10.680] DEBUG: [sse] openai | total connections: 1, excludeId: none
# module: "sse"
# tag: "AUTH"
# [23:37:10.680] DEBUG: [sse] openai | available: 1/1
# module: "sse"
# tag: "AUTH"
# [23:37:10.680] INFO: [sse] Using openai account: 32de68a2...
# module: "sse"
# tag: "AUTH"
# [23:37:10.681] DEBUG: [sse] openai → openai | stream=false
# module: "sse"
# tag: "FORMAT"
# [23:37:10.682] DEBUG: [sse] OPENAI | gpt-4o-mini | 1 msgs
# module: "sse"
# tag: "REQUEST"
# [20:37] 📊 [USAGE] OPENAI | in=4 | out=2 | account=32de68a2...
# [20:37] 📊 [USAGE] OPENAI | in=4 | out=2 | account=32de68a2...
# [23:37:10.704] DEBUG: [sse] Joined in-flight request hash=f467c6e15f3cb6e2
# module: "sse"
# tag: "DEDUP"
# [23:37:10.707] DEBUG: [sse] Stored response for gpt-4o-mini (6 tokens)
# module: "sse"
# tag: "CACHE"
# [23:37:10.709] DEBUG: [sse] Stored response for gpt-4o-mini (6 tokens)
# module: "sse"
# tag: "CACHE"
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# [Migration] Applied: 002_mcp_a2a_tables
# [Migration] Applied: 003_provider_node_custom_paths
# [Migration] Applied: 004_proxy_registry
# [Migration] Applied: 005_combo_agent_fields
# [Migration] Applied: 006_detailed_request_logs
# [Migration] Applied: 007_search_request_type
# [Migration] Applied: 008_registered_keys
# [Migration] Applied: 009_requested_model
# [Migration] Applied: 010_model_combo_mappings
# [Migration] Applied: 011_webhooks
# [Migration] Applied: 012_fix_token_input_cache_tokens
# [Migration] Applied: 013_quota_snapshots
# [Migration] Applied: 014_unified_log_artifacts
# [Migration] Applied: 015_create_memories
# [Migration] Applied: 016_create_skills
# [Migration] Applied: 017_version_manager_upstream_proxy
# [Migration] 16 migration(s) applied successfully.
# [DB] SQLite database ready: /tmp/omniroute-chat-pipeline-jTKNWy/storage.sqlite
# [DB] SQLite WAL checkpoint completed (TRUNCATE).
# Subtest: chat pipeline deduplicates concurrent identical non-stream requests
ok 21 - chat pipeline deduplicates concurrent identical non-stream requests
---
duration_ms: 227.367687
type: 'test'
...
# ACTIVE HANDLES: 2
# Handle 0: Socket
# Socket _peername: undefined
# Socket remoteAddress: undefined
# Handle 1: Socket
# Socket _peername: undefined
# Socket remoteAddress: undefined
# WAITING UNTIL EVERYTHING CLEARS...
1..21
# tests 21
# suites 0
# pass 21
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 36094.10465