@node9/proxy 1.67.4 → 1.67.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/README.md +1 -3
- package/dist/cli.js +1011 -1385
- package/dist/cli.mjs +1013 -1387
- package/dist/dashboard.mjs +17 -13
- package/dist/index.js +18 -14
- package/dist/index.mjs +18 -14
- package/package.json +1 -1
package/dist/dashboard.mjs
CHANGED
|
@@ -2376,7 +2376,11 @@ var init_config_schema = __esm({
|
|
|
2376
2376
|
settings: z.object({
|
|
2377
2377
|
mode: z.enum(["standard", "strict", "audit", "observe"]).optional(),
|
|
2378
2378
|
autoStartDaemon: z.boolean().optional(),
|
|
2379
|
-
enableUndo:
|
|
2379
|
+
// enableUndo / policy.snapshot: removed with the undo feature. The
|
|
2380
|
+
// schema strips undeclared keys silently (plain zod object — no
|
|
2381
|
+
// .strict(), no .passthrough()), so a config still carrying them stays
|
|
2382
|
+
// valid and simply loses them. Keeping the fields would instead make
|
|
2383
|
+
// `node9_config_get` advertise a removed feature as a live knob.
|
|
2380
2384
|
enableHookLogDebug: z.boolean().optional(),
|
|
2381
2385
|
approvalTimeoutMs: z.number().nonnegative().optional(),
|
|
2382
2386
|
approvalTimeoutSeconds: z.number().nonnegative().optional(),
|
|
@@ -2428,11 +2432,6 @@ var init_config_schema = __esm({
|
|
|
2428
2432
|
ignoredTools: z.array(z.string()).optional(),
|
|
2429
2433
|
toolInspection: z.record(z.string()).optional(),
|
|
2430
2434
|
smartRules: z.array(SmartRuleSchema).optional(),
|
|
2431
|
-
snapshot: z.object({
|
|
2432
|
-
tools: z.array(z.string()).optional(),
|
|
2433
|
-
onlyPaths: z.array(z.string()).optional(),
|
|
2434
|
-
ignorePaths: z.array(z.string()).optional()
|
|
2435
|
-
}).optional(),
|
|
2436
2435
|
dlp: z.object({
|
|
2437
2436
|
enabled: z.boolean().optional(),
|
|
2438
2437
|
scanIgnoredTools: z.boolean().optional(),
|
|
@@ -2597,13 +2596,18 @@ var init_config = __esm({
|
|
|
2597
2596
|
settings: {
|
|
2598
2597
|
mode: "standard",
|
|
2599
2598
|
autoStartDaemon: true,
|
|
2600
|
-
//
|
|
2601
|
-
//
|
|
2602
|
-
//
|
|
2603
|
-
//
|
|
2604
|
-
//
|
|
2605
|
-
//
|
|
2606
|
-
//
|
|
2599
|
+
// The undo feature was REMOVED. This default is one of two places that say
|
|
2600
|
+
// so; the other is the pin further down, which overwrites whatever a config
|
|
2601
|
+
// file, the dashboard or the cloud supplies. Setting `enableUndo` anywhere
|
|
2602
|
+
// has no effect — do not restore the advice that used to live here, because
|
|
2603
|
+
// a comment recommending a knob that is silently discarded is the same lie
|
|
2604
|
+
// on disk the pin exists to prevent.
|
|
2605
|
+
//
|
|
2606
|
+
// Why it went: the store was a per-project bare git repo with no size
|
|
2607
|
+
// ceiling, and eviction dropped the index row without deleting the objects.
|
|
2608
|
+
// On one machine it reached 378G (352G of it orphaned tmp_pack_* from an
|
|
2609
|
+
// interrupted `git gc`) and filled the disk. A security tool must not be
|
|
2610
|
+
// what fills a customer's disk. Leftovers: `node9 undo --purge`.
|
|
2607
2611
|
enableUndo: false,
|
|
2608
2612
|
enableHookLogDebug: true,
|
|
2609
2613
|
approvalTimeoutMs: 12e4,
|
package/dist/index.js
CHANGED
|
@@ -295,7 +295,11 @@ var ConfigFileSchema = import_zod.z.object({
|
|
|
295
295
|
settings: import_zod.z.object({
|
|
296
296
|
mode: import_zod.z.enum(["standard", "strict", "audit", "observe"]).optional(),
|
|
297
297
|
autoStartDaemon: import_zod.z.boolean().optional(),
|
|
298
|
-
enableUndo:
|
|
298
|
+
// enableUndo / policy.snapshot: removed with the undo feature. The
|
|
299
|
+
// schema strips undeclared keys silently (plain zod object — no
|
|
300
|
+
// .strict(), no .passthrough()), so a config still carrying them stays
|
|
301
|
+
// valid and simply loses them. Keeping the fields would instead make
|
|
302
|
+
// `node9_config_get` advertise a removed feature as a live knob.
|
|
299
303
|
enableHookLogDebug: import_zod.z.boolean().optional(),
|
|
300
304
|
approvalTimeoutMs: import_zod.z.number().nonnegative().optional(),
|
|
301
305
|
approvalTimeoutSeconds: import_zod.z.number().nonnegative().optional(),
|
|
@@ -347,11 +351,6 @@ var ConfigFileSchema = import_zod.z.object({
|
|
|
347
351
|
ignoredTools: import_zod.z.array(import_zod.z.string()).optional(),
|
|
348
352
|
toolInspection: import_zod.z.record(import_zod.z.string()).optional(),
|
|
349
353
|
smartRules: import_zod.z.array(SmartRuleSchema).optional(),
|
|
350
|
-
snapshot: import_zod.z.object({
|
|
351
|
-
tools: import_zod.z.array(import_zod.z.string()).optional(),
|
|
352
|
-
onlyPaths: import_zod.z.array(import_zod.z.string()).optional(),
|
|
353
|
-
ignorePaths: import_zod.z.array(import_zod.z.string()).optional()
|
|
354
|
-
}).optional(),
|
|
355
354
|
dlp: import_zod.z.object({
|
|
356
355
|
enabled: import_zod.z.boolean().optional(),
|
|
357
356
|
scanIgnoredTools: import_zod.z.boolean().optional(),
|
|
@@ -4181,13 +4180,18 @@ var DEFAULT_CONFIG = {
|
|
|
4181
4180
|
settings: {
|
|
4182
4181
|
mode: "standard",
|
|
4183
4182
|
autoStartDaemon: true,
|
|
4184
|
-
//
|
|
4185
|
-
//
|
|
4186
|
-
//
|
|
4187
|
-
//
|
|
4188
|
-
//
|
|
4189
|
-
//
|
|
4190
|
-
//
|
|
4183
|
+
// The undo feature was REMOVED. This default is one of two places that say
|
|
4184
|
+
// so; the other is the pin further down, which overwrites whatever a config
|
|
4185
|
+
// file, the dashboard or the cloud supplies. Setting `enableUndo` anywhere
|
|
4186
|
+
// has no effect — do not restore the advice that used to live here, because
|
|
4187
|
+
// a comment recommending a knob that is silently discarded is the same lie
|
|
4188
|
+
// on disk the pin exists to prevent.
|
|
4189
|
+
//
|
|
4190
|
+
// Why it went: the store was a per-project bare git repo with no size
|
|
4191
|
+
// ceiling, and eviction dropped the index row without deleting the objects.
|
|
4192
|
+
// On one machine it reached 378G (352G of it orphaned tmp_pack_* from an
|
|
4193
|
+
// interrupted `git gc`) and filled the disk. A security tool must not be
|
|
4194
|
+
// what fills a customer's disk. Leftovers: `node9 undo --purge`.
|
|
4191
4195
|
enableUndo: false,
|
|
4192
4196
|
enableHookLogDebug: true,
|
|
4193
4197
|
approvalTimeoutMs: 12e4,
|
|
@@ -4597,7 +4601,6 @@ function getConfig(cwd) {
|
|
|
4597
4601
|
const p = source.policy || {};
|
|
4598
4602
|
if (s.mode !== void 0) mergedSettings.mode = s.mode;
|
|
4599
4603
|
if (s.autoStartDaemon !== void 0) mergedSettings.autoStartDaemon = s.autoStartDaemon;
|
|
4600
|
-
if (s.enableUndo !== void 0) mergedSettings.enableUndo = s.enableUndo;
|
|
4601
4604
|
if (s.enableHookLogDebug !== void 0)
|
|
4602
4605
|
mergedSettings.enableHookLogDebug = s.enableHookLogDebug;
|
|
4603
4606
|
if (s.approvers) mergedSettings.approvers = { ...mergedSettings.approvers, ...s.approvers };
|
|
@@ -4974,6 +4977,7 @@ function getConfig(cwd) {
|
|
|
4974
4977
|
mergedPolicy.snapshot.tools = [...new Set(mergedPolicy.snapshot.tools)];
|
|
4975
4978
|
mergedPolicy.snapshot.onlyPaths = [...new Set(mergedPolicy.snapshot.onlyPaths)];
|
|
4976
4979
|
mergedPolicy.snapshot.ignorePaths = [...new Set(mergedPolicy.snapshot.ignorePaths)];
|
|
4980
|
+
mergedSettings.enableUndo = false;
|
|
4977
4981
|
const result = {
|
|
4978
4982
|
settings: mergedSettings,
|
|
4979
4983
|
policy: mergedPolicy,
|
package/dist/index.mjs
CHANGED
|
@@ -265,7 +265,11 @@ var ConfigFileSchema = z.object({
|
|
|
265
265
|
settings: z.object({
|
|
266
266
|
mode: z.enum(["standard", "strict", "audit", "observe"]).optional(),
|
|
267
267
|
autoStartDaemon: z.boolean().optional(),
|
|
268
|
-
enableUndo:
|
|
268
|
+
// enableUndo / policy.snapshot: removed with the undo feature. The
|
|
269
|
+
// schema strips undeclared keys silently (plain zod object — no
|
|
270
|
+
// .strict(), no .passthrough()), so a config still carrying them stays
|
|
271
|
+
// valid and simply loses them. Keeping the fields would instead make
|
|
272
|
+
// `node9_config_get` advertise a removed feature as a live knob.
|
|
269
273
|
enableHookLogDebug: z.boolean().optional(),
|
|
270
274
|
approvalTimeoutMs: z.number().nonnegative().optional(),
|
|
271
275
|
approvalTimeoutSeconds: z.number().nonnegative().optional(),
|
|
@@ -317,11 +321,6 @@ var ConfigFileSchema = z.object({
|
|
|
317
321
|
ignoredTools: z.array(z.string()).optional(),
|
|
318
322
|
toolInspection: z.record(z.string()).optional(),
|
|
319
323
|
smartRules: z.array(SmartRuleSchema).optional(),
|
|
320
|
-
snapshot: z.object({
|
|
321
|
-
tools: z.array(z.string()).optional(),
|
|
322
|
-
onlyPaths: z.array(z.string()).optional(),
|
|
323
|
-
ignorePaths: z.array(z.string()).optional()
|
|
324
|
-
}).optional(),
|
|
325
324
|
dlp: z.object({
|
|
326
325
|
enabled: z.boolean().optional(),
|
|
327
326
|
scanIgnoredTools: z.boolean().optional(),
|
|
@@ -4151,13 +4150,18 @@ var DEFAULT_CONFIG = {
|
|
|
4151
4150
|
settings: {
|
|
4152
4151
|
mode: "standard",
|
|
4153
4152
|
autoStartDaemon: true,
|
|
4154
|
-
//
|
|
4155
|
-
//
|
|
4156
|
-
//
|
|
4157
|
-
//
|
|
4158
|
-
//
|
|
4159
|
-
//
|
|
4160
|
-
//
|
|
4153
|
+
// The undo feature was REMOVED. This default is one of two places that say
|
|
4154
|
+
// so; the other is the pin further down, which overwrites whatever a config
|
|
4155
|
+
// file, the dashboard or the cloud supplies. Setting `enableUndo` anywhere
|
|
4156
|
+
// has no effect — do not restore the advice that used to live here, because
|
|
4157
|
+
// a comment recommending a knob that is silently discarded is the same lie
|
|
4158
|
+
// on disk the pin exists to prevent.
|
|
4159
|
+
//
|
|
4160
|
+
// Why it went: the store was a per-project bare git repo with no size
|
|
4161
|
+
// ceiling, and eviction dropped the index row without deleting the objects.
|
|
4162
|
+
// On one machine it reached 378G (352G of it orphaned tmp_pack_* from an
|
|
4163
|
+
// interrupted `git gc`) and filled the disk. A security tool must not be
|
|
4164
|
+
// what fills a customer's disk. Leftovers: `node9 undo --purge`.
|
|
4161
4165
|
enableUndo: false,
|
|
4162
4166
|
enableHookLogDebug: true,
|
|
4163
4167
|
approvalTimeoutMs: 12e4,
|
|
@@ -4567,7 +4571,6 @@ function getConfig(cwd) {
|
|
|
4567
4571
|
const p = source.policy || {};
|
|
4568
4572
|
if (s.mode !== void 0) mergedSettings.mode = s.mode;
|
|
4569
4573
|
if (s.autoStartDaemon !== void 0) mergedSettings.autoStartDaemon = s.autoStartDaemon;
|
|
4570
|
-
if (s.enableUndo !== void 0) mergedSettings.enableUndo = s.enableUndo;
|
|
4571
4574
|
if (s.enableHookLogDebug !== void 0)
|
|
4572
4575
|
mergedSettings.enableHookLogDebug = s.enableHookLogDebug;
|
|
4573
4576
|
if (s.approvers) mergedSettings.approvers = { ...mergedSettings.approvers, ...s.approvers };
|
|
@@ -4944,6 +4947,7 @@ function getConfig(cwd) {
|
|
|
4944
4947
|
mergedPolicy.snapshot.tools = [...new Set(mergedPolicy.snapshot.tools)];
|
|
4945
4948
|
mergedPolicy.snapshot.onlyPaths = [...new Set(mergedPolicy.snapshot.onlyPaths)];
|
|
4946
4949
|
mergedPolicy.snapshot.ignorePaths = [...new Set(mergedPolicy.snapshot.ignorePaths)];
|
|
4950
|
+
mergedSettings.enableUndo = false;
|
|
4947
4951
|
const result = {
|
|
4948
4952
|
settings: mergedSettings,
|
|
4949
4953
|
policy: mergedPolicy,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@node9/proxy",
|
|
3
|
-
"version": "1.67.
|
|
3
|
+
"version": "1.67.5",
|
|
4
4
|
"description": "The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|