You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Doctor probe 3 and probe 5 redirect to /tmp, falsely failing in read-only sandbox #1775
probe-3-container-gateway.sh and probe-5-signing-key.sh redirect command output to ${TMPDIR:-/tmp}/.... Because /tmp is mounted read-only inside the doctor's execution sandbox, the file redirection fails with exit code 1 (Read-only file system), causing the probes to abort early and report false failures even when the signing key is readable or container runtimes are functional.
Run the doctor probe scripts inside a sandboxed environment where /tmp is read-only:
For probe-5-signing-key.sh:
Line 28 executes:
head -c 1 "$key">/dev/null 2>"${TMPDIR:-/tmp}/signing-key.err"
When ${TMPDIR:-/tmp} is read-only, the redirection fails with bash: /tmp/signing-key.err: Read-only file system (exit status 1), and the probe reports a false failure (PROBE: signing-key → ✗ ...).
For probe-3-container-gateway.sh:
Line 103 executes:
_probe_timeout 15 "$rt" info > /dev/null 2>"${TMPDIR:-/tmp}/$rt-probe.err"
The redirection fails with exit code 1 on read-only /tmp, reporting false failure even when the container daemon is reachable.
Expected vs actual
Expected: Probes hold command output in memory variables and write no files under /tmp.
As documented in plugins/magpie-setup/skills/isolated-setup-doctor/scripts/README.md:
"Hold a command's output in a variable, not a file: /tmp is read-only inside the sandbox, and a failed redirection skips the command and exits 1, which a probe reading exit codes takes for the command's own answer. Probe 1 once passed every agent that way. Add a test under ../tests/ that runs the script against a fake binary."
Activity