diff --git a/flake.nix b/flake.nix index 4a5b5039eb3..35cce191e95 100644 --- a/flake.nix +++ b/flake.nix @@ -673,6 +673,14 @@ if [ -x "$shim" ]; then export PATH="$(dirname "$shim"):$PATH" fi + + # Each nested shell (direnv, then `nix develop`, then another + # inside a gate) prepends this shell's ~160 store paths again, + # about 10 KB. mbx copies PATH into two variables at ~3.6 times + # its size, and Linux rejects any one variable over 128 KiB, so + # four nested shells failed every Cargo launch with E2BIG. Keep + # each directory's first entry only: lookups resolve as before. + PATH=$(printf '%s' "$PATH" | awk -v RS=: '!seen[$0]++ { printf "%s%s", sep, $0; sep = ":" }') ''; env = { diff --git a/quest/m0/ci/README.md b/quest/m0/ci/README.md index d7a6897dee1..eac73276287 100644 --- a/quest/m0/ci/README.md +++ b/quest/m0/ci/README.md @@ -168,4 +168,3 @@ The historical samples locate candidates; they are not controlled benchmarks. - [The next test-CPU cuts](/quest/m0/ci/test-cost-followups.md) - the slow-test leftovers from #6987, cut at their source - [Biome checks every file it can parse](/quest/m0/ci/biome-whole-repo.md) - Biome runs over the whole repository and main is clean under it - [dispatch.sh's tests pass without KVM](/quest/m0/ci/dispatch-test-kvm.md) - `sh/dispatch-query.test.py` fakes the KVM probe instead of failing 20 tests on hosts without `/dev/kvm` -- [mbx launches Cargo with any argument length](/quest/m0/ci/mbx-arg-max.md) - no "Argument list too long" in `sh/rs/select.test.py`'s recipe test diff --git a/quest/m0/ci/mbx-arg-max.md b/quest/m0/ci/mbx-arg-max.md deleted file mode 100644 index 294ea2d6cf9..00000000000 --- a/quest/m0/ci/mbx-arg-max.md +++ /dev/null @@ -1,21 +0,0 @@ -# [S] mbx launches Cargo with any argument length - -## Goal - -mbx launches Cargo however long its argument list or environment is, and -`RecipeTest.test_unexecuted_bench_is_not_compiled` (`sh/rs/select.test.py`) -passes in `just ci`. - -## Plan - -Planned 2026-11-01 (maintainer, follow-up planning). A `just ci` run during -[moq-dev/moq#7567](https://github.com/moq-dev/moq/pull/7567) failed in that -test, because mbx couldn't launch Cargo: "Argument list too long" (`E2BIG`). - -- First find which part goes over the limit: the argv, or the environment - the test passes (`os.environ` plus its overrides). -- Then fix it at the cause, for example by passing long lists through a file - or by trimming what mbx forwards, rather than skipping the test. -- If the limit is hit inside mbx itself rather than in this repository's - wrapper, the fix belongs upstream, and this quest pins the release that - carries it.