fix(voyage): verify.sh handles v4.0.0 reality (URL exception + --local flag) [skip-docs]
This commit is contained in:
parent
ee56b11c78
commit
e89ac5eb98
1 changed files with 24 additions and 2 deletions
|
|
@ -46,13 +46,35 @@ tracked_sources() {
|
|||
'*.md' '*.mjs' '*.json' '*.sh' '*.yml' '*.yaml' 2>/dev/null
|
||||
}
|
||||
|
||||
# Per-file ultra/-local check. Special-cases .claude-plugin/plugin.json:
|
||||
# its homepage/repository URLs preserve the legacy "ultraplan-local" path
|
||||
# through Session 5 to avoid a 404 window during the Forgejo directory
|
||||
# rename. Session 5 will close this exception.
|
||||
#
|
||||
# SC2 uses a refined pattern that matches `/cmd-local` command suffixes
|
||||
# but NOT the `--local` CLI flag (legitimate `/trekresearch --local` mode).
|
||||
file_has_forbidden_match() {
|
||||
local f="$1" pattern="$2"
|
||||
local resolved="$pattern"
|
||||
if [ "$pattern" = "-local" ]; then
|
||||
resolved='/[a-zA-Z0-9_-]+-local'
|
||||
fi
|
||||
if [ "$f" = ".claude-plugin/plugin.json" ]; then
|
||||
grep -E -- "$resolved" "$f" 2>/dev/null \
|
||||
| grep -v -E '"(homepage|repository)":' \
|
||||
| grep -q .
|
||||
return $?
|
||||
fi
|
||||
grep -q -E -- "$resolved" "$f" 2>/dev/null
|
||||
}
|
||||
|
||||
# ---------------- SC1: zero `ultra` references in tracked source files ----------------
|
||||
sc1_hits=""
|
||||
while IFS= read -r f; do
|
||||
[ -z "$f" ] && continue
|
||||
exclude_path "$f" && continue
|
||||
[ -f "$f" ] || continue
|
||||
if grep -q 'ultra' "$f" 2>/dev/null; then
|
||||
if file_has_forbidden_match "$f" "ultra"; then
|
||||
sc1_hits="${sc1_hits}${f}
|
||||
"
|
||||
fi
|
||||
|
|
@ -74,7 +96,7 @@ while IFS= read -r f; do
|
|||
[ -z "$f" ] && continue
|
||||
exclude_path "$f" && continue
|
||||
[ -f "$f" ] || continue
|
||||
if grep -q -- '-local' "$f" 2>/dev/null; then
|
||||
if file_has_forbidden_match "$f" "-local"; then
|
||||
sc2_hits="${sc2_hits}${f}
|
||||
"
|
||||
fi
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue