Performance budgets
A Gomani project declares per-route budgets as part of its source — maximum transferred bytes and shipped/executed JavaScript. The build fails (or emits a CI-blocking hard warning) when a route regresses past its limit. This single mechanism is the framework remembering the budget so you need not.
{
"routes": {
"/": { "maxBytes": 24576, "maxJs": 6144 },
"/blog/[slug]": { "maxBytes": 40960, "maxJs": 8192 }
}
}
Run the gate anywhere:
gomani budget check
The gate reads the build manifest, measures each route's Brotli-compressed output, and exits non-zero on a violation — so a regression is caught at merge time.