adv-mixer-3: yield to v5 gate and v5 kit waiters before every lease

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
igneum-labs 2026-10-07 19:26:29 +00:00
parent 5e2d3df40e
commit 3ecf559e3c
3 changed files with 14 additions and 4 deletions

View file

@ -6,8 +6,11 @@ set -uo pipefail
X=/srv/builds/_adv-mixer-3/bin/adv-mixer-3; X2=$X-v2; L=/srv/builds/_adv-mixer-3/logs; C=/srv/builds/_adv-mixer-3/cnf; S=$HOME/adv-mixer-3-tools/cadical/build/cadical
T=${THREADS:-48}
# the lease hands the command the cores it took: {cores} is the count, so every harness run sizes its threads from it
lease() { /srv/builds/_bin/lease pool "$T" --min 16 --label "adv-mixer-3 $1" --owner adv-mixer-3 -- "${@:2}"; }
lease1() { /srv/builds/_bin/lease pool 1 --min 1 --label "adv-mixer-3 $1" --owner adv-mixer-3 -- "${@:2}"; }
# main's pool rule (19:2x UTC): the release builds and the class v5 suites outrank every sweep; while a waiter labelled
# "v5 gate" or "v5 kit" is in the lease queue, no adversarial lease competes: finish the shard in hand, then wait here.
yield_v5() { while /srv/builds/_bin/lease status 2>/dev/null | sed -n '/^waiting/,$p' | grep -qiE "v5 gate|v5 kit"; do sleep 30; done; }
lease() { yield_v5; /srv/builds/_bin/lease pool "$T" --min 16 --label "adv-mixer-3 $1" --owner adv-mixer-3 -- "${@:2}"; }
lease1() { yield_v5; /srv/builds/_bin/lease pool 1 --min 1 --label "adv-mixer-3 $1" --owner adv-mixer-3 -- "${@:2}"; }
echo "start $(hostname) $(date -u +%FT%TZ) lease pool up to $T cores, min 16"
for k in 5 6 7 8; do echo "== sac day 20729 k=$k $(date -u +%FT%TZ)"; lease "sac 20729 k$k" $X sac --day 20729 --apps $k --states 2^24 --threads {cores} > "$L/sac-20729-k$k.log" 2>&1; grep -E 'holes=|verdict' "$L/sac-20729-k$k.log"; done
for k in 5 6 7 8; do echo "== sac day 20733 k=$k $(date -u +%FT%TZ)"; lease "sac 20733 k$k" $X sac --day 20733 --apps $k --states 2^24 --threads {cores} > "$L/sac-20733-k$k.log" 2>&1; grep -E 'holes=|verdict' "$L/sac-20733-k$k.log"; done

View file

@ -6,8 +6,11 @@ set -uo pipefail
X=/srv/builds/_adv-mixer-3/bin/adv-mixer-3; X2=$X-v2; L=/srv/builds/_adv-mixer-3/logs; C=/srv/builds/_adv-mixer-3/cnf; S=$HOME/adv-mixer-3-tools/cadical/build/cadical
T=${THREADS:-48}
# the lease hands the command the cores it took: {cores} is the count, so every harness run sizes its threads from it
lease() { /srv/builds/_bin/lease pool "$T" --min 16 --label "adv-mixer-3 $1" --owner adv-mixer-3 -- "${@:2}"; }
lease1() { /srv/builds/_bin/lease pool 1 --min 1 --label "adv-mixer-3 $1" --owner adv-mixer-3 -- "${@:2}"; }
# main's pool rule (19:2x UTC): the release builds and the class v5 suites outrank every sweep; while a waiter labelled
# "v5 gate" or "v5 kit" is in the lease queue, no adversarial lease competes: finish the shard in hand, then wait here.
yield_v5() { while /srv/builds/_bin/lease status 2>/dev/null | sed -n '/^waiting/,$p' | grep -qiE "v5 gate|v5 kit"; do sleep 30; done; }
lease() { yield_v5; /srv/builds/_bin/lease pool "$T" --min 16 --label "adv-mixer-3 $1" --owner adv-mixer-3 -- "${@:2}"; }
lease1() { yield_v5; /srv/builds/_bin/lease pool 1 --min 1 --label "adv-mixer-3 $1" --owner adv-mixer-3 -- "${@:2}"; }
echo "start $(hostname) $(date -u +%FT%TZ) lease pool up to $T cores, min 16"
for d in 20729 20733; do for k in 2 3 4; do
[ $d = 20729 ] && [ $k = 1 ] && continue

View file

@ -5,4 +5,8 @@
# Usage: x-lock.sh [v2] <label> <args to adv-mixer-3, with --threads {cores}>
B=/srv/builds/_adv-mixer-3/bin/adv-mixer-3; if [ "${1:-}" = v2 ]; then B=$B-v2; shift; fi
LABEL="$1"; shift
# main's pool rule (19:2x UTC): the release builds and the class v5 suites outrank every sweep; while a waiter labelled
# "v5 gate" or "v5 kit" is in the lease queue, no adversarial lease competes: finish the shard in hand, then wait here.
yield_v5() { while /srv/builds/_bin/lease status 2>/dev/null | sed -n '/^waiting/,$p' | grep -qiE "v5 gate|v5 kit"; do sleep 30; done; }
yield_v5
exec /srv/builds/_bin/lease pool "${THREADS:-48}" --min 16 --label "adv-mixer-3 $LABEL" --owner adv-mixer-3 -- "$B" "$@"