scripts/assign-to-workforce.sh (the /assign-to-workforce skill) calls tmp_err="$(mktemp)" in the split-plan path. BSD/macOS mktemp requires an explicit template, and since the script runs under set -euo pipefail, the failing call aborts split-plan before devague plan waves is ever invoked — on exactly the platforms the skill's portability note targets.
Fix applied in reachy-nova's vendored copy (OriNachum/reachy-nova#5, qodo finding):
tmp_err="$(mktemp "${TMPDIR:-/tmp}/assign-to-workforce.XXXXXX")"
An explicit template works identically on GNU and BSD mktemp; the surrounding EXIT-trap capture/restore dance is unaffected. reachy-mini-cli's vendored copy carries the same pattern, so a fix here is worth a re-broadcast to downstream consumers.
Acceptance: bash -n clean and split-plan reaches devague plan waves on a BSD-mktemp system (or with a stub mktemp that rejects templateless calls).
scripts/assign-to-workforce.sh(the /assign-to-workforce skill) callstmp_err="$(mktemp)"in the split-plan path. BSD/macOSmktemprequires an explicit template, and since the script runs underset -euo pipefail, the failing call abortssplit-planbeforedevague plan wavesis ever invoked — on exactly the platforms the skill's portability note targets.Fix applied in reachy-nova's vendored copy (OriNachum/reachy-nova#5, qodo finding):
tmp_err="$(mktemp "${TMPDIR:-/tmp}/assign-to-workforce.XXXXXX")"An explicit template works identically on GNU and BSD mktemp; the surrounding EXIT-trap capture/restore dance is unaffected. reachy-mini-cli's vendored copy carries the same pattern, so a fix here is worth a re-broadcast to downstream consumers.
Acceptance:
bash -nclean andsplit-planreachesdevague plan waveson a BSD-mktemp system (or with a stub mktemp that rejects templateless calls).