Просмотр исходного кода

fix(skills): ff-spawn GLM effort lever - env-prefix expansion is not an assignment

${EFFORT:+FLEET_WORKER_EFFORT="$EFFORT"} expands after bash parses assignment
prefixes, so the expanded word execs as a command (rc 127) whenever --effort
is passed to a glm lane. Prefix the block with env(1) so expanded NAME=val
words are env arguments. Found live: chronos-v1 v-asana refuter lane.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
0xDarkMatter 2 месяцев назад
Родитель
Сommit
fb77ea6d29
1 измененных файлов с 4 добавлено и 1 удалено
  1. 4 1
      skills/fleetflow/scripts/ff-spawn.sh

+ 4 - 1
skills/fleetflow/scripts/ff-spawn.sh

@@ -219,8 +219,11 @@ else
     glm)
       FW="${FLEETFLOW_FLEET_WORKER:-$HOME/.claude/skills/fleet-worker/scripts/fleet-worker}"
       [ -f "$FW" ] || { err "fleet-worker launcher not found ($FW)"; exit 5; }
+      # env(1) carries the assignments: a ${VAR:+NAME=val} expansion is NOT an
+      # assignment prefix (bash parses prefixes before expansion), so without
+      # env the expanded NAME=val word execs as a command -> rc 127.
       ( cd "$WORKDIR" && \
-        FLEET_WORKER_CONFIG_DIR="$CFGD" \
+        env FLEET_WORKER_CONFIG_DIR="$CFGD" \
         UV_CACHE_DIR="$CACHE_DIR" TMPDIR="$CACHE_DIR" TMP="$CACHE_DIR" TEMP="$CACHE_DIR" \
         ${EFFORT:+FLEET_WORKER_EFFORT="$EFFORT"} \
         bash "$FW" --output-format json --max-turns "$MAX_TURNS" "$(cat "$SENT")" \