@wjarka/cezarion 0.14.2-pr406.627 → 0.14.2-pr406.632
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/delegation/routes.d.ts +50 -50
- package/dist/runs/agent-tmpdir.d.ts +12 -10
- package/dist/runs/agent-tmpdir.js +49 -18
- package/dist/runs/agent-tmpdir.js.map +1 -1
- package/package.json +3 -3
|
@@ -300,18 +300,6 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
300
300
|
} & {
|
|
301
301
|
"/:workerId": {
|
|
302
302
|
$get: {
|
|
303
|
-
output: {
|
|
304
|
-
error: string;
|
|
305
|
-
code?: "invalid_input" | undefined;
|
|
306
|
-
};
|
|
307
|
-
outputFormat: "json";
|
|
308
|
-
status: 400;
|
|
309
|
-
input: {
|
|
310
|
-
param: {
|
|
311
|
-
workerId: string;
|
|
312
|
-
};
|
|
313
|
-
};
|
|
314
|
-
} | {
|
|
315
303
|
output: {
|
|
316
304
|
workerId: string;
|
|
317
305
|
parentRunId: string;
|
|
@@ -388,11 +376,7 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
388
376
|
workerId: string;
|
|
389
377
|
};
|
|
390
378
|
};
|
|
391
|
-
}
|
|
392
|
-
};
|
|
393
|
-
} & {
|
|
394
|
-
"/:workerId/collect": {
|
|
395
|
-
$post: {
|
|
379
|
+
} | {
|
|
396
380
|
output: {
|
|
397
381
|
error: string;
|
|
398
382
|
code?: "invalid_input" | undefined;
|
|
@@ -403,10 +387,12 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
403
387
|
param: {
|
|
404
388
|
workerId: string;
|
|
405
389
|
};
|
|
406
|
-
} & {
|
|
407
|
-
json: Record<string, never>;
|
|
408
390
|
};
|
|
409
|
-
}
|
|
391
|
+
};
|
|
392
|
+
};
|
|
393
|
+
} & {
|
|
394
|
+
"/:workerId/collect": {
|
|
395
|
+
$post: {
|
|
410
396
|
output: {
|
|
411
397
|
workerId: string;
|
|
412
398
|
parentRunId: string;
|
|
@@ -508,11 +494,7 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
508
494
|
} & {
|
|
509
495
|
json: Record<string, never>;
|
|
510
496
|
};
|
|
511
|
-
}
|
|
512
|
-
};
|
|
513
|
-
} & {
|
|
514
|
-
"/:workerId/steer": {
|
|
515
|
-
$post: {
|
|
497
|
+
} | {
|
|
516
498
|
output: {
|
|
517
499
|
error: string;
|
|
518
500
|
code?: "invalid_input" | undefined;
|
|
@@ -524,11 +506,13 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
524
506
|
workerId: string;
|
|
525
507
|
};
|
|
526
508
|
} & {
|
|
527
|
-
json:
|
|
528
|
-
text: string;
|
|
529
|
-
};
|
|
509
|
+
json: Record<string, never>;
|
|
530
510
|
};
|
|
531
|
-
}
|
|
511
|
+
};
|
|
512
|
+
};
|
|
513
|
+
} & {
|
|
514
|
+
"/:workerId/steer": {
|
|
515
|
+
$post: {
|
|
532
516
|
output: {
|
|
533
517
|
workerId: string;
|
|
534
518
|
state: "delivered" | "queued";
|
|
@@ -544,11 +528,7 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
544
528
|
text: string;
|
|
545
529
|
};
|
|
546
530
|
};
|
|
547
|
-
}
|
|
548
|
-
};
|
|
549
|
-
} & {
|
|
550
|
-
"/:workerId/stop": {
|
|
551
|
-
$post: {
|
|
531
|
+
} | {
|
|
552
532
|
output: {
|
|
553
533
|
error: string;
|
|
554
534
|
code?: "invalid_input" | undefined;
|
|
@@ -560,9 +540,15 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
560
540
|
workerId: string;
|
|
561
541
|
};
|
|
562
542
|
} & {
|
|
563
|
-
json:
|
|
543
|
+
json: {
|
|
544
|
+
text: string;
|
|
545
|
+
};
|
|
564
546
|
};
|
|
565
|
-
}
|
|
547
|
+
};
|
|
548
|
+
};
|
|
549
|
+
} & {
|
|
550
|
+
"/:workerId/stop": {
|
|
551
|
+
$post: {
|
|
566
552
|
output: {
|
|
567
553
|
workerId: string;
|
|
568
554
|
state: "stopping" | "terminated";
|
|
@@ -576,11 +562,7 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
576
562
|
} & {
|
|
577
563
|
json: Record<string, never>;
|
|
578
564
|
};
|
|
579
|
-
}
|
|
580
|
-
};
|
|
581
|
-
} & {
|
|
582
|
-
"/:workerId/destroy": {
|
|
583
|
-
$post: {
|
|
565
|
+
} | {
|
|
584
566
|
output: {
|
|
585
567
|
error: string;
|
|
586
568
|
code?: "invalid_input" | undefined;
|
|
@@ -594,7 +576,11 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
594
576
|
} & {
|
|
595
577
|
json: Record<string, never>;
|
|
596
578
|
};
|
|
597
|
-
}
|
|
579
|
+
};
|
|
580
|
+
};
|
|
581
|
+
} & {
|
|
582
|
+
"/:workerId/destroy": {
|
|
583
|
+
$post: {
|
|
598
584
|
output: {
|
|
599
585
|
workerId: string;
|
|
600
586
|
state: "complete" | "incomplete";
|
|
@@ -617,6 +603,20 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
617
603
|
} & {
|
|
618
604
|
json: Record<string, never>;
|
|
619
605
|
};
|
|
606
|
+
} | {
|
|
607
|
+
output: {
|
|
608
|
+
error: string;
|
|
609
|
+
code?: "invalid_input" | undefined;
|
|
610
|
+
};
|
|
611
|
+
outputFormat: "json";
|
|
612
|
+
status: 400;
|
|
613
|
+
input: {
|
|
614
|
+
param: {
|
|
615
|
+
workerId: string;
|
|
616
|
+
};
|
|
617
|
+
} & {
|
|
618
|
+
json: Record<string, never>;
|
|
619
|
+
};
|
|
620
620
|
} | {
|
|
621
621
|
output: {
|
|
622
622
|
workerId: string;
|
|
@@ -646,11 +646,13 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
646
646
|
"/:workerId/diff": {
|
|
647
647
|
$get: {
|
|
648
648
|
output: {
|
|
649
|
-
|
|
650
|
-
|
|
649
|
+
workerId: string;
|
|
650
|
+
baselineSha: string;
|
|
651
|
+
diff: string;
|
|
652
|
+
truncated: boolean;
|
|
651
653
|
};
|
|
652
654
|
outputFormat: "json";
|
|
653
|
-
status:
|
|
655
|
+
status: 200;
|
|
654
656
|
input: {
|
|
655
657
|
param: {
|
|
656
658
|
workerId: string;
|
|
@@ -658,13 +660,11 @@ export declare function createDelegationRoutes(service: DelegationService, crede
|
|
|
658
660
|
};
|
|
659
661
|
} | {
|
|
660
662
|
output: {
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
diff: string;
|
|
664
|
-
truncated: boolean;
|
|
663
|
+
error: string;
|
|
664
|
+
code?: "invalid_input" | undefined;
|
|
665
665
|
};
|
|
666
666
|
outputFormat: "json";
|
|
667
|
-
status:
|
|
667
|
+
status: 400;
|
|
668
668
|
input: {
|
|
669
669
|
param: {
|
|
670
670
|
workerId: string;
|
|
@@ -2,14 +2,15 @@
|
|
|
2
2
|
export declare function agentTmpDir(dataDir: string, runId: string): string;
|
|
3
3
|
/**
|
|
4
4
|
* The longest a per-run temp directory may be so that tools binding named
|
|
5
|
-
* unix sockets under it still work (#387)
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
5
|
+
* unix sockets under it still work (#387), measured in UTF-8 bytes — the
|
|
6
|
+
* kernel bounds the encoded path, not the JavaScript character count.
|
|
7
|
+
* `sockaddr_un.sun_path` holds 108 bytes on Linux and 104 on macOS, NUL
|
|
8
|
+
* included; the longest name a known tool lays down under TMPDIR is tsx's IPC
|
|
9
|
+
* socket, `<tmpdir>/tsx-<uid>/<pid>.pipe`, ~22 bytes (Chrome's
|
|
10
|
+
* `SingletonSocket` is 16). A 78-byte ceiling leaves ≥25 bytes of headroom on
|
|
11
|
+
* the tighter platform — past anything these tools generate — while keeping
|
|
12
|
+
* ordinary checkouts on their repo-local scratch: only a genuinely deep path,
|
|
13
|
+
* like the 100-character directories #387 reports, moves to the fallback.
|
|
13
14
|
*/
|
|
14
15
|
export declare const MAX_SOCKET_SAFE_DIR_LENGTH = 78;
|
|
15
16
|
/**
|
|
@@ -73,7 +74,8 @@ export declare function removeAgentTmpDir(dataDir: string, runId: string): void;
|
|
|
73
74
|
* name digests the dataDir and is not reversible to a run id (reports the
|
|
74
75
|
* directory names reaped). The pattern is exact — prefix, lowercase hex,
|
|
75
76
|
* fixed length, directories only — and a directory is removed only when
|
|
76
|
-
* THIS dataDir
|
|
77
|
-
* root is
|
|
77
|
+
* its `.cez-owner` marker names THIS dataDir and none of this dataDir's
|
|
78
|
+
* kept runs claims it, so another project's scratch in the shared root is
|
|
79
|
+
* never touched.
|
|
78
80
|
*/
|
|
79
81
|
export declare function sweepAgentTmpDirs(dataDir: string, keepRunIds: Iterable<string>): string[];
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
* run.
|
|
41
41
|
*/
|
|
42
42
|
import { createHash } from 'node:crypto';
|
|
43
|
-
import { existsSync, mkdirSync, readdirSync, realpathSync, rmSync, writeFileSync } from 'node:fs';
|
|
43
|
+
import { existsSync, mkdirSync, readdirSync, readFileSync, realpathSync, rmSync, writeFileSync } from 'node:fs';
|
|
44
44
|
import { tmpdir } from 'node:os';
|
|
45
45
|
import { basename, join } from 'node:path';
|
|
46
46
|
/** Run ids are uuids; anything else must never reach a recursive `rmSync`.
|
|
@@ -63,14 +63,15 @@ function agentTmpRoot(dataDir) {
|
|
|
63
63
|
}
|
|
64
64
|
/**
|
|
65
65
|
* The longest a per-run temp directory may be so that tools binding named
|
|
66
|
-
* unix sockets under it still work (#387)
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
66
|
+
* unix sockets under it still work (#387), measured in UTF-8 bytes — the
|
|
67
|
+
* kernel bounds the encoded path, not the JavaScript character count.
|
|
68
|
+
* `sockaddr_un.sun_path` holds 108 bytes on Linux and 104 on macOS, NUL
|
|
69
|
+
* included; the longest name a known tool lays down under TMPDIR is tsx's IPC
|
|
70
|
+
* socket, `<tmpdir>/tsx-<uid>/<pid>.pipe`, ~22 bytes (Chrome's
|
|
71
|
+
* `SingletonSocket` is 16). A 78-byte ceiling leaves ≥25 bytes of headroom on
|
|
72
|
+
* the tighter platform — past anything these tools generate — while keeping
|
|
73
|
+
* ordinary checkouts on their repo-local scratch: only a genuinely deep path,
|
|
74
|
+
* like the 100-character directories #387 reports, moves to the fallback.
|
|
74
75
|
*/
|
|
75
76
|
export const MAX_SOCKET_SAFE_DIR_LENGTH = 78;
|
|
76
77
|
/** The OS temp root, symlink-resolved: `bind(2)` bounds the path the kernel
|
|
@@ -86,11 +87,22 @@ function osTempRoot() {
|
|
|
86
87
|
}
|
|
87
88
|
const FALLBACK_PREFIX = 'cez-agent-';
|
|
88
89
|
const FALLBACK_NAME_LENGTH = 12;
|
|
90
|
+
/** The marker file inside a fallback directory naming the dataDir that minted
|
|
91
|
+
* it. The directory name digests `dataDir:runId` and is not reversible, so
|
|
92
|
+
* without this marker a sweep could not tell its own stale directories from
|
|
93
|
+
* another project's live ones in the shared root — and would delete them. */
|
|
94
|
+
const OWNER_FILE = '.cez-owner';
|
|
95
|
+
function dataDirOwner(dataDir) {
|
|
96
|
+
return createHash('sha256').update(`cez-agent-owner:${dataDir}`).digest('hex').slice(0, 16);
|
|
97
|
+
}
|
|
89
98
|
/**
|
|
90
99
|
* Where the fallback lives for this dataDir+run pair. The name digests the
|
|
91
100
|
* dataDir in, because the OS temp root is SHARED: a name derived from the run
|
|
92
|
-
* id alone would let one repo's reap
|
|
93
|
-
*
|
|
101
|
+
* id alone would let one repo's reap delete another repo's live scratch when
|
|
102
|
+
* two run ids happen to share their leading characters. The name alone cannot
|
|
103
|
+
* make the sweep safe — a digest is not reversible, so a sweep could not tell
|
|
104
|
+
* its own stale directories from another project's live ones — which is why
|
|
105
|
+
* every fallback directory also carries the `.cez-owner` marker.
|
|
94
106
|
*/
|
|
95
107
|
function fallbackTmpDir(dataDir, runId) {
|
|
96
108
|
const digest = createHash('sha256').update(`${dataDir}:${runId}`).digest('hex');
|
|
@@ -104,14 +116,14 @@ function fallbackTmpDir(dataDir, runId) {
|
|
|
104
116
|
*/
|
|
105
117
|
export function resolveAgentTmpDir(dataDir, runId) {
|
|
106
118
|
const local = agentTmpDir(dataDir, runId);
|
|
107
|
-
if (local
|
|
119
|
+
if (Buffer.byteLength(local, 'utf8') <= MAX_SOCKET_SAFE_DIR_LENGTH)
|
|
108
120
|
return local;
|
|
109
121
|
const fallback = fallbackTmpDir(dataDir, runId);
|
|
110
|
-
if (fallback
|
|
122
|
+
if (Buffer.byteLength(fallback, 'utf8') <= MAX_SOCKET_SAFE_DIR_LENGTH)
|
|
111
123
|
return fallback;
|
|
112
124
|
// No candidate fits (a pathological host TMPDIR over a pathological repo
|
|
113
125
|
// path together): keep whichever leaves socket names the most room.
|
|
114
|
-
return fallback
|
|
126
|
+
return Buffer.byteLength(fallback) < Buffer.byteLength(local) ? fallback : local;
|
|
115
127
|
}
|
|
116
128
|
/** `errno` → the phrasing a human recognises from their shell. */
|
|
117
129
|
const REASONS = {
|
|
@@ -197,6 +209,11 @@ export function agentTmpEnv(dataDir, runId, env = process.env) {
|
|
|
197
209
|
const dir = resolveAgentTmpDir(dataDir, runId);
|
|
198
210
|
try {
|
|
199
211
|
mkdirSync(dir, dir === local ? { recursive: true } : { recursive: true, mode: 0o700 });
|
|
212
|
+
// In the shared OS root the directory carries its ownership marker, so a
|
|
213
|
+
// startup sweep from another project can tell it apart from stale
|
|
214
|
+
// scratch (the sweep skips anything whose marker is missing or foreign).
|
|
215
|
+
if (dir !== local)
|
|
216
|
+
writeFileSync(join(dir, OWNER_FILE), dataDirOwner(dataDir), 'utf8');
|
|
200
217
|
}
|
|
201
218
|
catch (err) {
|
|
202
219
|
throw new AgentTempDirError(dir, err);
|
|
@@ -236,8 +253,9 @@ export function removeAgentTmpDir(dataDir, runId) {
|
|
|
236
253
|
* name digests the dataDir and is not reversible to a run id (reports the
|
|
237
254
|
* directory names reaped). The pattern is exact — prefix, lowercase hex,
|
|
238
255
|
* fixed length, directories only — and a directory is removed only when
|
|
239
|
-
* THIS dataDir
|
|
240
|
-
* root is
|
|
256
|
+
* its `.cez-owner` marker names THIS dataDir and none of this dataDir's
|
|
257
|
+
* kept runs claims it, so another project's scratch in the shared root is
|
|
258
|
+
* never touched.
|
|
241
259
|
*/
|
|
242
260
|
export function sweepAgentTmpDirs(dataDir, keepRunIds) {
|
|
243
261
|
const keep = new Set(keepRunIds);
|
|
@@ -266,8 +284,12 @@ export function sweepAgentTmpDirs(dataDir, keepRunIds) {
|
|
|
266
284
|
}
|
|
267
285
|
}
|
|
268
286
|
// The #387 fallback location, in the shared OS temp root. Kept narrow on
|
|
269
|
-
// purpose: exact prefix, 12 lowercase-hex name, directories only, and
|
|
270
|
-
//
|
|
287
|
+
// purpose: exact prefix, 12 lowercase-hex name, directories only, and
|
|
288
|
+
// ownership — a directory is removed only when its `.cez-owner` marker
|
|
289
|
+
// names THIS dataDir (a marker that is missing or foreign is another
|
|
290
|
+
// project's, or unknown, and is never ours to remove) and none of this
|
|
291
|
+
// dataDir's kept runs claims it.
|
|
292
|
+
const owner = dataDirOwner(dataDir);
|
|
271
293
|
const claimed = new Set([...keep].filter(safeRunId).map((id) => basename(fallbackTmpDir(dataDir, id))));
|
|
272
294
|
const osRoot = osTempRoot();
|
|
273
295
|
let fallbackEntries;
|
|
@@ -282,6 +304,15 @@ export function sweepAgentTmpDirs(dataDir, keepRunIds) {
|
|
|
282
304
|
continue;
|
|
283
305
|
if (!/^[0-9a-f]{12}$/.test(entry.name.slice(FALLBACK_PREFIX.length)))
|
|
284
306
|
continue;
|
|
307
|
+
let entryOwner;
|
|
308
|
+
try {
|
|
309
|
+
entryOwner = readFileSync(join(osRoot, entry.name, OWNER_FILE), 'utf8').trim();
|
|
310
|
+
}
|
|
311
|
+
catch {
|
|
312
|
+
continue; // no readable marker: unknown ownership is never ours to remove.
|
|
313
|
+
}
|
|
314
|
+
if (entryOwner !== owner)
|
|
315
|
+
continue;
|
|
285
316
|
if (claimed.has(entry.name))
|
|
286
317
|
continue;
|
|
287
318
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-tmpdir.js","sourceRoot":"","sources":["../../src/runs/agent-tmpdir.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-tmpdir.js","sourceRoot":"","sources":["../../src/runs/agent-tmpdir.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wjarka/cezarion",
|
|
3
|
-
"version": "0.14.2-pr406.
|
|
3
|
+
"version": "0.14.2-pr406.632",
|
|
4
4
|
"description": "Local cockpit for running and tracking AI agent tasks in your repo. Uses your logged-in `claude` CLI and `gh` — zero config, zero database.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -50,8 +50,8 @@
|
|
|
50
50
|
"zod": "^4.4.3"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@open-mercato/cezar-api-client": "0.14.2-pr406.
|
|
54
|
-
"@open-mercato/cezar-contract": "0.14.2-pr406.
|
|
53
|
+
"@open-mercato/cezar-api-client": "0.14.2-pr406.632",
|
|
54
|
+
"@open-mercato/cezar-contract": "0.14.2-pr406.632",
|
|
55
55
|
"@types/node": "^20.14.0",
|
|
56
56
|
"@types/ws": "^8.18.1",
|
|
57
57
|
"esbuild": "^0.28.1",
|