@monoes/monomindcli 2.16.10 → 2.16.12

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.
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Deleted-vs-unmounted rule for `cleanup --data` (#347): decides whether a
3
+ * recorded project path is gone because it was deleted, or only because the
4
+ * volume holding it is not attached right now.
5
+ */
6
+ /** The two filesystem questions the rule asks; injectable for tests. */
7
+ export interface OriginFs {
8
+ exists(p: string): boolean;
9
+ /** st_dev of `p`; throws when it cannot be stat-ed. */
10
+ dev(p: string): number;
11
+ }
12
+ /**
13
+ * True when a recorded project path is gone because it was deleted, not
14
+ * because the volume holding it is unmounted. Walks up to the nearest existing
15
+ * ancestor: when that is the path's own parent (the old rule), a well-known
16
+ * local root (home, /tmp, /var/tmp, the OS temp dir — a tmpfs /tmp is a mount,
17
+ * but its children vanishing means deletion) or a directory on the same device
18
+ * as its own parent, the path was deleted — this covers a whole deleted test
19
+ * root. When it is a mount point (`/`, a network share's mount) or a
20
+ * removable-media directory, the missing piece may be a volume that is not
21
+ * attached right now, so the path is kept.
22
+ */
23
+ export declare function isProvablyDeleted(p: string, fs?: OriginFs, localRoots?: readonly string[]): boolean;
24
+ //# sourceMappingURL=cleanup-origin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanup-origin.d.ts","sourceRoot":"","sources":["../../../src/commands/cleanup-origin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,wEAAwE;AACxE,MAAM,WAAW,QAAQ;IACvB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,uDAAuD;IACvD,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAkCD;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,MAAM,EACT,EAAE,GAAE,QAAuB,EAC3B,UAAU,GAAE,SAAS,MAAM,EAAwB,GAClD,OAAO,CAUT"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Deleted-vs-unmounted rule for `cleanup --data` (#347): decides whether a
3
+ * recorded project path is gone because it was deleted, or only because the
4
+ * volume holding it is not attached right now.
5
+ */
6
+ import { existsSync, realpathSync, statSync } from 'node:fs';
7
+ import { homedir, tmpdir } from 'node:os';
8
+ import { dirname, resolve } from 'node:path';
9
+ const nodeOriginFs = {
10
+ exists: existsSync,
11
+ dev: (p) => statSync(p).dev,
12
+ };
13
+ /** Where removable volumes appear; a missing path under one may just be unplugged. */
14
+ const MEDIA_ROOTS = ['/Volumes', '/media', '/mnt', '/run/media'];
15
+ /** Home, /tmp, /var/tmp and the OS temp dir, as given and with symlinks resolved. */
16
+ function defaultLocalRoots() {
17
+ const roots = new Set();
18
+ for (const r of [homedir(), '/tmp', '/var/tmp', tmpdir()]) {
19
+ roots.add(resolve(r));
20
+ try {
21
+ roots.add(realpathSync(r));
22
+ }
23
+ catch {
24
+ /* missing root — nothing to add */
25
+ }
26
+ }
27
+ return [...roots];
28
+ }
29
+ function isMountPoint(dir, fs) {
30
+ const parent = dirname(dir);
31
+ if (parent === dir)
32
+ return true; // filesystem root
33
+ try {
34
+ return fs.dev(dir) !== fs.dev(parent);
35
+ }
36
+ catch {
37
+ return true; // cannot tell — stay cautious
38
+ }
39
+ }
40
+ /**
41
+ * True when a recorded project path is gone because it was deleted, not
42
+ * because the volume holding it is unmounted. Walks up to the nearest existing
43
+ * ancestor: when that is the path's own parent (the old rule), a well-known
44
+ * local root (home, /tmp, /var/tmp, the OS temp dir — a tmpfs /tmp is a mount,
45
+ * but its children vanishing means deletion) or a directory on the same device
46
+ * as its own parent, the path was deleted — this covers a whole deleted test
47
+ * root. When it is a mount point (`/`, a network share's mount) or a
48
+ * removable-media directory, the missing piece may be a volume that is not
49
+ * attached right now, so the path is kept.
50
+ */
51
+ export function isProvablyDeleted(p, fs = nodeOriginFs, localRoots = defaultLocalRoots()) {
52
+ const target = resolve(p);
53
+ if (fs.exists(target))
54
+ return false;
55
+ const parent = dirname(target);
56
+ let nearest = parent;
57
+ while (!fs.exists(nearest) && dirname(nearest) !== nearest)
58
+ nearest = dirname(nearest);
59
+ if (nearest === parent)
60
+ return true;
61
+ if (localRoots.includes(nearest))
62
+ return true;
63
+ if (MEDIA_ROOTS.includes(nearest) || MEDIA_ROOTS.includes(dirname(nearest)))
64
+ return false;
65
+ return !isMountPoint(nearest, fs);
66
+ }
67
+ //# sourceMappingURL=cleanup-origin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanup-origin.js","sourceRoot":"","sources":["../../../src/commands/cleanup-origin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAS7C,MAAM,YAAY,GAAa;IAC7B,MAAM,EAAE,UAAU;IAClB,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG;CAC5B,CAAC;AAEF,sFAAsF;AACtF,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;AAEjE,qFAAqF;AACrF,SAAS,iBAAiB;IACxB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAC1D,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC;YACH,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,mCAAmC;QACrC,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,YAAY,CAAC,GAAW,EAAE,EAAY;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC,CAAC,kBAAkB;IACnD,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,8BAA8B;IAC7C,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAC/B,CAAS,EACT,EAAE,GAAa,YAAY,EAC3B,UAAU,GAAsB,iBAAiB,EAAE;IAEnD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,IAAI,OAAO,GAAG,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,OAAO;QAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvF,IAAI,OAAO,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1F,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACpC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../../src/commands/cleanup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoBH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AAa1E,6EAA6E;AAC7E,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAiDD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAUvE;AAeD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,OAAO,GAClB,gBAAgB,EAAE,CA+EpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,EAAE,CA6D7E;AAyDD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAmX5B,CAAC;eA0Ba,cAAc"}
1
+ {"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../../src/commands/cleanup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmBH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AAc1E,6EAA6E;AAC7E,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAUvE;AAeD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,OAAO,GAClB,gBAAgB,EAAE,CA+EpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,EAAE,CA6D7E;AAyDD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAwX5B,CAAC;eA0Ba,cAAc"}
@@ -8,10 +8,12 @@
8
8
  // here throws "require is not defined" in the built output even though it
9
9
  // typechecks and passes tests. Guarded by no-cjs-require-in-esm.test.ts.
10
10
  import { execSync } from 'node:child_process';
11
- import { existsSync, lstatSync, readdirSync, readFileSync, realpathSync, rmSync, statSync, unlinkSync, writeFileSync, } from 'node:fs';
12
- import { homedir, tmpdir } from 'node:os';
13
- import { dirname, join, resolve } from 'node:path';
11
+ import { existsSync, lstatSync, readdirSync, readFileSync, rmSync, statSync, unlinkSync, } from 'node:fs';
12
+ import { homedir } from 'node:os';
13
+ import { join } from 'node:path';
14
+ import { atomicWriteFile } from '../init/fs-helpers.js';
14
15
  import { output } from '../output.js';
16
+ import { isProvablyDeleted } from './cleanup-origin.js';
15
17
  import { applyCleanupEntry, buildCleanupPlan, isMonomindSourceRepo, } from './cleanup-plan.js';
16
18
  /** Scratch pruning (--scratch): taskdev handoff files and loop state. */
17
19
  // monolean: manual flag only — upgrade path: invoke from the `cache` background worker so crashed-run scratch is pruned without anyone remembering the flag
@@ -20,54 +22,6 @@ const LOOP_STALE_GRACE_MS = 24 * 60 * 60 * 1000; // a live loop reschedules ever
20
22
  /** Orphaned per-project data (--data): ~/.monomind/projects/<slug> dirs whose
21
23
  * source project is gone, plus dead lancedb/ dirs left by the pre-2.3.1 engine. */
22
24
  const UNKNOWN_DIR_MAX_AGE_MS = 30 * 24 * 60 * 60 * 1000;
23
- /** Where removable volumes appear; a missing path under one may just be unplugged. */
24
- const MEDIA_ROOTS = ['/Volumes', '/media', '/mnt', '/run/media'];
25
- function isMountPoint(dir) {
26
- const parent = dirname(dir);
27
- if (parent === dir)
28
- return true; // filesystem root
29
- try {
30
- return statSync(dir).dev !== statSync(parent).dev;
31
- }
32
- catch {
33
- return true; // cannot tell — stay cautious
34
- }
35
- }
36
- /**
37
- * True when a recorded project path is gone because it was deleted, not
38
- * because the volume holding it is unmounted. Walks up to the nearest existing
39
- * ancestor: when that is the path's own parent (the old rule), a well-known
40
- * local root (home, /tmp, /var/tmp, the OS temp dir) or an ordinary directory,
41
- * the path was deleted — this covers a whole deleted test root (#347). When it
42
- * is a mount point (`/`, a network share's mount) or a removable-media
43
- * directory, the missing piece may be a volume that is not attached right now.
44
- */
45
- function isProvablyDeleted(p) {
46
- const target = resolve(p);
47
- if (existsSync(target))
48
- return false;
49
- const parent = dirname(target);
50
- let nearest = parent;
51
- while (!existsSync(nearest) && dirname(nearest) !== nearest)
52
- nearest = dirname(nearest);
53
- if (nearest === parent)
54
- return true;
55
- const localRoots = new Set();
56
- for (const r of [homedir(), '/tmp', '/var/tmp', tmpdir()]) {
57
- localRoots.add(resolve(r));
58
- try {
59
- localRoots.add(realpathSync(r));
60
- }
61
- catch {
62
- /* missing root — nothing to add */
63
- }
64
- }
65
- if (localRoots.has(nearest))
66
- return true;
67
- if (MEDIA_ROOTS.includes(nearest) || MEDIA_ROOTS.includes(dirname(nearest)))
68
- return false;
69
- return !isMountPoint(nearest);
70
- }
71
25
  /**
72
26
  * Entries of the project registry (~/.monomind-projects.json, written by
73
27
  * `init` for `init upgrade --all`) whose project was deleted, by the same rule
@@ -92,7 +46,7 @@ function pruneRegistryEntries(registryPath, stale) {
92
46
  const removed = reg.projects.length - kept.length;
93
47
  if (removed > 0) {
94
48
  reg.projects = kept;
95
- writeFileSync(registryPath, JSON.stringify(reg, null, 2), 'utf-8');
49
+ atomicWriteFile(registryPath, JSON.stringify(reg, null, 2), 'utf-8');
96
50
  }
97
51
  return removed;
98
52
  }
@@ -430,13 +384,14 @@ export const cleanupCommand = {
430
384
  const total = orphans.length + staleRegistryEntries.length;
431
385
  output.writeln();
432
386
  if (dryRun) {
433
- output.writeln(output.dim(` ${total} item(s). This was a dry run. Use --force to delete.`));
387
+ output.writeln(output.dim(` ${total} item(s): ${orphans.length} project-data item(s), ${staleRegistryEntries.length} registry entry(ies). This was a dry run. Use --force to delete.`));
434
388
  return {
435
389
  success: true,
436
390
  message: `Dry run: ${total} orphaned item(s) found`,
437
391
  data: { found: orphans, staleRegistryEntries, dryRun },
438
392
  };
439
393
  }
394
+ output.writeln(` Removed ${removed} project-data item(s), pruned ${registryRemoved} registry entry(ies)`);
440
395
  return {
441
396
  success: true,
442
397
  message: `Removed ${removed + registryRemoved} orphaned item(s)`,
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../../src/commands/cleanup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../../src/commands/cleanup.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,8 @@
10
10
  * ('read'/'none') or its config + hooks ('commit'), the guard's hooks,
11
11
  * local-path remotes, and git/shell/Claude config that would undo the guard
12
12
  * (a denied directory holding the cwd or ~/.claude goes in as its existing
13
- * children, #323 — sandbox-deny-write.ts);
13
+ * children, #323, unless it is the cwd and the runtime holds every stub
14
+ * in it — sandbox-deny-write.ts);
14
15
  * - network: every host allowed (`policy.sandbox.allowedDomains`, default
15
16
  * ['*']) minus the opt-in `policy.sandbox.deniedDomains`, deterministically,
16
17
  * with local binding kept for dev servers and tests. Git remote hosts are
@@ -60,6 +61,9 @@ export declare function buildClaudeRestrictions(guard: GitGuard, cfg: RoleSandbo
60
61
  tmp?: string;
61
62
  env?: NodeJS.ProcessEnv;
62
63
  platform?: NodeJS.Platform;
64
+ /** Linux: holds the sandbox's mount-point stubs for these writable roots
65
+ * (sandbox-stubs.ts) and returns the stub paths still not in place. */
66
+ holdStubs?: (writableRoots: string[]) => string[];
63
67
  }, sandboxEnabled: boolean): ClaudeRestrictions;
64
68
  /**
65
69
  * The authority mask (authority-mask.ts) for a role the SDK sandbox does not
@@ -99,6 +103,8 @@ export declare function resolveRoleGitEnforcement(args: {
99
103
  availability?: SandboxAvailability;
100
104
  /** Defaults to process.env; injectable for tests. */
101
105
  env?: NodeJS.ProcessEnv;
106
+ /** See buildClaudeRestrictions: called only when the sandbox is built. */
107
+ holdStubs?: (writableRoots: string[]) => string[];
102
108
  }): {
103
109
  env: Record<string, string>;
104
110
  claudeRestrictions?: ClaudeRestrictions;
@@ -1 +1 @@
1
- {"version":3,"file":"role-sandbox.d.ts","sourceRoot":"","sources":["../../../src/orgrt/role-sandbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role-sandbox.d.ts","sourceRoot":"","sources":["../../../src/orgrt/role-sandbox.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,8 @@
11
11
  * ('read'/'none') or its config + hooks ('commit'), the guard's hooks,
12
12
  * local-path remotes, and git/shell/Claude config that would undo the guard
13
13
  * (a denied directory holding the cwd or ~/.claude goes in as its existing
14
- * children, #323 — sandbox-deny-write.ts);
14
+ * children, #323, unless it is the cwd and the runtime holds every stub
15
+ * in it — sandbox-deny-write.ts);
15
16
  * - network: every host allowed (`policy.sandbox.allowedDomains`, default
16
17
  * ['*']) minus the opt-in `policy.sandbox.deniedDomains`, deterministically,
17
18
  * with local binding kept for dev servers and tests. Git remote hosts are
@@ -160,8 +161,11 @@ export function buildClaudeRestrictions(guard, cfg, ctx, sandboxEnabled) {
160
161
  if (!sandboxEnabled)
161
162
  return { disallowedTools };
162
163
  const allowWrite = uniq([ctx.cwd, ctx.orgRoot, home, tmp, ...(cfg?.allowWrite ?? [])]);
164
+ // Stubs first: with all of the cwd's in place, bwrap creates nothing there.
165
+ const missingStubs = (ctx.platform ?? process.platform) === 'linux' ? ctx.holdStubs?.(allowWrite) : undefined;
163
166
  // #323: a read-only directory holding the cwd or ~/.claude breaks the SDK's
164
- // own stub mounts — pass its children instead (sandbox-deny-write.ts).
167
+ // own stub mounts — pass its children instead, unless it is the cwd and the
168
+ // runtime holds every stub in it (sandbox-deny-write.ts).
165
169
  const expanded = expandDenyWrite(uniq([
166
170
  guard.dir,
167
171
  ...(lockedRepo ? gitDirs : gitDirs.flatMap((d) => [join(d, 'config'), join(d, 'hooks')])),
@@ -169,7 +173,7 @@ export function buildClaudeRestrictions(guard, cfg, ctx, sandboxEnabled) {
169
173
  ...HOME_DENY_WRITE.map((p) => join(home, p)),
170
174
  ...decisionFilePaths(ctx.orgRoot),
171
175
  ...roleDenyWrite,
172
- ]), [ctx.cwd, join(home, '.claude')], ctx.platform);
176
+ ]), [ctx.cwd, join(home, '.claude')], ctx.platform, missingStubs && { cwd: ctx.cwd, writableRoots: allowWrite, missingStubs });
173
177
  const sandbox = {
174
178
  enabled: true,
175
179
  failIfUnavailable: true,
@@ -316,7 +320,7 @@ export function resolveRoleGitEnforcement(args) {
316
320
  ? { NODE_USE_ENV_PROXY: '1' }
317
321
  : {}),
318
322
  },
319
- claudeRestrictions: buildClaudeRestrictions(guard, cfg, { cwd: args.cwd, orgRoot: args.orgRoot }, sandboxEnabled),
323
+ claudeRestrictions: buildClaudeRestrictions(guard, cfg, { cwd: args.cwd, orgRoot: args.orgRoot, holdStubs: args.holdStubs }, sandboxEnabled),
320
324
  };
321
325
  }
322
326
  const PROVIDER_RUNTIME = {
@@ -1 +1 @@
1
- {"version":3,"file":"role-sandbox.js","sourceRoot":"","sources":["../../../src/orgrt/role-sandbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role-sandbox.js","sourceRoot":"","sources":["../../../src/orgrt/role-sandbox.ts"],"names":[],"mappings":"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"}
@@ -12,21 +12,42 @@
12
12
  * Read-only file system" and the role's Bash call fails. It only worked while
13
13
  * another sandboxed process happened to hold the stub.
14
14
  *
15
- * So such a directory is never passed as a deny. It is replaced by its
15
+ * So such a directory is not passed as a deny. It is replaced by its
16
16
  * existing children, each read-only (a child that itself contains the cwd or
17
17
  * ~/.claude is expanded the same way), and the directory itself is returned
18
18
  * as a mount point for `filesystem.allowWrite`: bind-mounted, it cannot be
19
19
  * renamed or removed (EBUSY), while bwrap can create the SDK's stubs in it.
20
20
  *
21
- * What becomes writable at the OS layer: NEW entries directly inside such a
22
- * directory (a new top-level file in the org root or ~/.claude), and the
23
- * directory's own mode bits. Everything that existed at session start stays
24
- * read-only — an existing entry is a mount point, so it cannot be rewritten,
25
- * unlinked, renamed or replaced. The Claude-Code-critical new names (settings,
26
- * hooks, skills, commands, agents, .mcp.json, .gitconfig, …) are the SDK's own
27
- * denies, now enforceable because their stubs can be created. The file tools
28
- * never relied on this layer: their permission rules (`Edit(//dir/**)`) and
29
- * the PolicyEngine deny lists keep the unexpanded directory.
21
+ * The role's cwd itself is the exception once the runtime holds its stubs
22
+ * (sandbox-stubs.ts, held before the restrictions are built): every stub path
23
+ * in it then exists, the SDK binds each one onto itself, and bwrap creates
24
+ * nothing there. The one path the runtime leaves to the SDK inside the cwd is
25
+ * `.git/config.lock`, and the SDK (0.3.226) skips a missing deny path whose
26
+ * nearest denied directory has no writable root below it ("already
27
+ * uncreatable"). So the cwd goes in as a plain deny when it has no other
28
+ * writable root and no other keep-writable path inside it and
29
+ * SandboxStubs.missing() reports nothing in it; any missing stub (a failed
30
+ * hold, a foreign empty stub that may vanish, no runtime stubs at all) falls
31
+ * back to the expansion. A directory ABOVE the cwd is still expanded: the
32
+ * SDK always makes the cwd a writable root, and with one below a denied
33
+ * directory it does create `.git/config.lock` inside it — that bwrap manages
34
+ * this under a read-only parent depends on the order the SDK emits its
35
+ * binds, which nothing here controls. ~/.claude is still expanded too:
36
+ * the SDK binds CLI state there that the runtime leaves to it on purpose
37
+ * (.credentials.json, .config.json, the CLI's own dirs), and bwrap creates
38
+ * those when they are missing (sandbox-stubs-sdk.test.ts).
39
+ *
40
+ * What becomes writable at the OS layer: NEW entries directly inside an
41
+ * expanded directory (a new top-level file in ~/.claude, in the org root when
42
+ * the cwd lies below it, or in the cwd while one of its stubs is missing),
43
+ * and the directory's own mode bits. A locked cwd allows neither. Everything
44
+ * that existed at session start stays read-only — an existing entry is a
45
+ * mount point, so it cannot be rewritten, unlinked, renamed or replaced. The
46
+ * Claude-Code-critical new names (settings, hooks, skills, commands, agents,
47
+ * .mcp.json, .gitconfig, …) are the SDK's own denies, now enforceable because
48
+ * their stubs can be created. The file tools never relied on this layer:
49
+ * their permission rules (`Edit(//dir/**)`) and the PolicyEngine deny lists
50
+ * keep the unexpanded directory.
30
51
  *
31
52
  * An empty regular file among those children is left out: it is one of
32
53
  * those stubs, which the SDK deletes when the sandbox that made it ends. The
@@ -47,14 +68,24 @@ export interface ExpandedDenyWrite {
47
68
  * bind mount when it already lies under a writable root. */
48
69
  mountPoints: string[];
49
70
  }
71
+ /** What lets the role's cwd itself stay a plain deny (see the header). */
72
+ export interface CwdLock {
73
+ /** The role's cwd. */
74
+ cwd: string;
75
+ /** The sandbox's `filesystem.allowWrite` before expansion. */
76
+ writableRoots: string[];
77
+ /** Stub paths the runtime could not put in place (SandboxStubs.missing). */
78
+ missingStubs: string[];
79
+ }
50
80
  /**
51
81
  * Replaces every deny-write path that equals or contains one of `keepWritable`
52
82
  * (the role's cwd, ~/.claude) with its existing children (less the SDK's
53
83
  * empty stubs), recursively. A path
54
84
  * that cannot be listed (missing, unreadable, not a directory) is kept as-is,
55
- * so the old — stricter — behaviour is the fallback.
85
+ * so the old — stricter — behaviour is the fallback. With `lock`, the cwd
86
+ * itself stays a plain deny when bwrap has nothing to create in it.
56
87
  */
57
- export declare function expandDenyWrite(paths: string[], keepWritable: string[], platform?: NodeJS.Platform): ExpandedDenyWrite;
88
+ export declare function expandDenyWrite(paths: string[], keepWritable: string[], platform?: NodeJS.Platform, lock?: CwdLock): ExpandedDenyWrite;
58
89
  /** `within()` over real paths, for picking the mount points that lie under a
59
90
  * root that is writable anyway (anything else was never writable and must not
60
91
  * become so). */
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox-deny-write.d.ts","sourceRoot":"","sources":["../../../src/orgrt/sandbox-deny-write.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AA2BH,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB;iEAC6D;IAC7D,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EAAE,EACf,YAAY,EAAE,MAAM,EAAE,EACtB,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,iBAAiB,CAuBnB;AAED;;kBAEkB;AAClB,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAGhE"}
1
+ {"version":3,"file":"sandbox-deny-write.d.ts","sourceRoot":"","sources":["../../../src/orgrt/sandbox-deny-write.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AA2BH,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB;iEAC6D;IAC7D,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,0EAA0E;AAC1E,MAAM,WAAW,OAAO;IACtB,sBAAsB;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,8DAA8D;IAC9D,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,4EAA4E;IAC5E,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAaD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EAAE,EACf,YAAY,EAAE,MAAM,EAAE,EACtB,QAAQ,GAAE,MAAM,CAAC,QAA2B,EAC5C,IAAI,CAAC,EAAE,OAAO,GACb,iBAAiB,CAuBnB;AAED;;kBAEkB;AAClB,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAGhE"}