@wjarka/cezarion 0.14.8-pr540.823 → 0.14.9-dev.1004

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.
Files changed (174) hide show
  1. package/README.md +56 -3
  2. package/dist/automations/scheduler.d.ts +6 -0
  3. package/dist/automations/scheduler.js +45 -17
  4. package/dist/automations/scheduler.js.map +1 -1
  5. package/dist/automations/store.d.ts +12 -4
  6. package/dist/automations/store.js +199 -22
  7. package/dist/automations/store.js.map +1 -1
  8. package/dist/automations/types.d.ts +2 -0
  9. package/dist/automations/types.js +1 -0
  10. package/dist/automations/types.js.map +1 -1
  11. package/dist/contract/automations.d.ts +6 -0
  12. package/dist/contract/delegation.d.ts +29 -0
  13. package/dist/contract/discovery.d.ts +134 -0
  14. package/dist/contract/index.d.ts +1 -0
  15. package/dist/contract/index.js +1520 -1447
  16. package/dist/contract/projects.d.ts +40 -0
  17. package/dist/contract/runs.d.ts +43 -0
  18. package/dist/contract/skills.d.ts +5 -0
  19. package/dist/core/claude-cli-runner.js +1 -1
  20. package/dist/core/claude-cli-runner.js.map +1 -1
  21. package/dist/core/cursor-acp-runner.d.ts +2 -0
  22. package/dist/core/cursor-acp-runner.js +159 -26
  23. package/dist/core/cursor-acp-runner.js.map +1 -1
  24. package/dist/core/cursor-provider-error.d.ts +3 -0
  25. package/dist/core/cursor-provider-error.js +14 -1
  26. package/dist/core/cursor-provider-error.js.map +1 -1
  27. package/dist/core/opencode-server-runner.js +12 -5
  28. package/dist/core/opencode-server-runner.js.map +1 -1
  29. package/dist/core/pi-runner.js +17 -4
  30. package/dist/core/pi-runner.js.map +1 -1
  31. package/dist/core/provider-auth.d.ts +99 -1
  32. package/dist/core/provider-auth.js +203 -2
  33. package/dist/core/provider-auth.js.map +1 -1
  34. package/dist/delegation/cli.d.ts +1 -0
  35. package/dist/delegation/cli.js +1 -1
  36. package/dist/delegation/cli.js.map +1 -1
  37. package/dist/delegation/policy.d.ts +3 -2
  38. package/dist/delegation/policy.js +3 -1
  39. package/dist/delegation/policy.js.map +1 -1
  40. package/dist/delegation/process-liveness.d.ts +66 -0
  41. package/dist/delegation/process-liveness.js +215 -0
  42. package/dist/delegation/process-liveness.js.map +1 -0
  43. package/dist/delegation/provision.d.ts +1 -1
  44. package/dist/delegation/provision.js +5 -2
  45. package/dist/delegation/provision.js.map +1 -1
  46. package/dist/delegation/results.js +10 -6
  47. package/dist/delegation/results.js.map +1 -1
  48. package/dist/delegation/routes.d.ts +101 -54
  49. package/dist/delegation/routes.js +3 -2
  50. package/dist/delegation/routes.js.map +1 -1
  51. package/dist/delegation/service.d.ts +8 -1
  52. package/dist/delegation/service.js +56 -7
  53. package/dist/delegation/service.js.map +1 -1
  54. package/dist/delegation/transport.d.ts +40 -4
  55. package/dist/discovery/catalog.d.ts +14 -0
  56. package/dist/discovery/catalog.js +31 -0
  57. package/dist/discovery/catalog.js.map +1 -0
  58. package/dist/discovery/cli.d.ts +8 -0
  59. package/dist/discovery/cli.js +104 -0
  60. package/dist/discovery/cli.js.map +1 -0
  61. package/dist/git-worktree.d.ts +3 -1
  62. package/dist/git-worktree.js +26 -4
  63. package/dist/git-worktree.js.map +1 -1
  64. package/dist/index.js +20 -0
  65. package/dist/index.js.map +1 -1
  66. package/dist/runs/agent-tmpdir.d.ts +2 -0
  67. package/dist/runs/agent-tmpdir.js +5 -2
  68. package/dist/runs/agent-tmpdir.js.map +1 -1
  69. package/dist/runs/retention.d.ts +7 -2
  70. package/dist/runs/retention.js +39 -7
  71. package/dist/runs/retention.js.map +1 -1
  72. package/dist/runs/store.d.ts +22 -0
  73. package/dist/runs/store.js +82 -1
  74. package/dist/runs/store.js.map +1 -1
  75. package/dist/runs/webhook.d.ts +125 -0
  76. package/dist/runs/webhook.js +256 -0
  77. package/dist/runs/webhook.js.map +1 -0
  78. package/dist/server/provider-auth-runtime.d.ts +30 -4
  79. package/dist/server/provider-auth-runtime.js +71 -6
  80. package/dist/server/provider-auth-runtime.js.map +1 -1
  81. package/dist/server/server.d.ts +3673 -2420
  82. package/dist/server/server.js +139 -11
  83. package/dist/server/server.js.map +1 -1
  84. package/dist/server-install/platforms/ubuntu-vps.d.ts +5 -1
  85. package/dist/server-install/platforms/ubuntu-vps.js +160 -18
  86. package/dist/server-install/platforms/ubuntu-vps.js.map +1 -1
  87. package/dist/server-install/steps.d.ts +4 -2
  88. package/dist/server-install/steps.js +5 -4
  89. package/dist/server-install/steps.js.map +1 -1
  90. package/dist/skills-remote.d.ts +30 -5
  91. package/dist/skills-remote.js +122 -32
  92. package/dist/skills-remote.js.map +1 -1
  93. package/dist/skills.js +15 -6
  94. package/dist/skills.js.map +1 -1
  95. package/dist/task-cli/cli.js +124 -7
  96. package/dist/task-cli/cli.js.map +1 -1
  97. package/dist/task-cli/discovery.js +6 -5
  98. package/dist/task-cli/discovery.js.map +1 -1
  99. package/dist/task-cli/http.d.ts +3 -0
  100. package/dist/task-cli/http.js.map +1 -1
  101. package/dist/task-cli/watch.d.ts +19 -0
  102. package/dist/task-cli/watch.js +35 -2
  103. package/dist/task-cli/watch.js.map +1 -1
  104. package/dist/workflows/run.d.ts +67 -2
  105. package/dist/workflows/run.js +325 -27
  106. package/dist/workflows/run.js.map +1 -1
  107. package/dist/workspace/agent-profiles.d.ts +22 -0
  108. package/dist/workspace/agent-profiles.js +15 -0
  109. package/dist/workspace/agent-profiles.js.map +1 -1
  110. package/dist/workspace/config.d.ts +9 -0
  111. package/dist/workspace/config.js +13 -1
  112. package/dist/workspace/config.js.map +1 -1
  113. package/dist/workspace/projects.d.ts +24 -1
  114. package/dist/workspace/projects.js +14 -1
  115. package/dist/workspace/projects.js.map +1 -1
  116. package/package.json +5 -5
  117. package/scripts/mock-claude.mjs +26 -0
  118. package/scripts/mock-codex-app-server.mjs +26 -0
  119. package/scripts/mock-cursor-acp.mjs +51 -3
  120. package/scripts/mock-cursor-hang-stdin-late.mjs +35 -0
  121. package/scripts/mock-cursor-hang-stdin.mjs +30 -0
  122. package/scripts/mock-opencode-serve.mjs +33 -0
  123. package/scripts/mock-pi-rpc.mjs +22 -4
  124. package/web/dist/assets/agent-accounts-CerclGiO.js +1 -0
  125. package/web/dist/assets/centered-state-DH8qtCz-.js +43 -0
  126. package/web/dist/assets/{collapsible-Bb2y0asn.js → collapsible-De2G0xqQ.js} +1 -1
  127. package/web/dist/assets/{commit-list-DpxX-bA4.js → commit-list-CQubP1iS.js} +1 -1
  128. package/web/dist/assets/compare-variants-C_NijJvg.js +1 -0
  129. package/web/dist/assets/{diff-rDeblLVZ2.js → diff-8M5HlDxq2.js} +2 -2
  130. package/web/dist/assets/{diff-controls-frbAqBK1.js → diff-controls-B6ok0TtQ.js} +1 -1
  131. package/web/dist/assets/{diff-stat-Cn7rzy1H.js → diff-stat-D1AODN2a.js} +1 -1
  132. package/web/dist/assets/{diff-view-D6N_QzSq.js → diff-view-Bs5Gh7UF.js} +2 -2
  133. package/web/dist/assets/{dropdown-menu-Bwvi4Ono.js → dropdown-menu-7KGQMoFj.js} +1 -1
  134. package/web/dist/assets/{git-toolbar-5TyOh819.js → git-toolbar-DqbapMXr.js} +1 -1
  135. package/web/dist/assets/github-lMHiuYSx.js +1 -0
  136. package/web/dist/assets/{image-preview-B618kDBH.js → image-preview-jzHoEyLM.js} +1 -1
  137. package/web/dist/assets/index-D4OJTArJ.js +7 -0
  138. package/web/dist/assets/index-D5NkwqY7.css +1 -0
  139. package/web/dist/assets/{markdown-BnjmXdz2.js → markdown-DvbymqXz.js} +1 -1
  140. package/web/dist/assets/pill-BL6ugwXo.js +1 -0
  141. package/web/dist/assets/{project-router-BSpCQc8A.js → project-router-ChC5Rb-Y.js} +1 -1
  142. package/web/dist/assets/{prompt-templates-BsHnTixc.js → prompt-templates-j8qlK7c-.js} +3 -3
  143. package/web/dist/assets/repo-git-BbPAgkqb.js +1 -0
  144. package/web/dist/assets/{run-diff-CFeYdPGE.js → run-diff-BuATgZpx.js} +2 -2
  145. package/web/dist/assets/run-header-DuAWswYM.js +1 -0
  146. package/web/dist/assets/skills-DiC2XrU1.js +1 -0
  147. package/web/dist/assets/{tab-link-BXDesc8g.js → tab-link-BmGKj9Rt.js} +1 -1
  148. package/web/dist/assets/{task-changes-DfF08cUG.js → task-changes-CP9kPnsy.js} +1 -1
  149. package/web/dist/assets/{task-commits-BMmpYP5e.js → task-commits-D6NfTw5r.js} +1 -1
  150. package/web/dist/assets/{task-files-D_dKDdRK.js → task-files-W-b_gtcb.js} +2 -2
  151. package/web/dist/assets/task-thread-Bw_nQuTx.css +1 -0
  152. package/web/dist/assets/task-thread-Q7Nj33DH.js +9 -0
  153. package/web/dist/assets/{textarea-COQtp9cB.js → textarea-ByZ-txS7.js} +1 -1
  154. package/web/dist/assets/thread-loading-DHT9p5o5.js +1 -0
  155. package/web/dist/assets/{token-metrics-CFWQYcgY.js → token-metrics-k4XoovDS.js} +1 -1
  156. package/web/dist/assets/{utils-DKheTxGD.js → utils-BTFBhZ55.js} +1 -1
  157. package/web/dist/assets/workflows-DqQszPHJ.js +11 -0
  158. package/web/dist/assets/{zoomable-image-YW3Qdrr_.js → zoomable-image-Ba6y6Wyl.js} +1 -1
  159. package/web/dist/index.html +14 -14
  160. package/web/dist/assets/agent-accounts-B7aDlJ4I.js +0 -1
  161. package/web/dist/assets/centered-state-wm14n-hB.js +0 -43
  162. package/web/dist/assets/compare-variants-DbPcvMtU.js +0 -1
  163. package/web/dist/assets/github-Dyo38xkh.js +0 -1
  164. package/web/dist/assets/ibm-plex-mono-regular-BF3vfe7_.ttf +0 -0
  165. package/web/dist/assets/index-dgQfUHKO.css +0 -1
  166. package/web/dist/assets/index-yCn9jZqm.js +0 -7
  167. package/web/dist/assets/pill-DqEXer06.js +0 -1
  168. package/web/dist/assets/repo-git-Cw1UOtWI.js +0 -1
  169. package/web/dist/assets/run-header-G5PQQyme.js +0 -1
  170. package/web/dist/assets/skills-DMvpMI_E.js +0 -1
  171. package/web/dist/assets/task-thread-BL7keYuU.js +0 -9
  172. package/web/dist/assets/task-thread-BQFdz1dJ.css +0 -1
  173. package/web/dist/assets/thread-loading-B7mgkPaL.js +0 -1
  174. package/web/dist/assets/workflows-DLCH6MDH.js +0 -11
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/delegation/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/delegation/policy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Synchronous, dependency-free proof that a crashed worker generation's processes are gone
3
+ * (#469, spec 2026-09-26-worker-orphan-finalization). Sync so `continueRun` stays sync.
4
+ * Every uncertainty answers "alive" or "unknown", never "gone".
5
+ */
6
+ export type RecordedProcess = {
7
+ pid: number;
8
+ startToken?: string;
9
+ };
10
+ export type WorkerProcessRecord = {
11
+ generation: string;
12
+ controller: RecordedProcess;
13
+ processes: RecordedProcess[];
14
+ };
15
+ export type GenerationLiveness = 'gone' | 'alive' | 'unknown';
16
+ /** `/proc/<pid>/stat` field 22 (`starttime`); `comm` may hold spaces and `)`, so parse after the LAST `)`. */
17
+ export declare function parseProcStat(stat: string): {
18
+ state: string;
19
+ startToken: string;
20
+ } | undefined;
21
+ /** One process incarnation, so a reused PID never matches. Absent when the platform cannot say. */
22
+ export declare function processStartToken(pid: number, platform?: NodeJS.Platform): string | undefined;
23
+ /** Live and the same incarnation. A token-less entry (or an unreadable current token) counts while the PID exists. */
24
+ export declare function recordedProcessLive(entry: RecordedProcess): boolean;
25
+ export declare function isCurrentProcess(entry: RecordedProcess): boolean;
26
+ /** The `/proc` reads the Linux scan makes; injectable because EACCES cannot be staged for real. */
27
+ export type ProcReader = {
28
+ readdir: () => string[];
29
+ readlink: (pid: string) => string;
30
+ ownerUid: (pid: string) => number | undefined;
31
+ startedAtMs: (pid: string) => number | undefined;
32
+ };
33
+ /** The darwin scan: `lsof` for working directories, `ps` for our own user's processes. */
34
+ export type DarwinReader = {
35
+ lsof: () => {
36
+ ok: boolean;
37
+ stdout: string;
38
+ };
39
+ ownProcesses: () => Array<{
40
+ pid: number;
41
+ startedAtMs?: number;
42
+ }> | undefined;
43
+ };
44
+ /** PIDs (never this process) whose working directory is one of `dirs` or beneath it, in one scan
45
+ * pass; `unknown` when no scan can run. cezar's own short-lived git children in a worktree make
46
+ * this read "alive" briefly: conservative, and a retry self-heals. `since` (epoch ms) is the
47
+ * earliest moment the generation's processes can have started; see the EACCES rule below. */
48
+ export declare function processesWithCwdUnder(dirs: string | readonly string[], platform?: NodeJS.Platform, proc?: ProcReader, since?: number, darwin?: DarwinReader): number[] | 'unknown';
49
+ export type GenerationProbe = {
50
+ liveness: GenerationLiveness;
51
+ controller?: number;
52
+ pids: number[];
53
+ };
54
+ /** A missing record (legacy) relies on the working-directory scan alone. `paths` are the
55
+ * worktree and every scratch location, which finalization deletes. A live foreign controller
56
+ * short-circuits the scan; otherwise `pids` names every live recorded or scanned process. */
57
+ export declare function inspectGeneration({ record, paths, since }: {
58
+ record?: WorkerProcessRecord;
59
+ paths: readonly string[];
60
+ since?: number;
61
+ }): GenerationProbe;
62
+ export declare function probeGeneration(input: {
63
+ record?: WorkerProcessRecord;
64
+ paths: readonly string[];
65
+ since?: number;
66
+ }): GenerationLiveness;
@@ -0,0 +1,215 @@
1
+ import { spawnSync } from 'node:child_process';
2
+ import { readdirSync, readFileSync, readlinkSync, realpathSync, statSync } from 'node:fs';
3
+ import { resolve, sep } from 'node:path';
4
+ /** `/proc/<pid>/stat` field 22 (`starttime`); `comm` may hold spaces and `)`, so parse after the LAST `)`. */
5
+ export function parseProcStat(stat) {
6
+ const fields = stat.slice(stat.lastIndexOf(')') + 1).trim().split(/\s+/);
7
+ return stat.includes(')') && fields.length >= 20 && /^\d+$/.test(fields[19]) ? { state: fields[0], startToken: fields[19] } : undefined;
8
+ }
9
+ function procStat(pid) {
10
+ try {
11
+ return parseProcStat(readFileSync(`/proc/${pid}/stat`, 'utf8'));
12
+ }
13
+ catch {
14
+ return undefined;
15
+ }
16
+ }
17
+ let bootId;
18
+ /** `starttime` counts ticks since boot, so it repeats across reboots; the boot id scopes it. */
19
+ function linuxBootId() {
20
+ if (bootId === undefined) {
21
+ try {
22
+ bootId = readFileSync('/proc/sys/kernel/random/boot_id', 'utf8').trim() || null;
23
+ }
24
+ catch {
25
+ bootId = null;
26
+ }
27
+ }
28
+ return bootId ?? undefined;
29
+ }
30
+ /** One process incarnation, so a reused PID never matches. Absent when the platform cannot say. */
31
+ export function processStartToken(pid, platform = process.platform) {
32
+ if (!Number.isSafeInteger(pid) || pid <= 0)
33
+ return undefined;
34
+ if (platform === 'linux') {
35
+ const start = procStat(pid)?.startToken;
36
+ const boot = linuxBootId();
37
+ return start && boot ? `${boot}:${start}` : start;
38
+ }
39
+ if (platform !== 'darwin')
40
+ return undefined;
41
+ // `lstart` is locale- and zone-formatted; pin both so the token is stable across cezar processes.
42
+ const ps = spawnSync('ps', ['-o', 'lstart=', '-p', String(pid)], { encoding: 'utf8', timeout: 2_000, env: { ...process.env, LC_ALL: 'C', TZ: 'UTC' } });
43
+ const token = ps.status === 0 ? ps.stdout.trim() : '';
44
+ return token || undefined;
45
+ }
46
+ function pidExists(pid) {
47
+ if (!Number.isSafeInteger(pid) || pid <= 0)
48
+ return false;
49
+ try {
50
+ process.kill(pid, 0);
51
+ }
52
+ catch (error) {
53
+ return error.code === 'EPERM';
54
+ }
55
+ // A zombie has exited; only its parent's wait remains.
56
+ return process.platform !== 'linux' || procStat(pid)?.state !== 'Z';
57
+ }
58
+ const LINUX_TOKEN = /^(?:[0-9a-f-]{36}:)?(\d+)$/;
59
+ /** Liveness-only comparison: when exactly one Linux token lacks the boot id (it was unreadable on one
60
+ * side), the `starttime` suffix decides. Reaping still requires an exact match. */
61
+ function sameIncarnation(recorded, current) {
62
+ if (recorded === current)
63
+ return true;
64
+ const a = LINUX_TOKEN.exec(recorded), b = LINUX_TOKEN.exec(current);
65
+ return !!a && !!b && recorded.includes(':') !== current.includes(':') && a[1] === b[1];
66
+ }
67
+ /** Live and the same incarnation. A token-less entry (or an unreadable current token) counts while the PID exists. */
68
+ export function recordedProcessLive(entry) {
69
+ if (!pidExists(entry.pid))
70
+ return false;
71
+ if (entry.startToken === undefined)
72
+ return true;
73
+ const current = processStartToken(entry.pid);
74
+ return current === undefined || sameIncarnation(entry.startToken, current);
75
+ }
76
+ export function isCurrentProcess(entry) {
77
+ if (entry.pid !== process.pid)
78
+ return false;
79
+ const own = processStartToken(process.pid);
80
+ return entry.startToken === undefined || own === undefined || sameIncarnation(entry.startToken, own);
81
+ }
82
+ let clockTicks;
83
+ let bootTimeMs;
84
+ /** Wall-clock start of a process: boot time (`/proc/stat` btime) plus its starttime ticks. */
85
+ function procStartedAtMs(pid) {
86
+ try {
87
+ bootTimeMs ??= Number(/^btime (\d+)$/m.exec(readFileSync('/proc/stat', 'utf8'))?.[1]) * 1000;
88
+ clockTicks ??= Number(spawnSync('getconf', ['CLK_TCK'], { encoding: 'utf8', timeout: 2_000 }).stdout.trim()) || 100;
89
+ const start = procStat(Number(pid))?.startToken;
90
+ return start === undefined || !Number.isFinite(bootTimeMs) ? undefined : bootTimeMs + Number(start) / clockTicks * 1000;
91
+ }
92
+ catch {
93
+ return undefined;
94
+ }
95
+ }
96
+ const realDarwin = {
97
+ lsof: () => {
98
+ const lsof = spawnSync('lsof', ['-a', '-d', 'cwd', '-Fpn'], { encoding: 'utf8', timeout: 5_000, maxBuffer: 16 * 1024 * 1024 });
99
+ // Status 1 is ordinary (some process unreadable); completeness is judged against `ps` instead.
100
+ return { ok: !lsof.error && (lsof.status === 0 || lsof.status === 1) && !!lsof.stdout, stdout: lsof.stdout ?? '' };
101
+ },
102
+ ownProcesses: () => {
103
+ const uid = process.getuid?.();
104
+ if (uid === undefined)
105
+ return undefined;
106
+ const ps = spawnSync('ps', ['-U', String(uid), '-o', 'pid=,lstart='], { encoding: 'utf8', timeout: 2_000, env: { ...process.env, LC_ALL: 'C', TZ: 'UTC' } });
107
+ if (ps.error || ps.status !== 0 || !ps.stdout)
108
+ return undefined;
109
+ return ps.stdout.split('\n').flatMap(line => {
110
+ const match = /^\s*(\d+)\s+(.+?)\s*$/.exec(line);
111
+ // `ps` lists itself, and lsof (which ran first) never saw it.
112
+ if (!match || Number(match[1]) === ps.pid)
113
+ return [];
114
+ const startedAtMs = Date.parse(`${match[2]} UTC`);
115
+ return [{ pid: Number(match[1]), ...(Number.isFinite(startedAtMs) ? { startedAtMs } : {}) }];
116
+ });
117
+ },
118
+ };
119
+ const realProc = {
120
+ readdir: () => readdirSync('/proc'),
121
+ readlink: pid => readlinkSync(`/proc/${pid}/cwd`),
122
+ ownerUid: pid => { try {
123
+ return statSync(`/proc/${pid}`).uid;
124
+ }
125
+ catch {
126
+ return undefined;
127
+ } },
128
+ startedAtMs: procStartedAtMs,
129
+ };
130
+ /** PIDs (never this process) whose working directory is one of `dirs` or beneath it, in one scan
131
+ * pass; `unknown` when no scan can run. cezar's own short-lived git children in a worktree make
132
+ * this read "alive" briefly: conservative, and a retry self-heals. `since` (epoch ms) is the
133
+ * earliest moment the generation's processes can have started; see the EACCES rule below. */
134
+ export function processesWithCwdUnder(dirs, platform = process.platform, proc = realProc, since, darwin = realDarwin) {
135
+ const targets = (typeof dirs === 'string' ? [dirs] : dirs).map(dir => { try {
136
+ return realpathSync(dir);
137
+ }
138
+ catch {
139
+ return resolve(dir);
140
+ } });
141
+ const under = (cwd) => { const path = cwd.replace(/ \(deleted\)$/, ''); return targets.some(target => path === target || path.startsWith(target + sep)); };
142
+ const found = [];
143
+ if (platform === 'linux') {
144
+ let entries;
145
+ try {
146
+ entries = proc.readdir();
147
+ }
148
+ catch {
149
+ return 'unknown';
150
+ }
151
+ const uid = process.getuid?.();
152
+ for (const entry of entries) {
153
+ if (!/^\d+$/.test(entry) || Number(entry) === process.pid)
154
+ continue;
155
+ try {
156
+ if (under(proc.readlink(entry)))
157
+ found.push(Number(entry));
158
+ }
159
+ catch (error) {
160
+ // A vanished process is gone; another user's is unreadable by design and skipped. Our own
161
+ // user's non-dumpable processes are unreadable too (systemd --user, sshd, gpg-agent, which
162
+ // every host has), so they cannot all block the proof: one that started before the worker
163
+ // existed cannot be its descendant. A later one is a possible holder, never signalled.
164
+ if (error.code === 'ENOENT' || uid === undefined || proc.ownerUid(entry) !== uid)
165
+ continue;
166
+ const started = since === undefined ? undefined : proc.startedAtMs(entry);
167
+ if (started === undefined || started >= since)
168
+ found.push(Number(entry));
169
+ }
170
+ }
171
+ return found;
172
+ }
173
+ if (platform !== 'darwin')
174
+ return 'unknown';
175
+ const lsof = darwin.lsof();
176
+ if (!lsof.ok)
177
+ return 'unknown';
178
+ const seen = new Set();
179
+ let pid;
180
+ for (const line of lsof.stdout.split('\n')) {
181
+ if (line.startsWith('p')) {
182
+ pid = Number(line.slice(1));
183
+ seen.add(pid);
184
+ }
185
+ else if (line.startsWith('n') && pid !== undefined && pid !== process.pid && under(line.slice(1)))
186
+ found.push(pid);
187
+ }
188
+ // lsof silently omits what it cannot read. An own-user process it omitted is judged by the
189
+ // Linux EACCES rule: a possible holder unless it predates the worker. Other users' are skipped.
190
+ const own = darwin.ownProcesses();
191
+ if (!own)
192
+ return 'unknown';
193
+ for (const entry of own) {
194
+ if (seen.has(entry.pid) || entry.pid === process.pid)
195
+ continue;
196
+ if (since === undefined || entry.startedAtMs === undefined || entry.startedAtMs >= since)
197
+ found.push(entry.pid);
198
+ }
199
+ return [...new Set(found)];
200
+ }
201
+ /** A missing record (legacy) relies on the working-directory scan alone. `paths` are the
202
+ * worktree and every scratch location, which finalization deletes. A live foreign controller
203
+ * short-circuits the scan; otherwise `pids` names every live recorded or scanned process. */
204
+ export function inspectGeneration({ record, paths, since }) {
205
+ if (record && !isCurrentProcess(record.controller) && recordedProcessLive(record.controller))
206
+ return { liveness: 'alive', controller: record.controller.pid, pids: [] };
207
+ const recorded = record?.processes.filter(recordedProcessLive).map(entry => entry.pid) ?? [];
208
+ const scan = processesWithCwdUnder(paths, process.platform, realProc, since);
209
+ const pids = [...new Set([...recorded, ...(scan === 'unknown' ? [] : scan)])];
210
+ return { liveness: pids.length ? 'alive' : scan === 'unknown' ? 'unknown' : 'gone', pids };
211
+ }
212
+ export function probeGeneration(input) {
213
+ return inspectGeneration(input).liveness;
214
+ }
215
+ //# sourceMappingURL=process-liveness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-liveness.js","sourceRoot":"","sources":["../../src/delegation/process-liveness.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export type DelegationSession = {
8
8
  revoke(): void;
9
9
  };
10
10
  export type DelegationProvisioner = (runId: string) => DelegationSession | undefined;
11
- export declare function bundledWorkerInvocation(): string;
11
+ export declare function bundledWorkerInvocation(command?: 'worker' | 'discover'): string;
12
12
  export declare function provisionDelegationSession(options: {
13
13
  projectId: string;
14
14
  runId: string;
@@ -7,11 +7,11 @@ import { createDelegationRoutes } from './routes.js';
7
7
  import { createDelegationApp, startDelegationTransport } from './transport.js';
8
8
  import { delegationEndpoint } from './cli.js';
9
9
  const quote = (value) => `'${value.replaceAll("'", "'\\''")}'`;
10
- export function bundledWorkerInvocation() {
10
+ export function bundledWorkerInvocation(command = 'worker') {
11
11
  // Source-mode dev uses this checkout's loader; a published installation needs only Node.
12
12
  const source = import.meta.url.endsWith('.ts');
13
13
  const entry = fileURLToPath(new URL(source ? '../index.ts' : '../index.js', import.meta.url));
14
- return [process.execPath, ...(source ? ['--import', import.meta.resolve('tsx')] : []), entry].map(quote).join(' ') + ' worker';
14
+ return [process.execPath, ...(source ? ['--import', import.meta.resolve('tsx')] : []), entry].map(quote).join(' ') + ` ${command}`;
15
15
  }
16
16
  export function provisionDelegationSession(options) {
17
17
  if (!delegationEnabled())
@@ -63,6 +63,9 @@ export function provisionDelegationSession(options) {
63
63
  `Per-run controls suppress verified native entry points only; custom extensions and same-user unrestricted shell are not hard isolation.`,
64
64
  `Owned workers are available through the bundled command ${invocation}.`,
65
65
  `Commands return JSON.`,
66
+ `Before choosing a runner or model, use ${bundledWorkerInvocation('discover')} runners, then ${bundledWorkerInvocation('discover')} models --runner=<name>.`,
67
+ `Discovery lists host default-account runner status, enablement, model IDs and advertised per-model effortLevels; absent effort metadata means unknown. It uses your controller automatically. Spawn still uses --backend for runner selection.`,
68
+ `A fresh nonempty default-account catalog rejects unknown explicit default-account model pins before creating a worker and reports available models and alternative runners; unavailable, empty or stale discovery does not invent choices. Inherited defaults and accepted retries stay unchanged.`,
66
69
  conversationGuidance,
67
70
  `Worker questions arrive as requests carrying a question; answer with worker reply <worker-id> '<answer>' --id <new-message-UUID> --request-id <question-id>, one '<header>: <option>' line per question, which the worker reads verbatim as its answer. If you cannot decide, ask the human with your own question, then reply. Progress and follow-ups never answer it, and you cannot finish while it is unanswered.`,
68
71
  `Use ${invocation} spawn --baseline parent-head --request-id <UUID> '<task>' (or an explicit committed ref).`,
@@ -1 +1 @@
1
- {"version":3,"file":"provision.js","sourceRoot":"","sources":["../../src/delegation/provision.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provision.js","sourceRoot":"","sources":["../../src/delegation/provision.ts"],"names":[],"mappings":"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"}
@@ -51,12 +51,16 @@ export async function collectWorkerEvidence(repoRoot, store, run) {
51
51
  if (!destroyed)
52
52
  diff = { state: 'unavailable', reason: 'unverified' };
53
53
  }
54
- // A retained snapshot guarantees bytes even after cleanup; live availability is represented by cleanup/workspace and HEAD.
55
- if (diffSnapshot === undefined && delegation.destroy && previous?.revision === workerRevision(run) && previous.diff.state === 'available') {
56
- const retained = store.readWorkerResultDiff(delegation.parentRunId, run.id);
57
- if (retained !== undefined) {
58
- diffSnapshot = retained;
59
- diff = { ...previous.diff, snapshotId: randomUUID() };
54
+ // Re-read after the live workspace checks. A concurrent reclaim can commit a
55
+ // snapshot while this collect still holds a `previous` captured as undefined.
56
+ if (diffSnapshot === undefined) {
57
+ const stored = store.readWorkerResult(delegation.parentRunId, run.id);
58
+ if (stored?.revision === workerRevision(run) && stored.diff.state === 'available') {
59
+ const retained = store.readWorkerResultDiff(delegation.parentRunId, run.id);
60
+ if (retained !== undefined) {
61
+ diffSnapshot = retained;
62
+ diff = { ...stored.diff, snapshotId: randomUUID() };
63
+ }
60
64
  }
61
65
  }
62
66
  const dataDir = join(repoRoot, '.ai/cezar');
@@ -1 +1 @@
1
- {"version":3,"file":"results.js","sourceRoot":"","sources":["../../src/delegation/results.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../../src/delegation/results.ts"],"names":[],"mappings":"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"}