diff --git a/changelog.d/fixes/8233-codex-dashboard-regressions.md b/changelog.d/fixes/8233-codex-dashboard-regressions.md
new file mode 100644
index 00000000000..831e86088ff
--- /dev/null
+++ b/changelog.d/fixes/8233-codex-dashboard-regressions.md
@@ -0,0 +1 @@
+- **fix(dashboard):** Normalize Codex client URLs, restore the analytics input-bar color, resolve OAuth modal TypeScript regressions, synchronize the documented compression-engine count, and sanitize Muse Spark fetch errors ([#8233](https://github.com/diegosouzapw/OmniRoute/pull/8233)) — thanks @nguyenha935
diff --git a/open-sse/executors/muse-spark-web.ts b/open-sse/executors/muse-spark-web.ts
index 8893e08fd3c..fb5b00277b7 100644
--- a/open-sse/executors/muse-spark-web.ts
+++ b/open-sse/executors/muse-spark-web.ts
@@ -5,6 +5,7 @@ import WebSocket from "ws";
import { BaseExecutor, mergeUpstreamExtraHeaders, type ExecuteInput } from "./base.ts";
import { getRotatingApiKey } from "../services/apiKeyRotator.ts";
import { prepareToolMessages, buildToolAwareResult } from "../translator/webTools.ts";
+import { sanitizeErrorMessage } from "../utils/error.ts";
import {
normalizeSessionCookieHeader,
normalizeSessionCookieHeaders,
@@ -12,9 +13,8 @@ import {
import { type ParsedMetaAiResponse, isRecord } from "./muse-spark-web/response-parser.ts";
const META_AI_GRAPHQL_API = "https://www.meta.ai/api/graphql";
-// Meta rebranded the chat product from "Abra" to "Ecto"; the session cookie
-// `abra_sess` was replaced by `ecto_1_sess`. `normalizeSessionCookieHeader`
-// only uses this constant when the user pastes a bare cookie value with no
+// Meta rebranded "Abra" to "Ecto"; `abra_sess` became `ecto_1_sess`.
+// `normalizeSessionCookieHeader` only uses this constant for bare values with no
// `name=` prefix; full cookie lines (with any cookie names) pass through
// untouched, so users who paste their entire DevTools cookie line still work.
const META_AI_DEFAULT_COOKIE = "ecto_1_sess";
@@ -522,7 +522,7 @@ function buildErrorResponse(status: number, message: string, code?: string | nul
return new Response(
JSON.stringify({
error: {
- message,
+ message: sanitizeErrorMessage(message),
type: "upstream_error",
...(code ? { code } : {}),
},
diff --git a/src/shared/components/OAuthModal.tsx b/src/shared/components/OAuthModal.tsx
index a925c16a9da..7b54f927aa4 100644
--- a/src/shared/components/OAuthModal.tsx
+++ b/src/shared/components/OAuthModal.tsx
@@ -274,7 +274,7 @@ export default function OAuthModal({
let token: string | Record = raw;
if (provider === "grok-cli") {
const parsed = parseGrokCliPasteToken(raw);
- if (!parsed.ok) {
+ if (parsed.ok === false) {
setError(parsed.error);
return;
}
@@ -1084,7 +1084,7 @@ export default function OAuthModal({
-