mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-09-14 10:52:17 +03:00
PR #11419 lowered OMNIROUTE_BUILD_WORKERS 8->3 using an INFERRED per-worker peak (WORKER_PEAK_MB=2560) and treated the parent `next build` process's RSS as bounded by OMNIROUTE_BUILD_MEMORY_MB (the V8 heap ceiling). Both assumptions were wrong: the issue owner's own VPS reproduction (dmesg OOM-killer report) measured the real per-process RSS directly at ~4.5 GB, independent of NODE_OPTIONS, since Turbopack compiles in native/Rust memory outside the V8 heap -- and that applies to the parent process too. With OMNIROUTE_BUILD_WORKERS=3 (1 parent + 2 workers), the measured worst case is 3 x 4500MB = 13500MB against a 12288MB (75% of 16GB) budget -- still over, matching the still-live "Publish to Docker Hub" CI failures after #11419 merged (run 32907937950, 2026-08-25). Lowers OMNIROUTE_BUILD_WORKERS to 2 (1 parent + 1 worker = 9000MB, fits with headroom) and re-derives tests/unit/docker-build-memory-budget.test.ts's model on the measured figure, applied uniformly to every process instead of conflating the parent process with the V8 heap ceiling.