claude-nomad 0.50.1 → 0.50.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/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.50.2](https://github.com/funkadelic/claude-nomad/compare/v0.50.1...v0.50.2) (2026-06-15)
4
+
5
+
6
+ ### Fixed
7
+
8
+ * **push:** skip gsd-dropped hooks and agents from shared push ([#295](https://github.com/funkadelic/claude-nomad/issues/295)) ([b8f6665](https://github.com/funkadelic/claude-nomad/commit/b8f66658dd47dac40bfafd9899206a481d04a87a))
9
+
10
+
11
+ ### Dependencies
12
+
13
+ * bump SonarSource/sonarqube-scan-action from 8.1.0 to 8.2.0 ([#297](https://github.com/funkadelic/claude-nomad/issues/297)) ([fdb681c](https://github.com/funkadelic/claude-nomad/commit/fdb681c4d346b9bd82b34fe6d9dee2d202186473))
14
+ * bump the dev-dependencies group with 5 updates ([#298](https://github.com/funkadelic/claude-nomad/issues/298)) ([0909a02](https://github.com/funkadelic/claude-nomad/commit/0909a025b698162c7a695354465046973ee93ab4))
15
+
3
16
  ## [0.50.1](https://github.com/funkadelic/claude-nomad/compare/v0.50.0...v0.50.1) (2026-06-12)
4
17
 
5
18
 
package/dist/nomad.mjs CHANGED
@@ -5,11 +5,20 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __getProtoOf = Object.getPrototypeOf;
7
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __esm = (fn, res) => function __init() {
9
- return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
8
+ var __esm = (fn, res, err) => function __init() {
9
+ if (err) throw err[0];
10
+ try {
11
+ return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
12
+ } catch (e) {
13
+ throw err = [e], e;
14
+ }
10
15
  };
11
16
  var __commonJS = (cb, mod) => function __require() {
12
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
17
+ try {
18
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
19
+ } catch (e) {
20
+ throw mod = 0, e;
21
+ }
13
22
  };
14
23
  var __export = (target, all) => {
15
24
  for (var name in all)
@@ -5521,6 +5530,19 @@ function isNeverSync(path) {
5521
5530
  }
5522
5531
  return false;
5523
5532
  }
5533
+ var GSD_HOOKS_SUPPORT_FILES = /* @__PURE__ */ new Set(["managed-hooks-registry.cjs", "package.json"]);
5534
+ var GSD_HOOKS_SUPPORT_DIR = "lib";
5535
+ function isGsdDropped(path) {
5536
+ const segments = path.split("/");
5537
+ if (segments[0] !== "shared" || segments.length < 3) return false;
5538
+ const dirName = segments[1];
5539
+ if (!GSD_DROPPED_NAMES.includes(dirName)) return false;
5540
+ const childName = segments[2];
5541
+ if (childName.startsWith(GSD_PREFIX)) return true;
5542
+ if (dirName !== "hooks") return false;
5543
+ if (segments.length === 3) return GSD_HOOKS_SUPPORT_FILES.has(childName);
5544
+ return childName === GSD_HOOKS_SUPPORT_DIR;
5545
+ }
5524
5546
  function parsePorcelainZ2(statusPorcelain) {
5525
5547
  const records = statusPorcelain.split("\0");
5526
5548
  const paths = [];
@@ -5554,6 +5576,7 @@ function enforceAllowList(statusPorcelain, map) {
5554
5576
  for (const path of parsePorcelainZ2(statusPorcelain)) {
5555
5577
  if (isNeverSync(path)) {
5556
5578
  neverSyncHits.push(path);
5579
+ } else if (isGsdDropped(path)) {
5557
5580
  } else if (!isAllowed(path, allowed)) {
5558
5581
  violations.push(path);
5559
5582
  }
@@ -5745,6 +5768,16 @@ function guardGitlinks(repo) {
5745
5768
  }
5746
5769
  async function commitAndPush(st, ts, map, redactAll, allowAll, allowRule, repo) {
5747
5770
  gitOrFatal(["add", "-A"], "git add", repo);
5771
+ const staged = parsePorcelainZ2(gitStatusPorcelainZ(repo));
5772
+ const toDrop = staged.filter((p) => isGsdDropped(p));
5773
+ if (toDrop.length > 0) {
5774
+ gitOrFatal(["restore", "--staged", "--", ...toDrop], "git restore --staged", repo);
5775
+ }
5776
+ if (staged.length === toDrop.length) {
5777
+ log("nothing to commit");
5778
+ renderNoScanTree(st);
5779
+ return;
5780
+ }
5748
5781
  st.globalConfig = collectGlobalConfigChanges(repo, HOST, { staged: true });
5749
5782
  let verdict = withSpinner("Scanning for secrets", () => scanPushVerdict(repo));
5750
5783
  if (verdict.leak) {
@@ -6350,7 +6383,7 @@ function parsePushArgs(argv) {
6350
6383
  // package.json
6351
6384
  var package_default = {
6352
6385
  name: "claude-nomad",
6353
- version: "0.50.1",
6386
+ version: "0.50.2",
6354
6387
  type: "module",
6355
6388
  description: "Sync Claude Code config (~/.claude/) across machines via a private Git repo, with path remapping and per-host settings overrides.",
6356
6389
  keywords: [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-nomad",
3
- "version": "0.50.1",
3
+ "version": "0.50.2",
4
4
  "type": "module",
5
5
  "description": "Sync Claude Code config (~/.claude/) across machines via a private Git repo, with path remapping and per-host settings overrides.",
6
6
  "keywords": [