bigpowers 2.88.6 → 2.88.7

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bigpowers",
3
- "version": "2.88.6",
3
+ "version": "2.88.7",
4
4
  "description": "81 skills — 73 agent skills synthesizing 17 years of software engineering discipline into a prescriptive methodology for solo developers",
5
5
  "keywords": [
6
6
  "gemini-extension"
package/.pi/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bigpowers",
3
- "version": "2.88.6",
3
+ "version": "2.88.7",
4
4
  "description": "81 skills — 73 agent skills synthesizing 17 years of software engineering discipline into a prescriptive methodology for solo developers",
5
5
  "keywords": [
6
6
  "pi-package"
package/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [2.88.7](https://github.com/danielvm-git/bigpowers/compare/v2.88.6...v2.88.7) (2026-09-17)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **scripts:** resolve repo root in projects without skills/ ([093fef7](https://github.com/danielvm-git/bigpowers/commit/093fef72eb9f3be4c8cc61431df421752ed1ed44)), closes [#130](https://github.com/danielvm-git/bigpowers/issues/130)
7
+
1
8
  ## [2.88.6](https://github.com/danielvm-git/bigpowers/compare/v2.88.5...v2.88.6) (2026-09-13)
2
9
 
3
10
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bigpowers",
3
- "version": "2.88.6",
3
+ "version": "2.88.7",
4
4
  "description": "73 agent skills synthesizing 17 years of software engineering discipline into a prescriptive methodology for solo developers",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -16,7 +16,9 @@ resolve_repo_root() {
16
16
  # Library is at REPO/scripts/lib/skill-common.sh → two levels up
17
17
  local repo_candidate
18
18
  repo_candidate="$(cd "$lib_dir/../.." 2>/dev/null && pwd)"
19
- if [ -n "$repo_candidate" ] && [ -d "$repo_candidate/skills" ]; then
19
+ if [ -n "$repo_candidate" ] && {
20
+ [ -d "$repo_candidate/scripts/lib" ] || [ -d "$repo_candidate/skills" ]
21
+ }; then
20
22
  REPO_ROOT="$repo_candidate"
21
23
  else
22
24
  repo_candidate="$(cd "$lib_dir/.." 2>/dev/null && pwd)"
@@ -31,7 +31,9 @@ def resolve_repo_root():
31
31
  lib_dir = os.path.dirname(os.path.abspath(__file__))
32
32
  # scripts/lib/srp-engine.py -> two levels up is REPO_ROOT
33
33
  repo_candidate = os.path.dirname(os.path.dirname(lib_dir))
34
- if os.path.isdir(os.path.join(repo_candidate, "skills")):
34
+ if os.path.isdir(os.path.join(repo_candidate, "scripts", "lib")) or os.path.isdir(
35
+ os.path.join(repo_candidate, "skills")
36
+ ):
35
37
  return repo_candidate
36
38
  return os.path.dirname(lib_dir)
37
39
 
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/env bash
2
+ # Regression test for resolve_repo_root() in consumer layouts without skills/.
3
+ # See: https://github.com/danielvm-git/bigpowers/issues/130
4
+ set -euo pipefail
5
+
6
+ TA_PASS=0
7
+ TA_FAIL=0
8
+ TA_TMPDIR=""
9
+
10
+ source "$(dirname "${BASH_SOURCE[0]}")/lib/test-assertions.sh"
11
+ trap ta_cleanup EXIT
12
+
13
+ echo "=== test-resolve-repo-root.sh ==="
14
+
15
+ # Consumer project: scripts/lib present, no local skills/ directory.
16
+ TA_TMPDIR="$(mktemp -d)"
17
+ mkdir -p "$TA_TMPDIR/scripts/lib"
18
+ cp "$(dirname "${BASH_SOURCE[0]}")/lib/skill-common.sh" "$TA_TMPDIR/scripts/lib/"
19
+
20
+ set +e
21
+ out=$(bash -c "source '$TA_TMPDIR/scripts/lib/skill-common.sh' && resolve_repo_root && printf '%s|%s' \"\$REPO_ROOT\" \"\$SKILLS_ROOT\"")
22
+ rc=$?
23
+ set -e
24
+
25
+ if [[ $rc -ne 0 ]]; then
26
+ ta_fail "consumer layout: resolve_repo_root exited $rc"
27
+ elif [[ "$out" == "$TA_TMPDIR|$TA_TMPDIR" ]]; then
28
+ ta_pass "consumer layout without skills/ resolves repo root (not scripts/)"
29
+ else
30
+ ta_fail "consumer layout: expected REPO_ROOT=$TA_TMPDIR, got: $out"
31
+ fi
32
+
33
+ # bigpowers repo: skills/ and scripts/lib both present.
34
+ source "$(dirname "${BASH_SOURCE[0]}")/lib/skill-common.sh"
35
+ resolve_repo_root
36
+ expected_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
37
+ if [[ "$REPO_ROOT" == "$expected_root" && -d "$REPO_ROOT/skills" ]]; then
38
+ ta_pass "bigpowers repo resolves REPO_ROOT with skills/"
39
+ else
40
+ ta_fail "bigpowers repo: REPO_ROOT=$REPO_ROOT expected=$expected_root"
41
+ fi
42
+
43
+ echo "=== $TA_PASS passed, $TA_FAIL failed ==="
44
+ [[ "$TA_FAIL" -eq 0 ]]