@saferun/cli 0.6.18 → 0.6.20

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/README.md CHANGED
@@ -49,13 +49,52 @@ saferun uninstall --global # Remove completely
49
49
 
50
50
  ## How It Works
51
51
 
52
- 1. Shell wrapper intercepts dangerous Git commands
53
- 2. SafeRun calculates risk score and detects AI agent
54
- 3. Slack notification sent with Approve/Reject buttons
55
- 4. You approve command executes. You reject → command blocked.
52
+ SafeRun uses **multiple layers** of protection:
53
+
54
+ 1. **Shell Wrapper** Intercepts `git` commands in interactive shells
55
+ 2. **Git Hooks** `pre-commit`, `pre-push`, `post-checkout`
56
+ 3. **reference-transaction Hook** — Intercepts ALL ref changes at Git core level (Git 2.29+)
57
+
58
+ The `reference-transaction` hook is the **most reliable** layer — it catches operations even when AI agents call `/usr/bin/git` directly, bypassing shell aliases and PATH wrappers.
59
+
60
+ ```
61
+ AI Agent → /usr/bin/git reset --hard → Git internals → reference-transaction hook → SafeRun blocks!
62
+ ```
63
+
64
+ When a dangerous operation is detected:
65
+ 1. SafeRun calculates risk score and detects AI agent
66
+ 2. Slack notification sent with Approve/Reject buttons
67
+ 3. You approve → command executes. You reject → command blocked.
56
68
 
57
69
  Approval timeout: 2 hours.
58
70
 
71
+ ## Requirements
72
+
73
+ - **Node.js** 18+
74
+ - **Git** 2.29+ (for `reference-transaction` hook)
75
+ - **Slack** workspace with bot token
76
+
77
+ ## Known Limitations (Help Wanted! 🙏)
78
+
79
+ SafeRun protects **Git ref-changing operations**. Some operations are outside our scope:
80
+
81
+ **✅ Protected Operations** (ref-changing):
82
+ - `git reset --hard` — changes branch ref
83
+ - `git branch -D` — deletes branch ref
84
+ - `git push --force` — changes remote ref
85
+ - `git rebase` — rewrites branch ref
86
+ - `git checkout` to different branch — updates HEAD ref
87
+
88
+ **❌ Not Protected** (no ref change):
89
+ - `git clean -fd` — deletes untracked files only → *use `.gitignore`*
90
+ - `rm -rf .git` — filesystem operation → *use Docker/sandbox*
91
+ - Deleting `.git/hooks/` — filesystem operation → *use Docker/sandbox*
92
+
93
+ **Why can't we protect `git clean`?**
94
+ Git's `reference-transaction` hook only fires when refs change. `git clean` deletes untracked files without touching refs.
95
+
96
+ **Community contributions welcome!** If you know how to intercept these operations, please open an issue or PR.
97
+
59
98
  ## Documentation
60
99
 
61
100
  Full documentation: [github.com/Cocabadger/saferun-api](https://github.com/Cocabadger/saferun-api)
@@ -93,6 +93,10 @@ class HookCommand {
93
93
  const { interceptCommit } = await Promise.resolve().then(() => __importStar(require('../interceptors/commit')));
94
94
  return await interceptCommit(context);
95
95
  }
96
+ case 'git-rebase': {
97
+ const { interceptRebase } = await Promise.resolve().then(() => __importStar(require('../interceptors/rebase')));
98
+ return await interceptRebase(context);
99
+ }
96
100
  default: {
97
101
  console.warn(chalk_1.default.yellow(`Unknown SafeRun hook handler: ${handler}`));
98
102
  return (0, git_1.runGitCommand)(this.mapHandlerToGitCommand(handler, forwarded), {
@@ -118,6 +122,8 @@ class HookCommand {
118
122
  return 'push';
119
123
  case 'git-commit':
120
124
  return 'commit';
125
+ case 'git-rebase':
126
+ return 'rebase';
121
127
  default:
122
128
  return handler;
123
129
  }
@@ -134,6 +140,8 @@ class HookCommand {
134
140
  return ['push', ...args];
135
141
  case 'git-commit':
136
142
  return ['commit', ...args];
143
+ case 'git-rebase':
144
+ return ['rebase', ...args];
137
145
  default: {
138
146
  const command = handler.startsWith('git-') ? handler.slice(4) : handler;
139
147
  return [command, ...args];
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,0DAA0D;AAC1D,8DAA+D;AAC/D,oDAA0D;AAC1D,sCAAyD;AACzD,8CAAoD;AAGpD,MAAa,WAAW;IACtB,KAAK,CAAC,GAAG,CAAC,OAAe,EAAE,SAAmB;;QAC5C,MAAM,OAAO,GAAG,MAAM,IAAA,gBAAU,GAAE,CAAC;QACnC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAA,mBAAa,EAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QACvH,CAAC;QAED,qDAAqD;QACrD,IAAI,CAAC,IAAA,qCAAmB,EAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3C,+BAA+B;YAC/B,OAAO,IAAA,mBAAa,EAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;gBACpE,GAAG,EAAE,OAAO,CAAC,QAAQ;gBACrB,cAAc,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;aAC1C,CAAC,CAAC;QACL,CAAC;QAED,kCAAkC;QAClC,MAAM,MAAM,GAAG,MAAM,IAAA,gCAAgB,GAAE,CAAC;QACxC,MAAM,YAAY,GAAG,MAAA,MAAM,CAAC,KAAK,0CAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAEjD,MAAM,OAAO,GAAG,IAAI,0BAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAA,gCAAmB,EAAC,EAAE,MAAM,EAAE,CAAQ,CAAC;YACtD,MAAM,OAAO,GAAuB;gBAClC,IAAI,EAAE,SAAS;gBACf,MAAM;gBACN,OAAO;gBACP,MAAM;gBACN,OAAO;gBACP,YAAY;aACb,CAAC;YAEF,QAAQ,OAAO,EAAE,CAAC;gBAChB,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,EAAE,qBAAqB,EAAE,GAAG,wDAAa,+BAA+B,GAAC,CAAC;oBAChF,OAAO,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;gBAC9C,CAAC;gBACD,KAAK,WAAW,CAAC,CAAC,CAAC;oBACjB,MAAM,EAAE,cAAc,EAAE,GAAG,wDAAa,4BAA4B,GAAC,CAAC;oBACtE,OAAO,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;gBACvC,CAAC;gBACD,KAAK,WAAW,CAAC,CAAC,CAAC;oBACjB,MAAM,EAAE,cAAc,EAAE,GAAG,wDAAa,uBAAuB,GAAC,CAAC;oBACjE,OAAO,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;gBACvC,CAAC;gBACD,KAAK,UAAU,CAAC,CAAC,CAAC;oBAChB,MAAM,EAAE,kBAAkB,EAAE,GAAG,wDAAa,4BAA4B,GAAC,CAAC;oBAC1E,OAAO,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBAC3C,CAAC;gBACD,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,wBAAwB,GAAC,CAAC;oBACnE,OAAO,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;gBACxC,CAAC;gBACD,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,wBAAwB,GAAC,CAAC;oBACnE,OAAO,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;gBACxC,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC;oBACR,OAAO,CAAC,IAAI,CAAC,eAAK,CAAC,MAAM,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC,CAAC;oBACvE,OAAO,IAAA,mBAAa,EAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;wBACpE,GAAG,EAAE,OAAO,CAAC,QAAQ;wBACrB,cAAc,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;qBAC1C,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,OAAe;QAC/B,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,YAAY;gBACf,OAAO,QAAQ,CAAC;YAClB,KAAK,WAAW;gBACd,OAAO,OAAO,CAAC;YACjB,KAAK,WAAW;gBACd,OAAO,OAAO,CAAC;YACjB,KAAK,UAAU;gBACb,OAAO,MAAM,CAAC;YAChB,KAAK,YAAY;gBACf,OAAO,QAAQ,CAAC;YAClB,KAAK,YAAY;gBACf,OAAO,QAAQ,CAAC;YAClB;gBACE,OAAO,OAAO,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,OAAe,EAAE,IAAc;QAC5D,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,YAAY;gBACf,OAAO,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC;YAC7B,KAAK,WAAW;gBACd,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;YAC5B,KAAK,WAAW;gBACd,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;YAC5B,KAAK,UAAU;gBACb,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;YAC3B,KAAK,YAAY;gBACf,OAAO,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC;YAC7B,KAAK,YAAY;gBACf,OAAO,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC;YAC7B,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBACxE,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;CACF;AA7GD,kCA6GC"}
@@ -110,6 +110,11 @@ git() {
110
110
  return \$?
111
111
  fi
112
112
  ;;
113
+ rebase)
114
+ # Intercept all rebase operations (especially interactive)
115
+ saferun hook git-rebase "\${@:2}"
116
+ return \$?
117
+ ;;
113
118
  config)
114
119
  # Block attempts to disable hooks
115
120
  if [[ "\$all_args" == *"core.hooksPath"* ]]; then
@@ -180,6 +185,10 @@ function git --wraps git
180
185
  saferun hook git-clean $argv[2..-1]
181
186
  return $status
182
187
  end
188
+ case rebase
189
+ # Intercept all rebase operations
190
+ saferun hook git-rebase $argv[2..-1]
191
+ return $status
183
192
  case config
184
193
  if string match -q "*core.hooksPath*" $all_args
185
194
  echo "🛑 SafeRun: Blocked attempt to modify hooks path"
@@ -1 +1 @@
1
- {"version":3,"file":"shell-init.js","sourceRoot":"","sources":["../../src/commands/shell-init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell-init.js","sourceRoot":"","sources":["../../src/commands/shell-init.ts"],"names":[],"mappings":"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"}
@@ -512,6 +512,19 @@ class HookRunner {
512
512
  affectedBranch = currentBranch || 'unknown';
513
513
  }
514
514
  const isProtected = (0, git_1.isProtectedBranch)(affectedBranch, protectedBranches);
515
+ // For head-update: check if this is a safe checkout vs dangerous reset
516
+ // Safe: git checkout other-branch (HEAD changes but current branch doesn't lose commits)
517
+ // Dangerous: git reset --hard HEAD~1 (current branch loses commits)
518
+ let isSafeCheckout = false;
519
+ if (operationType === 'head-update' && oldOid && newOid) {
520
+ // If we're just switching branches (not resetting), the branch ref itself won't change
521
+ // The dangerous case is when branch ref moves backwards
522
+ // For now, allow head-update if it's not on a protected branch's own ref
523
+ // The branch-update handler will catch actual branch changes
524
+ // Check if this is just HEAD moving (checkout) vs branch pointer moving (reset)
525
+ // HEAD-only moves are generally safe
526
+ isSafeCheckout = true;
527
+ }
515
528
  // Log the operation
516
529
  await (0, logger_1.logOperation)(context.gitInfo.repoRoot, {
517
530
  event: 'reference-transaction',
@@ -523,6 +536,12 @@ class HookRunner {
523
536
  protected: isProtected,
524
537
  aiDetected: context.aiScore && context.aiScore >= 0.3,
525
538
  });
539
+ // For head-update that's just a checkout, allow it
540
+ if (operationType === 'head-update' && isSafeCheckout) {
541
+ // Just switching branches - allow without blocking
542
+ // The branch-update hook will catch if the branch itself is being modified
543
+ return;
544
+ }
526
545
  // Determine operation risk level and description
527
546
  let riskLevel = 'low';
528
547
  let operationDescription = '';
@@ -1 +1 @@
1
- {"version":3,"file":"hook-runner.js","sourceRoot":"","sources":["../../src/hooks/hook-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook-runner.js","sourceRoot":"","sources":["../../src/hooks/hook-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { InterceptorContext } from './types';
2
+ export declare function interceptRebase(context: InterceptorContext): Promise<number>;
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.interceptRebase = interceptRebase;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const approval_flow_1 = require("../utils/approval-flow");
9
+ const git_1 = require("../utils/git");
10
+ const logger_1 = require("../utils/logger");
11
+ function parseRebaseArgs(args) {
12
+ const interactiveFlags = new Set(['-i', '--interactive']);
13
+ let isInteractive = false;
14
+ let hasOnto = false;
15
+ let target;
16
+ const nonFlags = [];
17
+ for (const arg of args) {
18
+ if (interactiveFlags.has(arg)) {
19
+ isInteractive = true;
20
+ }
21
+ else if (arg === '--onto') {
22
+ hasOnto = true;
23
+ }
24
+ else if (!arg.startsWith('-')) {
25
+ nonFlags.push(arg);
26
+ }
27
+ }
28
+ // First non-flag arg is usually the target (upstream or branch)
29
+ if (nonFlags.length > 0) {
30
+ target = nonFlags[0];
31
+ }
32
+ return { isInteractive, hasOnto, target };
33
+ }
34
+ async function interceptRebase(context) {
35
+ var _a, _b, _c;
36
+ const params = parseRebaseArgs(context.args);
37
+ const repoSlug = context.config.github.repo === 'auto'
38
+ ? (_a = context.gitInfo.repoSlug) !== null && _a !== void 0 ? _a : 'local/repo'
39
+ : context.config.github.repo;
40
+ // Calculate risk score based on rebase type
41
+ let riskScore = 6.0; // Base risk for rebase
42
+ const reasons = ['git_rebase'];
43
+ if (params.isInteractive) {
44
+ riskScore = 8.5; // Interactive rebase is higher risk
45
+ reasons.push('interactive_mode');
46
+ }
47
+ if (params.hasOnto) {
48
+ riskScore = Math.max(riskScore, 7.5);
49
+ reasons.push('onto_mode');
50
+ }
51
+ const humanPreview = params.isInteractive
52
+ ? 'Interactive rebase will allow rewriting, combining, or dropping commits. This can corrupt history if done incorrectly.'
53
+ : `Rebase will move your commits on top of ${params.target || 'the target branch'}, rewriting local history.`;
54
+ // Check if blocking is disabled
55
+ if (((_b = context.modeSettings) === null || _b === void 0 ? void 0 : _b.block_operations) === false) {
56
+ if ((_c = context.modeSettings) === null || _c === void 0 ? void 0 : _c.show_warnings) {
57
+ console.warn(chalk_1.default.yellow('SafeRun warning: git rebase will run without approval (block_operations=false).'));
58
+ }
59
+ return (0, git_1.runGitCommand)(['rebase', ...context.args], {
60
+ cwd: context.gitInfo.repoRoot,
61
+ disableAliases: ['rebase'],
62
+ });
63
+ }
64
+ try {
65
+ const dryRun = await context.client.gitOperation({
66
+ operationType: 'rebase',
67
+ target: repoSlug,
68
+ command: `git rebase ${context.args.join(' ')}`,
69
+ riskScore: riskScore / 10,
70
+ humanPreview,
71
+ requiresApproval: true,
72
+ reasons,
73
+ });
74
+ const flow = new approval_flow_1.ApprovalFlow({
75
+ client: context.client,
76
+ metrics: context.metrics,
77
+ config: context.config,
78
+ modeSettings: context.modeSettings,
79
+ });
80
+ const outcome = await flow.requestApproval(dryRun);
81
+ if (outcome !== approval_flow_1.ApprovalOutcome.Approved) {
82
+ console.error(chalk_1.default.red('SafeRun blocked git rebase. Approval denied or timed out.'));
83
+ (0, logger_1.logOperation)(context.gitInfo.repoRoot, {
84
+ event: 'rebase_blocked',
85
+ operation: 'rebase',
86
+ command: `git rebase ${context.args.join(' ')}`,
87
+ status: 'blocked',
88
+ reason: 'approval_denied',
89
+ });
90
+ return 1;
91
+ }
92
+ (0, logger_1.logOperation)(context.gitInfo.repoRoot, {
93
+ event: 'rebase_approved',
94
+ operation: 'rebase',
95
+ command: `git rebase ${context.args.join(' ')}`,
96
+ status: 'approved',
97
+ changeId: dryRun.changeId,
98
+ });
99
+ return await (0, git_1.runGitCommand)(['rebase', ...context.args], {
100
+ cwd: context.gitInfo.repoRoot,
101
+ disableAliases: ['rebase'],
102
+ });
103
+ }
104
+ catch (error) {
105
+ console.error(chalk_1.default.red('SafeRun error: API unreachable. Blocking rebase for safety.'));
106
+ (0, logger_1.logOperation)(context.gitInfo.repoRoot, {
107
+ event: 'rebase_blocked',
108
+ operation: 'rebase',
109
+ command: `git rebase ${context.args.join(' ')}`,
110
+ status: 'blocked',
111
+ reason: 'api_error',
112
+ });
113
+ return 1;
114
+ }
115
+ }
116
+ //# sourceMappingURL=rebase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rebase.js","sourceRoot":"","sources":["../../src/interceptors/rebase.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export type GitOperationType = 'push' | 'branch' | 'reset' | 'clean' | 'unknown';
1
+ export type GitOperationType = 'push' | 'branch' | 'reset' | 'clean' | 'rebase' | 'unknown';
2
2
  export interface GitOperation {
3
3
  type: GitOperationType;
4
4
  action: string;
@@ -14,5 +14,6 @@ export declare class GitCommandParser {
14
14
  parseBranch(args: string[]): GitOperation;
15
15
  parseReset(args: string[]): GitOperation;
16
16
  parseClean(args: string[]): GitOperation;
17
+ parseRebase(args: string[]): GitOperation;
17
18
  resolveAlias(command: string, cwd?: string): Promise<string[] | null>;
18
19
  }
@@ -15,6 +15,8 @@ class GitCommandParser {
15
15
  return this.parseReset(args);
16
16
  case 'clean':
17
17
  return this.parseClean(args);
18
+ case 'rebase':
19
+ return this.parseRebase(args);
18
20
  default:
19
21
  return {
20
22
  type: 'unknown',
@@ -170,6 +172,30 @@ class GitCommandParser {
170
172
  }
171
173
  return operation;
172
174
  }
175
+ parseRebase(args) {
176
+ const operation = {
177
+ type: 'rebase',
178
+ action: 'rebase',
179
+ targets: [],
180
+ flags: [],
181
+ risk: 'medium',
182
+ };
183
+ const interactiveFlags = new Set(['-i', '--interactive']);
184
+ args.forEach((arg) => {
185
+ if (interactiveFlags.has(arg)) {
186
+ operation.flags.push('interactive');
187
+ operation.risk = 'high';
188
+ }
189
+ if (arg === '--onto') {
190
+ operation.flags.push('onto');
191
+ operation.risk = 'high';
192
+ }
193
+ if (!arg.startsWith('-')) {
194
+ operation.targets.push(arg);
195
+ }
196
+ });
197
+ return operation;
198
+ }
173
199
  async resolveAlias(command, cwd = process.cwd()) {
174
200
  try {
175
201
  const { stdout } = await execFileAsync('git', ['config', '--get', `alias.${command}`], { cwd });
@@ -1 +1 @@
1
- {"version":3,"file":"git-parser.js","sourceRoot":"","sources":["../../src/utils/git-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-parser.js","sourceRoot":"","sources":["../../src/utils/git-parser.ts"],"names":[],"mappings":"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"}
@@ -56,23 +56,30 @@ while IFS=' ' read -r OLD_OID NEW_OID REF_NAME; do
56
56
  BRANCH_NAME="${REF_NAME#refs/heads/}"
57
57
 
58
58
  if [ "$OPERATION" = "delete" ]; then
59
- # Branch deletion (git branch -D)
59
+ # Branch deletion (git branch -D) - dangerous!
60
60
  saferun-hook reference-transaction "branch-delete" "$BRANCH_NAME" "$OLD_OID" "$NEW_OID"
61
61
  STATUS=$?
62
62
  elif [ "$OPERATION" = "update" ]; then
63
- # Branch update (could be reset, rebase, merge)
63
+ # Branch update (could be reset, rebase, merge) - check it
64
64
  saferun-hook reference-transaction "branch-update" "$BRANCH_NAME" "$OLD_OID" "$NEW_OID"
65
65
  STATUS=$?
66
66
  else
67
- # Branch creation - allow
67
+ # Branch creation (git checkout -b, git branch) - SAFE, allow
68
68
  STATUS=0
69
69
  fi
70
70
  ;;
71
71
 
72
72
  HEAD)
73
- # HEAD changed - this is reset, checkout, etc.
74
- saferun-hook reference-transaction "head-update" "HEAD" "$OLD_OID" "$NEW_OID"
75
- STATUS=$?
73
+ # HEAD changed - could be checkout, reset, etc.
74
+ # Only dangerous if OLD_OID is valid (not null) - means we're moving away from something
75
+ if [ "$OLD_OID" = "$NULL_OID" ]; then
76
+ # Initial HEAD set or detached HEAD becoming attached - safe
77
+ STATUS=0
78
+ else
79
+ # HEAD moving from one commit to another - check if dangerous
80
+ saferun-hook reference-transaction "head-update" "HEAD" "$OLD_OID" "$NEW_OID"
81
+ STATUS=$?
82
+ fi
76
83
  ;;
77
84
 
78
85
  refs/tags/*)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saferun/cli",
3
- "version": "0.6.18",
3
+ "version": "0.6.20",
4
4
  "description": "AI Safety Middleware - Protect your Git workflows from dangerous AI agent operations",
5
5
  "author": "SafeRun Team",
6
6
  "license": "MIT",