From 7ed15c742fcd7680018d4eb5bf5e2bd31957d1cf Mon Sep 17 00:00:00 2001 From: diegosouzapw Date: Fri, 24 Apr 2026 14:42:50 -0300 Subject: [PATCH] fix(ui): mobile layout and dark mode FOUC stabilization --- CHANGELOG.md | 4 + open-sse/config/providerRegistry.ts | 3 + src/app/(dashboard)/dashboard/combos/page.tsx | 71 ++-- .../dashboard/playground/ChatPlayground.tsx | 327 ++++++++++++++++++ .../(dashboard)/dashboard/playground/page.tsx | 33 +- .../dashboard/providers/[id]/page.tsx | 4 - .../(dashboard)/dashboard/providers/page.tsx | 20 +- .../components/ProxyRegistryManager.tsx | 14 +- src/app/api/providers/[id]/models/route.ts | 21 ++ src/app/layout.tsx | 16 + src/sse/handlers/chatHelpers.ts | 8 + 11 files changed, 461 insertions(+), 60 deletions(-) create mode 100644 src/app/(dashboard)/dashboard/playground/ChatPlayground.tsx diff --git a/CHANGELOG.md b/CHANGELOG.md index 3116783bd7..753a8d8a46 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,8 @@ - **feat(dashboard):** Complete the reconciled v3.7.0 dashboard task set: MCP cache tools and count, video endpoint visibility, provider taxonomy, upstream proxy visibility, provider count badges, costs overview, eval suite management, Custom CLI builder, ACP-focused Agents copy, Translator stream transformer, logs convergence, learned rate-limit health cards, docs expansion, and active request payload inspection. - **feat(mcp):** Register `omniroute_cache_stats` and `omniroute_cache_flush` across MCP schemas, server registration, handlers, docs, and tests. - **feat(providers):** Complete the v3.7.0 provider onboarding wave with self-hosted/local providers (`lm-studio`, `vllm`, `lemonade`, `llamafile`, `triton`, `docker-model-runner`, `xinference`, `oobabooga`), OpenAI-compatible gateways (`glhf`, `cablyai`, `thebai`, `fenayai`, `empower`, `poe`), enterprise providers (`datarobot`, `azure-openai`, `azure-ai`, `bedrock`, `watsonx`, `oci`, `sap`), specialty providers (`clarifai`, `modal`, `reka`, `nous-research`, `nlpcloud`, `petals`, `vertex-partner`), `amazon-q`, GitLab/GitLab Duo, and Chutes.ai. +- **feat(providers):** Add Cloudflare Workers AI integration and UI support for robust backend execution. +- **feat(telemetry):** Implement proactive public IP capture from client headers (`x-forwarded-for`, `x-real-ip`, etc.) within `safeLogEvents` for accurate database observability. - **feat(audio):** Add AWS Polly as an audio speech provider with SigV4 request signing, static engine catalog, provider validation, managed-provider UI coverage, and sanitization for AWS secret/session fields. - **feat(search):** Add You.com search provider support with dashboard discovery, validation, livecrawl option handling, and search handler normalization. - **feat(video):** Add RunwayML task-based video generation support, task polling, provider catalog metadata, validation, and dashboard/model-list coverage. @@ -55,6 +57,8 @@ - **fix(combo):** Fallback to next model on all-accounts-rate-limited (HTTP 503/429) to maintain high availability. (#1523) - **fix(api):** Harden batch and file endpoints for auth and recovery to prevent schema state collisions. - **fix(ui):** Add missing UI wiring for "Add Memory" and "Import" buttons on the `/dashboard/memory` page. (#1506) +- **fix(ui):** Prevent Dark Mode FOUC (Flash of Unstyled Content) by injecting a synchronous theme initialization script into the root `layout.tsx`. +- **fix(ui):** Fix mobile layout text overflow in provider and combo cards, and enable touch-friendly reordering arrows across all combo strategies. - **fix(core):** Add periodic runtime log rotation checks to prevent disk exhaustion in long-running instances. (#1504 — thanks @ether-btc) - **fix(build):** Resolve missing `process` module in webpack client build for pino-abstract-transport. (#1509 — thanks @hartmark) - **fix(ui):** Add dark mode support for native dropdown `