claude-nomad 0.62.1 → 0.62.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,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.62.2](https://github.com/funkadelic/claude-nomad/compare/v0.62.1...v0.62.2) (2026-07-21)
4
+
5
+
6
+ ### Fixed
7
+
8
+ * **push:** close the interactive-push secret-gate fail-open ([#446](https://github.com/funkadelic/claude-nomad/issues/446)) ([5de8975](https://github.com/funkadelic/claude-nomad/commit/5de8975f83f5e99711041ef6025fe69933b1ab15))
9
+
3
10
  ## [0.62.1](https://github.com/funkadelic/claude-nomad/compare/v0.62.0...v0.62.1) (2026-07-20)
4
11
 
5
12
 
package/dist/nomad.mjs CHANGED
@@ -5726,6 +5726,9 @@ function allowThenRescan(append, scanVerdict, repoHome2) {
5726
5726
  throw err;
5727
5727
  }
5728
5728
  }
5729
+ function leakBlockedFatal(recovery) {
5730
+ return new NomadFatal(recovery ?? "gitleaks detected secrets", { code: EXIT.LEAK_BLOCKED });
5731
+ }
5729
5732
  function makeRealPrompt() {
5730
5733
  return async (prompt) => {
5731
5734
  const rl = createInterface2({
@@ -5772,9 +5775,10 @@ async function resolveLeakFindings(verdict, ts, map, deps = {}) {
5772
5775
  );
5773
5776
  }
5774
5777
  if (!isTTYCheck()) {
5775
- throw new NomadFatal(current.recovery ?? "gitleaks detected secrets", {
5776
- code: EXIT.LEAK_BLOCKED
5777
- });
5778
+ throw leakBlockedFatal(current.recovery);
5779
+ }
5780
+ if (current.leak && current.findings.length === 0) {
5781
+ throw leakBlockedFatal(current.recovery);
5778
5782
  }
5779
5783
  const prompt = makePromptFn();
5780
5784
  printLegend();
@@ -5789,6 +5793,7 @@ async function resolveLeakFindings(verdict, ts, map, deps = {}) {
5789
5793
  gitOrFatal(["add", "-A"], "git add", repo);
5790
5794
  current = scanVerdict(repo);
5791
5795
  }
5796
+ if (current.leak) throw leakBlockedFatal(current.recovery);
5792
5797
  return current;
5793
5798
  }
5794
5799
 
@@ -7884,6 +7889,7 @@ async function commitAndPush(st, ts, map, resolution, repo, newManifest, render)
7884
7889
  if (!render) log("push (leak recovery)");
7885
7890
  renderPushTree(st, verdict);
7886
7891
  verdict = await resolveLeakFindings(verdict, ts, map, resolution);
7892
+ if (verdict.leak) throw leakBlockedFatal(verdict.recovery);
7887
7893
  }
7888
7894
  gitOrFatal(["commit", "-m", `chore: sync from ${HOST}`], "git commit", repo);
7889
7895
  withSpinner("Pushing", () => gitOrFatal(["push"], "git push", repo));
@@ -8998,7 +9004,7 @@ function parseSyncArgs(argv) {
8998
9004
  // package.json
8999
9005
  var package_default = {
9000
9006
  name: "claude-nomad",
9001
- version: "0.62.1",
9007
+ version: "0.62.2",
9002
9008
  type: "module",
9003
9009
  description: "Sync Claude Code config (~/.claude/) across machines via a private Git repo, with path remapping and per-host settings overrides.",
9004
9010
  keywords: [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-nomad",
3
- "version": "0.62.1",
3
+ "version": "0.62.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": [