bigpowers 2.76.0 → 2.76.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.
package/.pi/package.json
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## [2.76.2](https://github.com/danielvm-git/bigpowers/compare/v2.76.1...v2.76.2) (2026-07-09)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* **ci:** add orphan gitlink guard to prevent checkout failures ([#70](https://github.com/danielvm-git/bigpowers/issues/70)) ([4325ae9](https://github.com/danielvm-git/bigpowers/commit/4325ae9fd853defbb37d63c41317278b8882a6be))
|
|
7
|
+
|
|
8
|
+
## [2.76.1](https://github.com/danielvm-git/bigpowers/compare/v2.76.0...v2.76.1) (2026-07-09)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* **scripts:** remove dead function skill_graph_show_help ([b927dca](https://github.com/danielvm-git/bigpowers/commit/b927dca2c67c8cdd03432f627dcfa3b4a27d65ca))
|
|
14
|
+
|
|
1
15
|
# [2.76.0](https://github.com/danielvm-git/bigpowers/compare/v2.75.2...v2.76.0) (2026-07-07)
|
|
2
16
|
|
|
3
17
|
|
package/package.json
CHANGED
|
@@ -12,20 +12,6 @@ GRAPH_JSONL="$REPO_ROOT/bigpowers-mcp/graph.jsonl"
|
|
|
12
12
|
SKILL_GRAPH_JSON="$REPO_ROOT/specs/skill-graph.json"
|
|
13
13
|
SKILLS_WIKI="$REPO_ROOT/specs/skills-wiki/skills"
|
|
14
14
|
|
|
15
|
-
skill_graph_show_help() {
|
|
16
|
-
cat <<EOF
|
|
17
|
-
Usage: $(basename "$0") [OPTION]
|
|
18
|
-
|
|
19
|
-
Consume bigpowers-mcp/graph.jsonl and emit:
|
|
20
|
-
- specs/skill-graph.json — full skill dependency graph
|
|
21
|
-
- specs/skills-wiki/skills/*.md — per-skill OKF wiki pages
|
|
22
|
-
|
|
23
|
-
Options:
|
|
24
|
-
--help Show this help and exit
|
|
25
|
-
--wiki Regenerate only the skills-wiki OKF bundle (skip graph.json)
|
|
26
|
-
EOF
|
|
27
|
-
}
|
|
28
|
-
|
|
29
15
|
# --- Error handling ---
|
|
30
16
|
missing_graph() {
|
|
31
17
|
echo "[ERROR] MCP graph not found at: $GRAPH_JSONL" >&2
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# check-orphan-gitlinks.sh — fail if git index has gitlinks without .gitmodules URLs
|
|
3
|
+
# story: BUG-2026-07-09T033939-golden-g01-submodule-checkout
|
|
4
|
+
set -euo pipefail
|
|
5
|
+
|
|
6
|
+
check_orphan_gitlinks() {
|
|
7
|
+
local repo_root="${1:-.}"
|
|
8
|
+
local gitlinks orphans=0
|
|
9
|
+
|
|
10
|
+
cd "$repo_root"
|
|
11
|
+
|
|
12
|
+
while IFS= read -r path; do
|
|
13
|
+
[[ -z "$path" ]] && continue
|
|
14
|
+
if [[ ! -f .gitmodules ]] || ! git config -f .gitmodules --get "submodule.${path}.url" >/dev/null 2>&1; then
|
|
15
|
+
gitlinks+=("$path")
|
|
16
|
+
orphans=$((orphans + 1))
|
|
17
|
+
fi
|
|
18
|
+
done < <(git ls-files -s | awk '$1 == "160000" { $1=$2=$3=""; sub(/^ /, ""); print }')
|
|
19
|
+
|
|
20
|
+
if [[ "$orphans" -eq 0 ]]; then
|
|
21
|
+
echo "no orphan gitlinks"
|
|
22
|
+
return 0
|
|
23
|
+
fi
|
|
24
|
+
|
|
25
|
+
echo "orphan gitlink(s) without .gitmodules URL:" >&2
|
|
26
|
+
printf ' %s\n' "${gitlinks[@]}" >&2
|
|
27
|
+
return 1
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
|
31
|
+
check_orphan_gitlinks "$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
32
|
+
fi
|
|
@@ -137,6 +137,17 @@ else
|
|
|
137
137
|
done
|
|
138
138
|
fi
|
|
139
139
|
|
|
140
|
+
# ── CI: orphan gitlinks break actions/checkout submodule cleanup ───────────────
|
|
141
|
+
echo "--- [CI] orphan gitlinks ---"
|
|
142
|
+
# shellcheck source=lib/check-orphan-gitlinks.sh
|
|
143
|
+
source "$REPO_ROOT/scripts/lib/check-orphan-gitlinks.sh"
|
|
144
|
+
if check_orphan_gitlinks "$REPO_ROOT" >/dev/null; then
|
|
145
|
+
doctrine_pass "no orphan gitlinks"
|
|
146
|
+
else
|
|
147
|
+
doctrine_fail "git index contains gitlink(s) without .gitmodules URL — breaks actions/checkout"
|
|
148
|
+
check_orphan_gitlinks "$REPO_ROOT" >&2 || true
|
|
149
|
+
fi
|
|
150
|
+
|
|
140
151
|
# ── CI: trace-stories wrapper smoke (REPO_ROOT must be set under set -u) ───────
|
|
141
152
|
echo "--- [CI] trace-stories wrapper smoke ---"
|
|
142
153
|
if bash "$REPO_ROOT/scripts/trace-stories.sh" --help >/dev/null 2>&1; then
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# story: BUG-2026-07-09T033939-golden-g01-submodule-checkout
|
|
3
|
+
# Regression: orphan gitlinks (160000) without .gitmodules URLs break actions/checkout.
|
|
4
|
+
set -euo pipefail
|
|
5
|
+
|
|
6
|
+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
7
|
+
REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
8
|
+
# shellcheck source=../scripts/lib/check-orphan-gitlinks.sh
|
|
9
|
+
source "$REPO_ROOT/scripts/lib/check-orphan-gitlinks.sh"
|
|
10
|
+
|
|
11
|
+
# Clean tree must pass.
|
|
12
|
+
if ! output="$(check_orphan_gitlinks "$REPO_ROOT")"; then
|
|
13
|
+
echo "FAIL: check_orphan_gitlinks failed on clean tree"
|
|
14
|
+
exit 1
|
|
15
|
+
fi
|
|
16
|
+
if [[ "$output" != "no orphan gitlinks" ]]; then
|
|
17
|
+
echo "FAIL: unexpected output: $output"
|
|
18
|
+
exit 1
|
|
19
|
+
fi
|
|
20
|
+
|
|
21
|
+
# Synthetic orphan: gitlink path with no .gitmodules entry must fail.
|
|
22
|
+
tmpdir="$(mktemp -d)"
|
|
23
|
+
trap 'rm -rf "$tmpdir"' EXIT
|
|
24
|
+
git -C "$tmpdir" init -q
|
|
25
|
+
git -C "$tmpdir" config user.email "test@example.com"
|
|
26
|
+
git -C "$tmpdir" config user.name "test"
|
|
27
|
+
mkdir -p "$tmpdir/sub"
|
|
28
|
+
echo "nested" >"$tmpdir/sub/file.txt"
|
|
29
|
+
git -C "$tmpdir/sub" init -q
|
|
30
|
+
git -C "$tmpdir/sub" add file.txt
|
|
31
|
+
git -C "$tmpdir/sub" commit -qm "nested"
|
|
32
|
+
git -C "$tmpdir" add sub
|
|
33
|
+
if ! check_orphan_gitlinks "$tmpdir" >/dev/null 2>&1; then
|
|
34
|
+
echo "PASS: synthetic orphan gitlink correctly rejected"
|
|
35
|
+
exit 0
|
|
36
|
+
fi
|
|
37
|
+
|
|
38
|
+
echo "FAIL: check_orphan_gitlinks should reject orphan gitlink in synthetic repo"
|
|
39
|
+
exit 1
|