wolverine-ai 3.9.4 → 3.9.5

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wolverine-ai",
3
- "version": "3.9.4",
3
+ "version": "3.9.5",
4
4
  "description": "Self-healing Node.js server framework powered by AI. Catches crashes, diagnoses errors, generates fixes, verifies, and restarts — automatically.",
5
5
  "main": "src/index.js",
6
6
  "bin": {
@@ -176,7 +176,10 @@ function safeUpdate(cwd, options = {}) {
176
176
  if (isGit) {
177
177
  console.log(chalk.blue(" 📦 Selective git update (server/ untouched)"));
178
178
  // ONLY update framework files — never touch server/ or its deps
179
- const frameworkPaths = "src/ bin/ examples/ tests/ CLAUDE.md README.md CHANGELOG.md .npmignore";
179
+ // Only checkout paths that exist in the remote to avoid errors
180
+ const allPaths = ["src/", "bin/", "examples/", "tests/", "CLAUDE.md", "README.md", "CHANGELOG.md", ".npmignore"];
181
+ const remotePaths = execSync("git ls-tree --name-only origin/master", { cwd, encoding: "utf-8", timeout: 5000 }).trim().split("\n");
182
+ const frameworkPaths = allPaths.filter(p => remotePaths.some(r => r === p.replace("/", "") || r.startsWith(p))).join(" ");
180
183
  execSync(`git checkout origin/master -- ${frameworkPaths}`, { cwd, stdio: "pipe", timeout: 30000 });
181
184
  // Update package.json separately, then install deps to restore anything lost
182
185
  execSync("git checkout origin/master -- package.json", { cwd, stdio: "pipe", timeout: 10000 });