Skip to content

I4199 — A case that compiles the crate runs alone or caps cargo, so the cases beside it are never starved past their bounds

Run 77_rust_evidence alone (its doc-example and benchmark builds take every core), cap cargo at two jobs and two test threads in the two light compiling cases (76_capabilities_projections, 493_mesh_compaction_keeps_what_is_live), and hold the rule with case 4199: a case whose script runs cargo test, bench or build on a manifest declares '# majordomus-exclusive:' or carries CARGO_BUILD_JOBS on that line.

READY wave 0 · p1 · implementation profile · runs alone

Part of ci-critical-path — The critical path from a change to its verdict, and from a merge to its verified deploy, runs under a minute warm.

Ready. Every dependency is done, so majordomus plan start I4199 will be accepted.

Objective

Run 77_rust_evidence alone (its doc-example and benchmark builds take every core), cap cargo at two jobs and two test threads in the two light compiling cases (76_capabilities_projections, 493_mesh_compaction_keeps_what_is_live), and hold the rule with case 4199: a case whose script runs cargo test, bench or build on a manifest declares '# majordomus-exclusive:' or carries CARGO_BUILD_JOBS on that line.

Why

Train 5 (#2403, d078fb2309e) was red twice on case 431_economics_claims_gated, killed at its 600 s bound (609 s, 608 s). Alone the case takes 51-69 s, its economics code did not change between trains 4 and 5, and the fixture it reads grew 2%. On CI it spent its whole window beside 77_rust_evidence (3434-3905 s of cargo test --doc and cargo bench --no-run) in a shard that runs four cases at a time on a four-core runner. Its time tracked its neighbour, not its own work; raising the bound would hide the starvation.

Current state

Measured on d078fb2309e: test/run.sh runs '# majordomus-exclusive:' cases alone after the parallel phase and nothing else; 77_rust_evidence, 76_capabilities_projections and 493_mesh_compaction_keeps_what_is_live compile with cargo in the parallel phase, uncapped; no rule ties compiling to either remedy. CI durations: 77 3434-3905 s, 76 171-241 s, 493 6-142 s; 431 on train 5's shard 2 overlapped 77 for its entire 609 s.

Desired state

No case compiles the crate in the parallel phase with every core: 77 runs alone and 76 and 493 cap cargo at two jobs, case 4199 refuses any new case that compiles uncapped, and case 431 runs beside light neighbours within its bound.

Scope

  • .ai/repo/project/issues/I4199.yaml
  • test/cases/77_rust_evidence.sh
  • test/cases/76_capabilities_projections.sh
  • test/cases/493_mesh_compaction_keeps_what_is_live.sh
  • test/cases/4199_a_case_that_compiles_never_starves_its_neighbours.sh

Out of scope

  • Raising any case's declared bound
  • The gate model's lanes and tiers

Dependencies

None. This issue is a root of the graph.

Acceptance criteria

  • 77_rust_evidence declares '# majordomus-exclusive:' with its reason
  • 76 and 493 run their cargo test with CARGO_BUILD_JOBS=2 and RUST_TEST_THREADS=2
  • Case 4199 passes on the tree and, on a fixture, flags exactly an uncapped compile while a capped one, an exclusive one and cargo written only as text pass

Validation

  • env -u MAJORDOMUS_SHARE -u MAJORDOMUS_HTTP_HOST -u MJ_ROOT bash test/run.sh 4199_a_case_that_compiles_never_starves_its_neighbours 431_economics_claims_gated
  • majordomus plan validate

Evidence required

  • compiling_cases_run_alone_or_capped
  • case_431_within_its_bound

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I4199.yaml. Read it back with majordomus plan show I4199.

Searches the titles and descriptions of every page this site publishes.