2.5 KiB
Locale-only Jobs and Trash reads
Bounded PERF-08/PERF-13 and I18N-02 work on codex/perf-jobs-locale-read, based on 4c12f7691ff5e73f537135ffed60c0b599c7ce37. The same Jobs read dependency on translated text was present in the inspected A3 branch.
Changing the UI language used to reload the same application-list query. The resource loader now tracks data inputs only. The existing error notice renders the current-language title and retains available server details. The shared resource and session hooks, query parameters, retry, data refresh and mutation paths remain intact. This change applies to Jobs and Trash. It does not affect saved language preference writes.
The three focused assertions reproduced the redundant request before the fix. Afterwards 34 tests passed across JobTable, Offer Comparison, Jobs view and the I18n provider. The tests cover already-loaded mobile salaries and current Jobs and Trash errors switching to Bokmål, followed by an explicit retry of the same query. Full frontend typecheck, scoped ESLint with zero warnings and the Next static export passed.
Isolated browser measurement
Chromium 151.0.7922.34, 1366 × 900, fresh browser context per route, local Next 16.4.1/Turbopack static export, no throttle. Loopback serving disables HTTP caching. Requests to external hosts were blocked. Route interception supplied synthetic API responses, including 15 synthetic application rows and a fixture session. Resource Timing identified loaded JavaScript and CSS. The table reports file byte sizes and offline gzip-6 estimates, excluding HTTP headers and runtime-generated styles.
| Route | JS files before → after | Raw JS bytes before → after | Estimated gzip-6 JS bytes before → after |
|---|---|---|---|
| Landing | 18 → 18 | 2,005,036 → 2,005,009 | 591,192 → 591,190 |
| Login | 18 → 18 | 2,005,036 → 2,005,009 | 591,192 → 591,190 |
| Jobs | 20 → 20 | 2,033,779 → 2,033,752 | 601,065 → 601,063 |
All three routes reached their content marker and reported no page errors in both runs. Each loaded one 293-byte CSS file. Jobs made one initial paginated GET in both runs. After switching from English to Bokmål via the storage event, the paginated GET count changed from one extra request to zero. The initial Jobs fetch, authentication and other startup requests still occurred. Timing samples were single unthrottled loopback observations, so this checkpoint claims no latency or Web Vitals improvement. Native device, A3 integration and release qualification remain open.