refactor(errors): normalize user-facing error messages

This commit is contained in:
2026-07-03 13:05:46 +08:00
parent 65d972fbb4
commit 8a71041b5d
7 changed files with 72 additions and 10 deletions
+4 -1
View File
@@ -13,6 +13,7 @@
import { useEffect } from "react";
import Link from "next/link";
import { ExceptionHandler } from "@/core/errors";
import { ROUTES } from "@/router/routes";
import { Logger } from "@/utils";
@@ -29,6 +30,8 @@ export default function GlobalError({ error, unstable_retry }: ErrorProps) {
log.error("[app/error.tsx]", error);
}, [error]);
const errorMessage = ExceptionHandler.message(error, "Unexpected error");
return (
<div className="flex flex-1 flex-col items-center justify-center gap-md p-lg">
<h1
@@ -41,7 +44,7 @@ export default function GlobalError({ error, unstable_retry }: ErrorProps) {
className="max-w-md text-center text-sm"
style={{ color: "var(--color-text-secondary)" }}
>
{error.message || "Unexpected error"}
{errorMessage}
{error.digest ? ` (digest: ${error.digest})` : null}
</p>
<div className="flex gap-sm">