@spardutti/claude-skills 2.38.0 → 2.38.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -65,10 +65,11 @@ survivor_list() { # survivor_list <survivors> <tool>
|
|
|
65
65
|
echo " not equivalent — see testing-best-practices/MUTATION-TESTING.md."
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
+
# .claude/ is this tooling, installed: gating it made a diff that only removed its hooks UNPROVEN.
|
|
68
69
|
changed_files() {
|
|
69
70
|
{ git diff "$BASE"...HEAD --name-only 2>/dev/null
|
|
70
71
|
git diff HEAD --name-only 2>/dev/null
|
|
71
|
-
git ls-files --others --exclude-standard 2>/dev/null; } | sort -u
|
|
72
|
+
git ls-files --others --exclude-standard 2>/dev/null; } | sort -u | grep -vE '(^|/)\.claude/'
|
|
72
73
|
}
|
|
73
74
|
|
|
74
75
|
# Ignored extensions are left out; see the comment where ship-gate.sh first calls this.
|
|
@@ -46,8 +46,10 @@ js_misplaced() { # js_misplaced <path> <owner>
|
|
|
46
46
|
echo "sorted by kind first; it belongs in <domain>/<kind>/ or shared/<kind>/"
|
|
47
47
|
elif printf '%s' "$b" | grep -qE '^use[A-Z].*\.[jt]sx?$' && ! printf '%s' "/$f" | grep -qE '/(hooks|queries)/'; then
|
|
48
48
|
echo "a hook belongs in hooks/ or queries/"
|
|
49
|
+
# Stimulus loads *_controller.js from any depth under controllers/, so controllers/components/ is its kind folder.
|
|
49
50
|
elif printf '%s' "$b" | grep -qE "$STRUCTURE_KIND_FILE" \
|
|
50
|
-
&& ! printf '%s' "$parent" | grep -qxE 'routes|controllers|services|schemas|models|api|queries|types'
|
|
51
|
+
&& ! printf '%s' "$parent" | grep -qxE 'routes|controllers|services|schemas|models|api|queries|types' \
|
|
52
|
+
&& ! printf '%s' "/$f" | grep -qE '/controllers/(.+/)?[^/]+_controller\.[jt]s$'; then
|
|
51
53
|
echo "the kind is in the filename; it belongs in a kind folder"
|
|
52
54
|
fi
|
|
53
55
|
}
|
package/hooks/ship-gate.sh
CHANGED
|
@@ -167,7 +167,7 @@ if [ -z "$FILES" ]; then
|
|
|
167
167
|
# the list named, so zero source files were found and a PASS receipt was
|
|
168
168
|
# written over work nothing had checked. An extension this gate cannot place is
|
|
169
169
|
# UNPROVEN: it does not block, but it never claims a pass either.
|
|
170
|
-
UNKNOWN=$(printf '%s\n' "$CHANGED" | grep -E '\.[A-Za-z0-9]+$' \
|
|
170
|
+
UNKNOWN=$(printf '%s\n' "$CHANGED" | while IFS= read -r f; do [ -f "$f" ] && printf '%s\n' "$f"; done | grep -E '\.[A-Za-z0-9]+$' \
|
|
171
171
|
| grep -viE "\.($GAUNTLET_SOURCE_EXT)$" \
|
|
172
172
|
| grep -viE "\.($GAUNTLET_IGNORE_EXT)$" \
|
|
173
173
|
| sed 's/.*\.//' | sort -u | tr '\n' ' ')
|