Release v3.8.31 (#4377)

Release v3.8.31 — see CHANGELOG.md [3.8.31] for full notes and contributors.

Merged over known non-blocking reds (all correctness gates green): Integration Tests (2/2) is env/flaky (polls a real upstream batch that did not complete in the poll window); SonarQube/SonarCloud is the advisory server-side new-code quality gate. Unit (8 shards), Coverage, Node 22/24/26, Lint, PR Test Policy, Quality Ratchet, Docs-Strict, Quality-Extended and all 4 CodeQL analyses are green.
This commit is contained in:
Diego Rodrigues de Sa e Souza
2026-06-20 14:55:24 -03:00
committed by GitHub
parent 3b2a2f02a9
commit d0396c200d
226 changed files with 11990 additions and 1229 deletions

View File

@@ -91,6 +91,8 @@ const nextConfig = {
},
},
output: "standalone",
compress: true,
productionBrowserSourceMaps: false,
// OmniRoute is a proxy for AI APIs — request bodies routinely include
// multi-MB payloads (vision models, image edits, base64-encoded files,
// long chat histories with embedded images). Next.js's Server Action
@@ -108,6 +110,20 @@ const nextConfig = {
// uploads (OpenAI-compatible /v1/files) routinely exceed this. Match the
// 512 MB server-side cap; tune via env if needed.
proxyClientMaxBodySize: process.env.NEXT_PROXY_BODY_LIMIT || "512mb",
// PR-2 of diegosouzapw/OmniRoute#3932: tree-shake barrel re-exports so
// route bundles don't pull in 14 locale files, every lucide-react icon,
// or the full date-fns surface when only one helper is used.
optimizePackageImports: [
"lobehub/icons",
"@lobehub/icons",
"lucide-react",
"date-fns",
"lodash",
"lodash-es",
"material-symbols",
"next-intl",
"@omniroute/open-sse",
],
},
outputFileTracingRoot: projectRoot,
outputFileTracingIncludes: {
@@ -219,6 +235,27 @@ const nextConfig = {
chunks: "all",
priority: 20,
},
// PR-2 of diegosouzapw/OmniRoute#3932: isolate the heavy long-tail
// vendor chunks that only some routes actually need, so dashboard
// pages don't pay for the docs bundle (or vice versa).
nextIntl: {
test: /[\\/]node_modules[\\/]next-intl[\\/]/,
name: "vendor-next-intl",
chunks: "all",
priority: 25,
},
fumadocs: {
test: /[\\/]node_modules[\\/](fumadocs-ui|fumadocs-core|fumadocs-mdx)[\\/]/,
name: "vendor-fumadocs",
chunks: "all",
priority: 20,
},
comboGraph: {
test: /[\\/]node_modules[\\/]@?dagre[\\/]|[\\/]node_modules[\\/]@?elkjs[\\/]/,
name: "vendor-combo-graph",
chunks: "all",
priority: 20,
},
},
};