@wipcomputer/wip-ai-devops-toolbox 1.9.56 → 1.9.58

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/CHANGELOG.md CHANGED
@@ -31,6 +31,51 @@
31
31
 
32
32
 
33
33
 
34
+
35
+ ## 1.9.58 (2026-03-29)
36
+
37
+ # Release Notes: wip-ai-devops-toolbox v1.9.58
38
+
39
+ **Fix deploy-public.sh losing release notes when invoked with relative path.**
40
+
41
+ ## The story
42
+
43
+ When deploy-public.sh was called with `.` as the private repo path (e.g. `bash scripts/deploy-public.sh . wipcomputer/repo`), the script later cd'd into a temp directory. After that, `cd "."` no longer pointed to the private repo, so `gh release view` failed silently and release notes fell back to the empty "Release vX.Y.Z" default. This has been broken since at least v1.9.51.
44
+
45
+ Fix: resolve PRIVATE_REPO to an absolute path at startup before any cd happens.
46
+
47
+ ## Issues closed
48
+
49
+ - #228 (continued from v1.9.57)
50
+
51
+ ## How to verify
52
+
53
+ ```bash
54
+ # From a repo directory, run with "." and check public release has real notes:
55
+ cd /path/to/private-repo
56
+ bash scripts/deploy-public.sh . wipcomputer/public-repo --dry-run
57
+ ```
58
+
59
+ ## 1.9.57 (2026-03-29)
60
+
61
+ # Release Notes: wip-ai-devops-toolbox v1.9.57
62
+
63
+ **deploy-public.sh now excludes .worktrees/ and _worktrees/ from public repo syncs.**
64
+
65
+ ## The story
66
+
67
+ v1.9.56 accidentally deployed worktree directories (containing embedded git repos) to the public repo. The deploy script's rsync excluded ai/, .git/, _trash/, and other dev artifacts but didn't exclude worktree directories. Added both .worktrees/ (new convention) and _worktrees/ (old convention) to the exclude list.
68
+
69
+ ## Issues closed
70
+
71
+ - #228 (deploy-public.sh leaks .worktrees/ to public repo)
72
+
73
+ ## How to verify
74
+
75
+ ```bash
76
+ # Run deploy-public.sh --dry-run and confirm .worktrees/ is not synced
77
+ grep -n "worktrees" scripts/deploy-public.sh
78
+ ```
34
79
 
35
80
  ## 1.9.56 (2026-03-29)
36
81
 
package/SKILL.md CHANGED
@@ -5,7 +5,7 @@ license: MIT
5
5
  interface: [cli, module, mcp, skill, hook, plugin]
6
6
  metadata:
7
7
  display-name: "WIP AI DevOps Toolbox"
8
- version: "1.9.56"
8
+ version: "1.9.58"
9
9
  homepage: "https://github.com/wipcomputer/wip-ai-devops-toolbox"
10
10
  author: "Parker Todd Brooks"
11
11
  category: dev-tools
@@ -0,0 +1,18 @@
1
+ # Release Notes: wip-ai-devops-toolbox v1.9.57
2
+
3
+ **deploy-public.sh now excludes .worktrees/ and _worktrees/ from public repo syncs.**
4
+
5
+ ## The story
6
+
7
+ v1.9.56 accidentally deployed worktree directories (containing embedded git repos) to the public repo. The deploy script's rsync excluded ai/, .git/, _trash/, and other dev artifacts but didn't exclude worktree directories. Added both .worktrees/ (new convention) and _worktrees/ (old convention) to the exclude list.
8
+
9
+ ## Issues closed
10
+
11
+ - #228 (deploy-public.sh leaks .worktrees/ to public repo)
12
+
13
+ ## How to verify
14
+
15
+ ```bash
16
+ # Run deploy-public.sh --dry-run and confirm .worktrees/ is not synced
17
+ grep -n "worktrees" scripts/deploy-public.sh
18
+ ```
@@ -0,0 +1,21 @@
1
+ # Release Notes: wip-ai-devops-toolbox v1.9.58
2
+
3
+ **Fix deploy-public.sh losing release notes when invoked with relative path.**
4
+
5
+ ## The story
6
+
7
+ When deploy-public.sh was called with `.` as the private repo path (e.g. `bash scripts/deploy-public.sh . wipcomputer/repo`), the script later cd'd into a temp directory. After that, `cd "."` no longer pointed to the private repo, so `gh release view` failed silently and release notes fell back to the empty "Release vX.Y.Z" default. This has been broken since at least v1.9.51.
8
+
9
+ Fix: resolve PRIVATE_REPO to an absolute path at startup before any cd happens.
10
+
11
+ ## Issues closed
12
+
13
+ - #228 (continued from v1.9.57)
14
+
15
+ ## How to verify
16
+
17
+ ```bash
18
+ # From a repo directory, run with "." and check public release has real notes:
19
+ cd /path/to/private-repo
20
+ bash scripts/deploy-public.sh . wipcomputer/public-repo --dry-run
21
+ ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-ai-devops-toolbox",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "type": "module",
5
5
  "description": "The complete AI DevOps toolkit for AI-assisted development teams.",
6
6
  "license": "MIT",
@@ -44,6 +44,9 @@ if [[ -z "$PRIVATE_REPO" || -z "$PUBLIC_REPO" ]]; then
44
44
  exit 1
45
45
  fi
46
46
 
47
+ # Resolve to absolute path so later cd's don't break when cwd changes
48
+ PRIVATE_REPO="$(cd "$PRIVATE_REPO" && pwd)"
49
+
47
50
  if [[ ! -d "$PRIVATE_REPO/.git" ]]; then
48
51
  echo "Error: $PRIVATE_REPO is not a git repository"
49
52
  exit 1
@@ -109,7 +112,7 @@ echo "Syncing files from private repo (excluding ai/, .git/)..."
109
112
  # Remove all tracked files in public (except .git) so deleted files get removed
110
113
  find "$TMPDIR/public" -mindepth 1 -maxdepth 1 ! -name .git -exec rm -rf {} +
111
114
 
112
- # rsync from private, excluding ai/ and .git/
115
+ # rsync from private, excluding ai/, .git/, worktrees, and other dev artifacts
113
116
  rsync -a \
114
117
  --exclude='ai/' \
115
118
  --exclude='_trash/' \
@@ -118,6 +121,8 @@ rsync -a \
118
121
  --exclude='.wrangler/' \
119
122
  --exclude='.claude/' \
120
123
  --exclude='CLAUDE.md' \
124
+ --exclude='.worktrees/' \
125
+ --exclude='_worktrees/' \
121
126
  "$PRIVATE_REPO/" "$TMPDIR/public/"
122
127
 
123
128
  cd "$TMPDIR/public"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/deploy-public",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "description": "Private-to-public repo sync. Excludes ai/ folder, creates PR, merges, cleans up branches.",
5
5
  "bin": {
6
6
  "deploy-public": "./deploy-public.sh"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/post-merge-rename",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "description": "Post-merge branch renaming. Appends --merged-YYYY-MM-DD to preserve history.",
5
5
  "bin": {
6
6
  "post-merge-rename": "./post-merge-rename.sh"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-branch-guard",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "description": "PreToolUse hook that blocks all writes on main branch. Forces agents to work on branches or worktrees.",
5
5
  "type": "module",
6
6
  "main": "guard.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-file-guard",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "type": "module",
5
5
  "description": "Hook that blocks destructive edits to protected identity files. For Claude Code CLI and OpenClaw.",
6
6
  "main": "guard.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-license-guard",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "description": "License compliance for your own repos. Ensures correct copyright, dual-license blocks, and LICENSE files.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-license-hook",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "description": "License rug-pull detection and dependency license compliance for open source projects",
5
5
  "type": "module",
6
6
  "main": "dist/cli/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-readme-format",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "description": "Reformat any repo's README to follow the WIP Computer standard. Agent-first, human-readable.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-release",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "type": "module",
5
5
  "description": "One-command release pipeline. Bumps version, updates changelog + SKILL.md, publishes to npm + GitHub.",
6
6
  "main": "core.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-repo-init",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "description": "Scaffold the standard ai/ directory structure in any repo",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-repo-permissions-hook",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "type": "module",
5
5
  "description": "Repo visibility guard. Blocks repos from going public without a -private counterpart.",
6
6
  "main": "core.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/wip-repos",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "type": "module",
5
5
  "description": "Repo manifest reconciler. Single source of truth for repo organization. Like prettier for folder structure.",
6
6
  "main": "core.mjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipcomputer/universal-installer",
3
- "version": "1.9.56",
3
+ "version": "1.9.58",
4
4
  "type": "module",
5
5
  "description": "The Universal Interface specification for agent-native software. Teaches your AI how to build repos with every interface: CLI, Module, MCP Server, OpenClaw Plugin, Skill, Claude Code Hook.",
6
6
  "main": "detect.mjs",