Haiku subagent build under decision 129. Candidate manifest 9ac3a56e names packages/tasks/src/fake.mjs and packages/tasks/tests/tree.test.mjs. Gate and both named mutants ran in Sage's slot. Co-Authored-By: Claude Opus 5.5 <[email protected]>
46 lines
2.2 KiB
Bash
46 lines
2.2 KiB
Bash
#!/bin/bash
|
|
# Row 71 round 1 gate, run from the worktree root (base ac6b56ee5 plus build.patch).
|
|
# Steps chain with && and stop at the first failure. Each child runs through run_group.py,
|
|
# which kills its whole process group on timeout.
|
|
P=agents/researcher/work/queue-71/r1
|
|
OUT=$P/out
|
|
RUN="python3 $P/run_group.py"
|
|
S=$OUT/gate-summary.txt
|
|
mkdir -p "$OUT"
|
|
: > "$S"
|
|
stamp() { date -u +%Y-%m-%dT%H:%M:%SZ; }
|
|
note() { echo "$*" >> "$S"; }
|
|
|
|
# step NAME TIMEOUT_S LOGNAME -- CMD...
|
|
step() {
|
|
local name=$1 t=$2 log=$OUT/$3 rc t0
|
|
shift 3
|
|
shift # the --
|
|
t0=$(stamp)
|
|
$RUN "$t" "$log" "$PWD" -- "$@"
|
|
rc=$?
|
|
note "$name rc=$rc start=$t0 end=$(stamp) $(grep -E '^# (tests|pass|fail|cancelled|skipped|todo) ' "$log" | tr -s ' ' | tr '\n' ' ')"
|
|
[ "$rc" -eq 0 ] || note "$name FAILED; last line: $(grep -v '^\s*$' "$log" | tail -1 | cut -c1-200)"
|
|
return "$rc"
|
|
}
|
|
|
|
note "gate start $(stamp) base $(git rev-parse HEAD)"
|
|
if sha256sum -c "$P/candidate-manifest.sha256" > "$OUT/manifest-check.txt" 2>&1 \
|
|
&& step node-tasks 900 node-tasks.log -- env DOCKER_HOST=unix:///nonexistent.sock node --test --test-reporter=tap 'packages/tasks/tests/*.test.mjs' \
|
|
&& step node-bus 900 node-bus.log -- env DOCKER_HOST=unix:///nonexistent.sock node --test --test-reporter=tap 'packages/bus/tests/*.test.mjs' \
|
|
&& step test-auth 1200 test-auth.log -- env -u DOCKER_HOST bash scripts/test-auth.sh \
|
|
&& step test-conductor 1200 test-conductor.log -- env -u DOCKER_HOST bash scripts/test-conductor.sh \
|
|
&& step test-config 1200 test-config.log -- env -u DOCKER_HOST bash scripts/test-config.sh \
|
|
&& step test-discord 1200 test-discord.log -- env -u DOCKER_HOST bash scripts/test-discord.sh \
|
|
&& step test-extension-package 1200 test-extension-package.log -- env -u DOCKER_HOST bash scripts/test-extension-package.sh \
|
|
&& step test-foundation 1200 test-foundation.log -- env -u DOCKER_HOST bash scripts/test-foundation.sh \
|
|
&& step test-queue 1200 test-queue.log -- env -u DOCKER_HOST bash scripts/test-queue.sh \
|
|
&& step test-release 1200 test-release.log -- env -u DOCKER_HOST bash scripts/test-release.sh \
|
|
&& step test-task 1200 test-task.log -- env DOCKER_HOST=unix:///nonexistent.sock bash scripts/test-task.sh
|
|
then
|
|
note "GATE PASS $(stamp)"
|
|
exit 0
|
|
fi
|
|
note "GATE STOPPED $(stamp)"
|
|
exit 1
|