Browse Source

fix(skills): commit exec bits on 70 skill scripts; exec via bash in ff-run

CI-only failure 'ff-run status != ff-status': ff-run.sh exec'd its
sibling ff-status.sh directly, which needs the executable bit on
Linux — but every skill script was committed 100644. Git Bash fakes
file modes, so local suites stayed green (the inverse of the usual
'local gates lie'). Sets +x on all 70 committed sh/py/mjs skill
scripts via update-index --chmod=+x, and hardens the one direct-exec
callsite to exec THROUGH bash so mode-dropping installs (zip) keep
working. A CI gate asserting exec bits lands with the quality wave.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
0xDarkMatter 14 hours ago
parent
commit
e97dd07af1
2 changed files with 5 additions and 3 deletions
  1. 5 3
      skills/adr-ops/scripts/adr-index.sh
  2. 0 0
      skills/fleetflow/scripts/ff-spawn.sh

+ 5 - 3
skills/adr-ops/scripts/adr-index.sh

@@ -61,10 +61,12 @@ command -v git >/dev/null || { err "git required"; exit 2; }
 [ -n "$REPO" ] || REPO="$(git rev-parse --show-toplevel 2>/dev/null)" || true
 [ -n "$REPO" ] || REPO="$(git rev-parse --show-toplevel 2>/dev/null)" || true
 [ -n "$REPO" ] && [ -d "$REPO" ] || { err "not in a git repo (or --repo invalid)"; exit 2; }
 [ -n "$REPO" ] && [ -d "$REPO" ] || { err "not in a git repo (or --repo invalid)"; exit 2; }
 
 
-# status = alias for ff-status (hand off and let it own exit codes)
+# status = alias for ff-status (hand off and let it own exit codes).
+# exec THROUGH bash: a direct exec needs the +x bit, which zip installs and
+# mode-dropping checkouts lose — Git Bash fakes modes, so only Linux notices.
 if [ "$MODE" = "status" ]; then
 if [ "$MODE" = "status" ]; then
-  if [ -n "$REPO" ]; then exec "$HERE/ff-status.sh" --run "$RUN" --repo "$REPO"; fi
-  exec "$HERE/ff-status.sh" --run "$RUN"
+  if [ -n "$REPO" ]; then exec bash "$HERE/ff-status.sh" --run "$RUN" --repo "$REPO"; fi
+  exec bash "$HERE/ff-status.sh" --run "$RUN"
 fi
 fi
 
 
 RUNDIR="$REPO/.fleetflow/$RUN"
 RUNDIR="$REPO/.fleetflow/$RUN"

+ 0 - 0
skills/fleetflow/scripts/ff-spawn.sh