@saferun/cli 0.5.37 → 0.6.0
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/dist/commands/doctor.d.ts +2 -0
- package/dist/commands/doctor.js +61 -0
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/hook.js +12 -2
- package/dist/commands/hook.js.map +1 -1
- package/dist/commands/init.d.ts +0 -1
- package/dist/commands/init.js +22 -42
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/is-protected.d.ts +10 -0
- package/dist/commands/is-protected.js +40 -0
- package/dist/commands/is-protected.js.map +1 -0
- package/dist/commands/shell-init.js +5 -3
- package/dist/commands/shell-init.js.map +1 -1
- package/dist/commands/uninstall.js +6 -0
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/register-commands.js +9 -0
- package/dist/register-commands.js.map +1 -1
- package/dist/utils/approval-flow.js +1 -1
- package/dist/utils/approval-flow.js.map +1 -1
- package/dist/utils/global-config.d.ts +51 -0
- package/dist/utils/global-config.js +283 -0
- package/dist/utils/global-config.js.map +1 -0
- package/dist/utils/protected-repos.d.ts +64 -0
- package/dist/utils/protected-repos.js +178 -0
- package/dist/utils/protected-repos.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approval-flow.js","sourceRoot":"","sources":["../../src/utils/approval-flow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"approval-flow.js","sourceRoot":"","sources":["../../src/utils/approval-flow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Global configuration management for SafeRun
|
|
3
|
+
* Stores all rules, modes, and settings in ~/.saferun/config.yml
|
|
4
|
+
* This config is NOT affected by git operations in any repository
|
|
5
|
+
*/
|
|
6
|
+
import { SafeRunConfig, ProtectionMode, ModeSettings, OperationRuleConfig } from './config';
|
|
7
|
+
/**
|
|
8
|
+
* Default global configuration
|
|
9
|
+
* These are the baseline security settings
|
|
10
|
+
*/
|
|
11
|
+
export declare const DEFAULT_GLOBAL_CONFIG: SafeRunConfig;
|
|
12
|
+
/**
|
|
13
|
+
* Load global config (sync for performance in shell wrapper)
|
|
14
|
+
*/
|
|
15
|
+
export declare function loadGlobalConfigSync(): SafeRunConfig;
|
|
16
|
+
/**
|
|
17
|
+
* Load global config (async version)
|
|
18
|
+
*/
|
|
19
|
+
export declare function loadGlobalConfig(): Promise<SafeRunConfig>;
|
|
20
|
+
/**
|
|
21
|
+
* Save global config
|
|
22
|
+
*/
|
|
23
|
+
export declare function saveGlobalConfig(config: SafeRunConfig): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Update specific config values
|
|
26
|
+
*/
|
|
27
|
+
export declare function updateGlobalConfig(updates: Partial<SafeRunConfig>): Promise<SafeRunConfig>;
|
|
28
|
+
/**
|
|
29
|
+
* Set protection mode globally
|
|
30
|
+
*/
|
|
31
|
+
export declare function setGlobalMode(mode: ProtectionMode): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* Get current protection mode
|
|
34
|
+
*/
|
|
35
|
+
export declare function getGlobalModeSync(): ProtectionMode;
|
|
36
|
+
/**
|
|
37
|
+
* Get rule for an operation
|
|
38
|
+
*/
|
|
39
|
+
export declare function getRuleSync(operation: string): OperationRuleConfig | undefined;
|
|
40
|
+
/**
|
|
41
|
+
* Get current mode settings
|
|
42
|
+
*/
|
|
43
|
+
export declare function getModeSettingsSync(): ModeSettings;
|
|
44
|
+
/**
|
|
45
|
+
* Check if global config exists
|
|
46
|
+
*/
|
|
47
|
+
export declare function globalConfigExists(): boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Initialize global config with defaults if it doesn't exist
|
|
50
|
+
*/
|
|
51
|
+
export declare function initGlobalConfig(): Promise<boolean>;
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Global configuration management for SafeRun
|
|
4
|
+
* Stores all rules, modes, and settings in ~/.saferun/config.yml
|
|
5
|
+
* This config is NOT affected by git operations in any repository
|
|
6
|
+
*/
|
|
7
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
|
+
};
|
|
10
|
+
var _a;
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.DEFAULT_GLOBAL_CONFIG = void 0;
|
|
13
|
+
exports.loadGlobalConfigSync = loadGlobalConfigSync;
|
|
14
|
+
exports.loadGlobalConfig = loadGlobalConfig;
|
|
15
|
+
exports.saveGlobalConfig = saveGlobalConfig;
|
|
16
|
+
exports.updateGlobalConfig = updateGlobalConfig;
|
|
17
|
+
exports.setGlobalMode = setGlobalMode;
|
|
18
|
+
exports.getGlobalModeSync = getGlobalModeSync;
|
|
19
|
+
exports.getRuleSync = getRuleSync;
|
|
20
|
+
exports.getModeSettingsSync = getModeSettingsSync;
|
|
21
|
+
exports.globalConfigExists = globalConfigExists;
|
|
22
|
+
exports.initGlobalConfig = initGlobalConfig;
|
|
23
|
+
const fs_1 = __importDefault(require("fs"));
|
|
24
|
+
const path_1 = __importDefault(require("path"));
|
|
25
|
+
const os_1 = __importDefault(require("os"));
|
|
26
|
+
const js_yaml_1 = require("js-yaml");
|
|
27
|
+
const GLOBAL_CONFIG_DIR = path_1.default.join(os_1.default.homedir(), '.saferun');
|
|
28
|
+
const GLOBAL_CONFIG_FILE = path_1.default.join(GLOBAL_CONFIG_DIR, 'config.yml');
|
|
29
|
+
/**
|
|
30
|
+
* Default global configuration
|
|
31
|
+
* These are the baseline security settings
|
|
32
|
+
*/
|
|
33
|
+
exports.DEFAULT_GLOBAL_CONFIG = {
|
|
34
|
+
mode: 'block', // Default to block mode for security
|
|
35
|
+
modes: {
|
|
36
|
+
monitor: {
|
|
37
|
+
description: 'Log only, no blocking',
|
|
38
|
+
block_operations: false,
|
|
39
|
+
show_warnings: false,
|
|
40
|
+
send_notifications: false,
|
|
41
|
+
collect_metrics: true,
|
|
42
|
+
},
|
|
43
|
+
warn: {
|
|
44
|
+
description: 'Show warnings but allow operations',
|
|
45
|
+
block_operations: false,
|
|
46
|
+
show_warnings: true,
|
|
47
|
+
send_notifications: true,
|
|
48
|
+
collect_metrics: true,
|
|
49
|
+
},
|
|
50
|
+
block: {
|
|
51
|
+
description: 'Require approval for risky actions',
|
|
52
|
+
block_operations: true,
|
|
53
|
+
require_approval: true,
|
|
54
|
+
collect_metrics: true,
|
|
55
|
+
},
|
|
56
|
+
enforce: {
|
|
57
|
+
description: 'Strict blocking, maximum security',
|
|
58
|
+
block_operations: true,
|
|
59
|
+
require_approval: true,
|
|
60
|
+
collect_metrics: true,
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
api: {
|
|
64
|
+
url: (_a = process.env.SAFERUN_API_URL) !== null && _a !== void 0 ? _a : 'https://saferun-api.up.railway.app',
|
|
65
|
+
timeout: 5000,
|
|
66
|
+
retry_count: 3,
|
|
67
|
+
fail_mode: 'strict',
|
|
68
|
+
error_handling: {
|
|
69
|
+
'403_forbidden': {
|
|
70
|
+
action: 'block',
|
|
71
|
+
message: '🚫 API limit exceeded - operations blocked for safety.',
|
|
72
|
+
},
|
|
73
|
+
'500_server_error': {
|
|
74
|
+
action: 'block',
|
|
75
|
+
message: '🚫 API temporarily unavailable - operation blocked for safety',
|
|
76
|
+
},
|
|
77
|
+
'network_error': {
|
|
78
|
+
action: 'block',
|
|
79
|
+
message: '🚫 Network error - operation blocked for safety',
|
|
80
|
+
},
|
|
81
|
+
'timeout': {
|
|
82
|
+
action: 'block',
|
|
83
|
+
message: '🚫 API timeout - operation blocked for safety',
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
},
|
|
87
|
+
github: {
|
|
88
|
+
repo: 'auto',
|
|
89
|
+
protected_branches: ['main', 'master', 'release/*', 'production'],
|
|
90
|
+
branch_rules: [
|
|
91
|
+
{ pattern: 'feature/*', risk_level: 'low', allow_force_push: true },
|
|
92
|
+
{ pattern: 'hotfix/*', risk_level: 'medium', require_approval: false },
|
|
93
|
+
{ pattern: 'experiment/*', risk_level: 'low', skip_checks: true },
|
|
94
|
+
],
|
|
95
|
+
},
|
|
96
|
+
approval_timeout: {
|
|
97
|
+
action: 'reject',
|
|
98
|
+
duration: 7200, // 2 hours
|
|
99
|
+
reminders: 3,
|
|
100
|
+
reminder_interval: 1800,
|
|
101
|
+
},
|
|
102
|
+
rules: {
|
|
103
|
+
force_push: {
|
|
104
|
+
action: 'require_approval',
|
|
105
|
+
risk_score: 8,
|
|
106
|
+
timeout_action: 'reject',
|
|
107
|
+
timeout_duration: 7200,
|
|
108
|
+
},
|
|
109
|
+
branch_delete: {
|
|
110
|
+
action: 'require_approval',
|
|
111
|
+
risk_score: 6,
|
|
112
|
+
timeout_action: 'reject',
|
|
113
|
+
timeout_duration: 7200,
|
|
114
|
+
exclude_patterns: ['tmp/*', 'test/*'],
|
|
115
|
+
},
|
|
116
|
+
reset_hard: {
|
|
117
|
+
action: 'require_approval',
|
|
118
|
+
risk_score: 8,
|
|
119
|
+
timeout_action: 'reject',
|
|
120
|
+
timeout_duration: 7200,
|
|
121
|
+
max_commits_back: 5,
|
|
122
|
+
},
|
|
123
|
+
clean: {
|
|
124
|
+
action: 'require_approval',
|
|
125
|
+
risk_score: 6,
|
|
126
|
+
timeout_action: 'reject',
|
|
127
|
+
timeout_duration: 3600,
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
notifications: {
|
|
131
|
+
slack: {
|
|
132
|
+
enabled: true,
|
|
133
|
+
channel: '#dev-safety',
|
|
134
|
+
},
|
|
135
|
+
},
|
|
136
|
+
telemetry: {
|
|
137
|
+
enabled: true,
|
|
138
|
+
anonymous: true,
|
|
139
|
+
events: [
|
|
140
|
+
'operation_blocked',
|
|
141
|
+
'operation_allowed',
|
|
142
|
+
'approval_requested',
|
|
143
|
+
'approval_granted',
|
|
144
|
+
'installation',
|
|
145
|
+
'uninstallation',
|
|
146
|
+
],
|
|
147
|
+
},
|
|
148
|
+
};
|
|
149
|
+
/**
|
|
150
|
+
* Ensure global config directory exists
|
|
151
|
+
*/
|
|
152
|
+
function ensureGlobalConfigDir() {
|
|
153
|
+
if (!fs_1.default.existsSync(GLOBAL_CONFIG_DIR)) {
|
|
154
|
+
fs_1.default.mkdirSync(GLOBAL_CONFIG_DIR, { mode: 0o700, recursive: true });
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Load global config (sync for performance in shell wrapper)
|
|
159
|
+
*/
|
|
160
|
+
function loadGlobalConfigSync() {
|
|
161
|
+
try {
|
|
162
|
+
if (!fs_1.default.existsSync(GLOBAL_CONFIG_FILE)) {
|
|
163
|
+
return { ...exports.DEFAULT_GLOBAL_CONFIG };
|
|
164
|
+
}
|
|
165
|
+
const content = fs_1.default.readFileSync(GLOBAL_CONFIG_FILE, 'utf-8');
|
|
166
|
+
const parsed = (0, js_yaml_1.load)(content);
|
|
167
|
+
// Deep merge with defaults
|
|
168
|
+
return mergeConfig(exports.DEFAULT_GLOBAL_CONFIG, parsed);
|
|
169
|
+
}
|
|
170
|
+
catch {
|
|
171
|
+
return { ...exports.DEFAULT_GLOBAL_CONFIG };
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Load global config (async version)
|
|
176
|
+
*/
|
|
177
|
+
async function loadGlobalConfig() {
|
|
178
|
+
return loadGlobalConfigSync();
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Save global config
|
|
182
|
+
*/
|
|
183
|
+
async function saveGlobalConfig(config) {
|
|
184
|
+
ensureGlobalConfigDir();
|
|
185
|
+
// Only save non-default values to keep file clean
|
|
186
|
+
const content = (0, js_yaml_1.dump)(config, { lineWidth: 120 });
|
|
187
|
+
await fs_1.default.promises.writeFile(GLOBAL_CONFIG_FILE, content, { mode: 0o600 });
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Update specific config values
|
|
191
|
+
*/
|
|
192
|
+
async function updateGlobalConfig(updates) {
|
|
193
|
+
const current = await loadGlobalConfig();
|
|
194
|
+
const updated = mergeConfig(current, updates);
|
|
195
|
+
await saveGlobalConfig(updated);
|
|
196
|
+
return updated;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Set protection mode globally
|
|
200
|
+
*/
|
|
201
|
+
async function setGlobalMode(mode) {
|
|
202
|
+
const config = await loadGlobalConfig();
|
|
203
|
+
config.mode = mode;
|
|
204
|
+
await saveGlobalConfig(config);
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Get current protection mode
|
|
208
|
+
*/
|
|
209
|
+
function getGlobalModeSync() {
|
|
210
|
+
const config = loadGlobalConfigSync();
|
|
211
|
+
return config.mode;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Get rule for an operation
|
|
215
|
+
*/
|
|
216
|
+
function getRuleSync(operation) {
|
|
217
|
+
const config = loadGlobalConfigSync();
|
|
218
|
+
return config.rules[operation];
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Get current mode settings
|
|
222
|
+
*/
|
|
223
|
+
function getModeSettingsSync() {
|
|
224
|
+
const config = loadGlobalConfigSync();
|
|
225
|
+
return config.modes[config.mode] || config.modes['block'];
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Check if global config exists
|
|
229
|
+
*/
|
|
230
|
+
function globalConfigExists() {
|
|
231
|
+
return fs_1.default.existsSync(GLOBAL_CONFIG_FILE);
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Initialize global config with defaults if it doesn't exist
|
|
235
|
+
*/
|
|
236
|
+
async function initGlobalConfig() {
|
|
237
|
+
if (globalConfigExists()) {
|
|
238
|
+
return false; // Already exists
|
|
239
|
+
}
|
|
240
|
+
await saveGlobalConfig(exports.DEFAULT_GLOBAL_CONFIG);
|
|
241
|
+
return true;
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Deep merge configs (source overrides target)
|
|
245
|
+
*/
|
|
246
|
+
function mergeConfig(target, source) {
|
|
247
|
+
const result = { ...target };
|
|
248
|
+
for (const [key, value] of Object.entries(source)) {
|
|
249
|
+
if (value === undefined || value === null)
|
|
250
|
+
continue;
|
|
251
|
+
if (Array.isArray(value)) {
|
|
252
|
+
result[key] = [...value];
|
|
253
|
+
}
|
|
254
|
+
else if (typeof value === 'object') {
|
|
255
|
+
result[key] = mergeDeep(result[key] || {}, value);
|
|
256
|
+
}
|
|
257
|
+
else {
|
|
258
|
+
result[key] = value;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
return result;
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Deep merge any objects
|
|
265
|
+
*/
|
|
266
|
+
function mergeDeep(target, source) {
|
|
267
|
+
const result = { ...target };
|
|
268
|
+
for (const [key, value] of Object.entries(source)) {
|
|
269
|
+
if (value === undefined || value === null)
|
|
270
|
+
continue;
|
|
271
|
+
if (Array.isArray(value)) {
|
|
272
|
+
result[key] = [...value];
|
|
273
|
+
}
|
|
274
|
+
else if (typeof value === 'object') {
|
|
275
|
+
result[key] = mergeDeep(result[key] || {}, value);
|
|
276
|
+
}
|
|
277
|
+
else {
|
|
278
|
+
result[key] = value;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
return result;
|
|
282
|
+
}
|
|
283
|
+
//# sourceMappingURL=global-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-config.js","sourceRoot":"","sources":["../../src/utils/global-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Protected repositories registry
|
|
3
|
+
* Stores list of protected repos in ~/.saferun/protected-repos.json
|
|
4
|
+
* This is invisible to AI agents and cannot be modified through git operations
|
|
5
|
+
*/
|
|
6
|
+
export interface ProtectedRepo {
|
|
7
|
+
path: string;
|
|
8
|
+
name?: string;
|
|
9
|
+
github?: string;
|
|
10
|
+
addedAt: string;
|
|
11
|
+
mode?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface ProtectedReposRegistry {
|
|
14
|
+
version: number;
|
|
15
|
+
repos: ProtectedRepo[];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Load protected repos registry (sync for shell wrapper performance)
|
|
19
|
+
*/
|
|
20
|
+
export declare function loadProtectedReposSync(): ProtectedReposRegistry;
|
|
21
|
+
/**
|
|
22
|
+
* Load protected repos registry (async version)
|
|
23
|
+
*/
|
|
24
|
+
export declare function loadProtectedRepos(): Promise<ProtectedReposRegistry>;
|
|
25
|
+
/**
|
|
26
|
+
* Save protected repos registry
|
|
27
|
+
*/
|
|
28
|
+
export declare function saveProtectedRepos(registry: ProtectedReposRegistry): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Check if a path is protected (sync for shell wrapper)
|
|
31
|
+
*/
|
|
32
|
+
export declare function isRepoProtectedSync(repoPath: string): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Check if a path is protected (async version)
|
|
35
|
+
*/
|
|
36
|
+
export declare function isRepoProtected(repoPath: string): Promise<boolean>;
|
|
37
|
+
/**
|
|
38
|
+
* Get protected repo info by path
|
|
39
|
+
*/
|
|
40
|
+
export declare function getProtectedRepoSync(repoPath: string): ProtectedRepo | undefined;
|
|
41
|
+
/**
|
|
42
|
+
* Get protected repo info by path (async version)
|
|
43
|
+
*/
|
|
44
|
+
export declare function getProtectedRepo(repoPath: string): Promise<ProtectedRepo | undefined>;
|
|
45
|
+
/**
|
|
46
|
+
* Register a repository as protected
|
|
47
|
+
*/
|
|
48
|
+
export declare function registerProtectedRepo(repoPath: string, options?: {
|
|
49
|
+
name?: string;
|
|
50
|
+
github?: string;
|
|
51
|
+
mode?: string;
|
|
52
|
+
}): Promise<void>;
|
|
53
|
+
/**
|
|
54
|
+
* Unregister a repository (remove protection)
|
|
55
|
+
*/
|
|
56
|
+
export declare function unregisterProtectedRepo(repoPath: string): Promise<boolean>;
|
|
57
|
+
/**
|
|
58
|
+
* List all protected repositories
|
|
59
|
+
*/
|
|
60
|
+
export declare function listProtectedRepos(): Promise<ProtectedRepo[]>;
|
|
61
|
+
/**
|
|
62
|
+
* Update protection mode for a repo
|
|
63
|
+
*/
|
|
64
|
+
export declare function updateRepoMode(repoPath: string, mode: string): Promise<boolean>;
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Protected repositories registry
|
|
4
|
+
* Stores list of protected repos in ~/.saferun/protected-repos.json
|
|
5
|
+
* This is invisible to AI agents and cannot be modified through git operations
|
|
6
|
+
*/
|
|
7
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
|
+
};
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.loadProtectedReposSync = loadProtectedReposSync;
|
|
12
|
+
exports.loadProtectedRepos = loadProtectedRepos;
|
|
13
|
+
exports.saveProtectedRepos = saveProtectedRepos;
|
|
14
|
+
exports.isRepoProtectedSync = isRepoProtectedSync;
|
|
15
|
+
exports.isRepoProtected = isRepoProtected;
|
|
16
|
+
exports.getProtectedRepoSync = getProtectedRepoSync;
|
|
17
|
+
exports.getProtectedRepo = getProtectedRepo;
|
|
18
|
+
exports.registerProtectedRepo = registerProtectedRepo;
|
|
19
|
+
exports.unregisterProtectedRepo = unregisterProtectedRepo;
|
|
20
|
+
exports.listProtectedRepos = listProtectedRepos;
|
|
21
|
+
exports.updateRepoMode = updateRepoMode;
|
|
22
|
+
const fs_1 = __importDefault(require("fs"));
|
|
23
|
+
const path_1 = __importDefault(require("path"));
|
|
24
|
+
const os_1 = __importDefault(require("os"));
|
|
25
|
+
const GLOBAL_CONFIG_DIR = path_1.default.join(os_1.default.homedir(), '.saferun');
|
|
26
|
+
const PROTECTED_REPOS_FILE = path_1.default.join(GLOBAL_CONFIG_DIR, 'protected-repos.json');
|
|
27
|
+
const DEFAULT_REGISTRY = {
|
|
28
|
+
version: 1,
|
|
29
|
+
repos: [],
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Ensure global config directory exists
|
|
33
|
+
*/
|
|
34
|
+
function ensureGlobalConfigDir() {
|
|
35
|
+
if (!fs_1.default.existsSync(GLOBAL_CONFIG_DIR)) {
|
|
36
|
+
fs_1.default.mkdirSync(GLOBAL_CONFIG_DIR, { mode: 0o700, recursive: true });
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Load protected repos registry (sync for shell wrapper performance)
|
|
41
|
+
*/
|
|
42
|
+
function loadProtectedReposSync() {
|
|
43
|
+
try {
|
|
44
|
+
if (!fs_1.default.existsSync(PROTECTED_REPOS_FILE)) {
|
|
45
|
+
return DEFAULT_REGISTRY;
|
|
46
|
+
}
|
|
47
|
+
const content = fs_1.default.readFileSync(PROTECTED_REPOS_FILE, 'utf-8');
|
|
48
|
+
const registry = JSON.parse(content);
|
|
49
|
+
// Migration: ensure version field
|
|
50
|
+
if (!registry.version) {
|
|
51
|
+
registry.version = 1;
|
|
52
|
+
}
|
|
53
|
+
return registry;
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
return DEFAULT_REGISTRY;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Load protected repos registry (async version)
|
|
61
|
+
*/
|
|
62
|
+
async function loadProtectedRepos() {
|
|
63
|
+
return loadProtectedReposSync();
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Save protected repos registry
|
|
67
|
+
*/
|
|
68
|
+
async function saveProtectedRepos(registry) {
|
|
69
|
+
ensureGlobalConfigDir();
|
|
70
|
+
const content = JSON.stringify(registry, null, 2);
|
|
71
|
+
await fs_1.default.promises.writeFile(PROTECTED_REPOS_FILE, content, { mode: 0o600 });
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Normalize path for comparison (resolve symlinks, remove trailing slashes)
|
|
75
|
+
*/
|
|
76
|
+
function normalizePath(p) {
|
|
77
|
+
try {
|
|
78
|
+
// Resolve to absolute path and remove trailing slashes
|
|
79
|
+
const resolved = path_1.default.resolve(p);
|
|
80
|
+
return resolved.replace(/\/+$/, '');
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
return p.replace(/\/+$/, '');
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Check if a path is protected (sync for shell wrapper)
|
|
88
|
+
*/
|
|
89
|
+
function isRepoProtectedSync(repoPath) {
|
|
90
|
+
const registry = loadProtectedReposSync();
|
|
91
|
+
const normalizedPath = normalizePath(repoPath);
|
|
92
|
+
return registry.repos.some(repo => normalizePath(repo.path) === normalizedPath);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Check if a path is protected (async version)
|
|
96
|
+
*/
|
|
97
|
+
async function isRepoProtected(repoPath) {
|
|
98
|
+
return isRepoProtectedSync(repoPath);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Get protected repo info by path
|
|
102
|
+
*/
|
|
103
|
+
function getProtectedRepoSync(repoPath) {
|
|
104
|
+
const registry = loadProtectedReposSync();
|
|
105
|
+
const normalizedPath = normalizePath(repoPath);
|
|
106
|
+
return registry.repos.find(repo => normalizePath(repo.path) === normalizedPath);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Get protected repo info by path (async version)
|
|
110
|
+
*/
|
|
111
|
+
async function getProtectedRepo(repoPath) {
|
|
112
|
+
return getProtectedRepoSync(repoPath);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Register a repository as protected
|
|
116
|
+
*/
|
|
117
|
+
async function registerProtectedRepo(repoPath, options = {}) {
|
|
118
|
+
const registry = await loadProtectedRepos();
|
|
119
|
+
const normalizedPath = normalizePath(repoPath);
|
|
120
|
+
// Check if already registered
|
|
121
|
+
const existingIndex = registry.repos.findIndex(repo => normalizePath(repo.path) === normalizedPath);
|
|
122
|
+
const newRepo = {
|
|
123
|
+
path: normalizedPath,
|
|
124
|
+
name: options.name,
|
|
125
|
+
github: options.github,
|
|
126
|
+
addedAt: new Date().toISOString(),
|
|
127
|
+
mode: options.mode,
|
|
128
|
+
};
|
|
129
|
+
if (existingIndex >= 0) {
|
|
130
|
+
// Update existing
|
|
131
|
+
registry.repos[existingIndex] = {
|
|
132
|
+
...registry.repos[existingIndex],
|
|
133
|
+
...newRepo,
|
|
134
|
+
addedAt: registry.repos[existingIndex].addedAt, // Keep original addedAt
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
// Add new
|
|
139
|
+
registry.repos.push(newRepo);
|
|
140
|
+
}
|
|
141
|
+
await saveProtectedRepos(registry);
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Unregister a repository (remove protection)
|
|
145
|
+
*/
|
|
146
|
+
async function unregisterProtectedRepo(repoPath) {
|
|
147
|
+
const registry = await loadProtectedRepos();
|
|
148
|
+
const normalizedPath = normalizePath(repoPath);
|
|
149
|
+
const initialLength = registry.repos.length;
|
|
150
|
+
registry.repos = registry.repos.filter(repo => normalizePath(repo.path) !== normalizedPath);
|
|
151
|
+
if (registry.repos.length < initialLength) {
|
|
152
|
+
await saveProtectedRepos(registry);
|
|
153
|
+
return true;
|
|
154
|
+
}
|
|
155
|
+
return false;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* List all protected repositories
|
|
159
|
+
*/
|
|
160
|
+
async function listProtectedRepos() {
|
|
161
|
+
const registry = await loadProtectedRepos();
|
|
162
|
+
return registry.repos;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Update protection mode for a repo
|
|
166
|
+
*/
|
|
167
|
+
async function updateRepoMode(repoPath, mode) {
|
|
168
|
+
const registry = await loadProtectedRepos();
|
|
169
|
+
const normalizedPath = normalizePath(repoPath);
|
|
170
|
+
const repo = registry.repos.find(r => normalizePath(r.path) === normalizedPath);
|
|
171
|
+
if (repo) {
|
|
172
|
+
repo.mode = mode;
|
|
173
|
+
await saveProtectedRepos(registry);
|
|
174
|
+
return true;
|
|
175
|
+
}
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
//# sourceMappingURL=protected-repos.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protected-repos.js","sourceRoot":"","sources":["../../src/utils/protected-repos.ts"],"names":[],"mappings":"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"}
|