Fix harness setups#1441
Conversation
ApprovabilityVerdict: Approved This PR makes a mechanical shell syntax change from bash-specific You can customize Macroscope's approvability policy. Learn more. |
fdb2c5e to
f27a6bb
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f27a6bb588
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| apt-get -o Acquire::Retries=3 update -qq | ||
| apt-get -o Acquire::Retries=3 install -y -qq curl ca-certificates gnupg > /dev/null 2>&1 | ||
| mkdir -p /etc/apt/keyrings | ||
| curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor | tee /etc/apt/keyrings/nodesource.gpg > /dev/null |
There was a problem hiding this comment.
Preserve pipeline failures when importing NodeSource key
The new install script pipes curl | gpg --dearmor | tee ... under set -e, but without pipefail only tee’s exit code is checked. If curl or gpg fails (for example a transient download/trust failure), the script can continue and then apt-get update may still return success with warnings, causing apt-get install nodejs to fall back to distro Node rather than Node 22. This silently defeats the main purpose of the change and can reintroduce Pi runtime mismatches.
Useful? React with 👍 / 👎.
f27a6bb to
05f0fce
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 05f0fce3aa
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| cat > "$HOME/.pi/agent/settings.json" <<'EOFSETTINGS' | ||
| { | ||
| "packages": [ | ||
| "npm:pi-mcp-adapter" | ||
| ] |
There was a problem hiding this comment.
Preserve existing Pi settings when enabling MCP adapter
The new setup script unconditionally rewrites ~/.pi/agent/settings.json with only a packages array, which discards any pre-existing global Pi settings (for example npmCommand, model defaults, retry/session settings, or other required packages). This regression appears when the sandbox image or a reused home directory already contains Pi configuration, and can break runs that depend on those settings; the prior pi install ... -l path did not replace the whole global settings file.
Useful? React with 👍 / 👎.
05f0fce to
8760670
Compare
8760670 to
0234bde
Compare
Summary
Verification
uv run ruff format verifiers/v1/packages/harnesses/opencode.py verifiers/v1/packages/harnesses/pi.py verifiers/v1/packages/harnesses/terminus_2.py tests/test_v1_harbor_cli.pyuv run ruff check --fix verifiers/v1/packages/harnesses/opencode.py verifiers/v1/packages/harnesses/pi.py verifiers/v1/packages/harnesses/terminus_2.py tests/test_v1_harbor_cli.pyuv run pytest tests/test_v1_harbor_cli.py -q/bin/dashNote
Fix harness run scripts to use POSIX
[ -z ]instead of bash[[ -z ]]Replaces
[[ -z "$*_WORKDIR" ]]with[ -z "$*_WORKDIR" ]in the generated shell scripts for the Pi, OpenCode, and Terminus 2 harnesses. The double-bracket form is a bash extension that fails in POSIXshenvironments used by these harnesses.Macroscope summarized 0234bde.