@claudexor/cli 1.0.1 → 2.1.2

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 (213) hide show
  1. package/dist/acp-surface-runner.d.ts +17 -0
  2. package/dist/acp-surface-runner.d.ts.map +1 -0
  3. package/dist/acp-surface-runner.js +187 -0
  4. package/dist/acp-surface-runner.js.map +1 -0
  5. package/dist/args.d.ts.map +1 -1
  6. package/dist/args.js.map +1 -1
  7. package/dist/bridge-serve.d.ts +3 -0
  8. package/dist/bridge-serve.d.ts.map +1 -0
  9. package/dist/bridge-serve.js +39 -0
  10. package/dist/bridge-serve.js.map +1 -0
  11. package/dist/capabilities.d.ts.map +1 -1
  12. package/dist/capabilities.js +12 -3
  13. package/dist/capabilities.js.map +1 -1
  14. package/dist/claude-oauth-usage.d.ts +33 -0
  15. package/dist/claude-oauth-usage.d.ts.map +1 -0
  16. package/dist/claude-oauth-usage.js +190 -0
  17. package/dist/claude-oauth-usage.js.map +1 -0
  18. package/dist/claude-statusline.d.ts +25 -0
  19. package/dist/claude-statusline.d.ts.map +1 -0
  20. package/dist/claude-statusline.js +259 -0
  21. package/dist/claude-statusline.js.map +1 -0
  22. package/dist/claudexord.js +346 -543
  23. package/dist/claudexord.js.map +1 -1
  24. package/dist/cli-io.d.ts +8 -9
  25. package/dist/cli-io.d.ts.map +1 -1
  26. package/dist/cli-io.js +11 -7
  27. package/dist/cli-io.js.map +1 -1
  28. package/dist/cli.js +475 -516
  29. package/dist/cli.js.map +1 -1
  30. package/dist/codex-quota-source.d.ts +11 -0
  31. package/dist/codex-quota-source.d.ts.map +1 -0
  32. package/dist/codex-quota-source.js +181 -0
  33. package/dist/codex-quota-source.js.map +1 -0
  34. package/dist/command-flags.d.ts +18 -0
  35. package/dist/command-flags.d.ts.map +1 -0
  36. package/dist/command-flags.js +124 -0
  37. package/dist/command-flags.js.map +1 -0
  38. package/dist/command-registry.d.ts +2 -40
  39. package/dist/command-registry.d.ts.map +1 -1
  40. package/dist/command-registry.js +74 -164
  41. package/dist/command-registry.js.map +1 -1
  42. package/dist/control-services.d.ts +2483 -0
  43. package/dist/control-services.d.ts.map +1 -0
  44. package/dist/control-services.js +437 -0
  45. package/dist/control-services.js.map +1 -0
  46. package/dist/credential-commands.d.ts +9 -0
  47. package/dist/credential-commands.d.ts.map +1 -0
  48. package/dist/credential-commands.js +224 -0
  49. package/dist/credential-commands.js.map +1 -0
  50. package/dist/daemon-lifecycle.d.ts +7 -3
  51. package/dist/daemon-lifecycle.d.ts.map +1 -1
  52. package/dist/daemon-lifecycle.js +40 -12
  53. package/dist/daemon-lifecycle.js.map +1 -1
  54. package/dist/daemon-run.d.ts +2 -0
  55. package/dist/daemon-run.d.ts.map +1 -1
  56. package/dist/daemon-run.js +62 -14
  57. package/dist/daemon-run.js.map +1 -1
  58. package/dist/daemon-runtime-shutdown.d.ts +58 -0
  59. package/dist/daemon-runtime-shutdown.d.ts.map +1 -0
  60. package/dist/daemon-runtime-shutdown.js +142 -0
  61. package/dist/daemon-runtime-shutdown.js.map +1 -0
  62. package/dist/decision.d.ts.map +1 -1
  63. package/dist/decision.js +12 -3
  64. package/dist/decision.js.map +1 -1
  65. package/dist/live.d.ts +29 -0
  66. package/dist/live.d.ts.map +1 -1
  67. package/dist/live.js +117 -6
  68. package/dist/live.js.map +1 -1
  69. package/dist/local-attachment.d.ts +14 -0
  70. package/dist/local-attachment.d.ts.map +1 -0
  71. package/dist/local-attachment.js +67 -0
  72. package/dist/local-attachment.js.map +1 -0
  73. package/dist/mcp-runner.d.ts +4 -15
  74. package/dist/mcp-runner.d.ts.map +1 -1
  75. package/dist/mcp-runner.js +273 -145
  76. package/dist/mcp-runner.js.map +1 -1
  77. package/dist/native-login.d.ts +21 -0
  78. package/dist/native-login.d.ts.map +1 -0
  79. package/dist/native-login.js +111 -0
  80. package/dist/native-login.js.map +1 -0
  81. package/dist/ops-commands.d.ts +8 -6
  82. package/dist/ops-commands.d.ts.map +1 -1
  83. package/dist/ops-commands.js +250 -168
  84. package/dist/ops-commands.js.map +1 -1
  85. package/dist/orchestrate-options.d.ts.map +1 -1
  86. package/dist/orchestrate-options.js +1 -1
  87. package/dist/orchestrate-options.js.map +1 -1
  88. package/dist/orphan-reaper.d.ts +4 -5
  89. package/dist/orphan-reaper.d.ts.map +1 -1
  90. package/dist/orphan-reaper.js +29 -56
  91. package/dist/orphan-reaper.js.map +1 -1
  92. package/dist/orphan-sweeper.d.ts +1 -2
  93. package/dist/orphan-sweeper.d.ts.map +1 -1
  94. package/dist/orphan-sweeper.js +29 -48
  95. package/dist/orphan-sweeper.js.map +1 -1
  96. package/dist/plugins.d.ts.map +1 -1
  97. package/dist/plugins.js +196 -64
  98. package/dist/plugins.js.map +1 -1
  99. package/dist/primary-output.d.ts.map +1 -1
  100. package/dist/primary-output.js.map +1 -1
  101. package/dist/profile-registration.d.ts +15 -0
  102. package/dist/profile-registration.d.ts.map +1 -0
  103. package/dist/profile-registration.js +68 -0
  104. package/dist/profile-registration.js.map +1 -0
  105. package/dist/project-command.d.ts +3 -0
  106. package/dist/project-command.d.ts.map +1 -0
  107. package/dist/project-command.js +87 -0
  108. package/dist/project-command.js.map +1 -0
  109. package/dist/quota-command.d.ts +3 -0
  110. package/dist/quota-command.d.ts.map +1 -0
  111. package/dist/quota-command.js +59 -0
  112. package/dist/quota-command.js.map +1 -0
  113. package/dist/registry.d.ts +1 -1
  114. package/dist/registry.d.ts.map +1 -1
  115. package/dist/registry.js +16 -4
  116. package/dist/registry.js.map +1 -1
  117. package/dist/release.d.ts.map +1 -1
  118. package/dist/release.js +15 -3
  119. package/dist/release.js.map +1 -1
  120. package/dist/repl.d.ts +3 -8
  121. package/dist/repl.d.ts.map +1 -1
  122. package/dist/repl.js +23 -122
  123. package/dist/repl.js.map +1 -1
  124. package/dist/request-preflight.d.ts +13 -0
  125. package/dist/request-preflight.d.ts.map +1 -0
  126. package/dist/request-preflight.js +81 -0
  127. package/dist/request-preflight.js.map +1 -0
  128. package/dist/retention-service.d.ts +24 -0
  129. package/dist/retention-service.d.ts.map +1 -0
  130. package/dist/retention-service.js +100 -0
  131. package/dist/retention-service.js.map +1 -0
  132. package/dist/retry-command-specs.d.ts +3 -0
  133. package/dist/retry-command-specs.d.ts.map +1 -0
  134. package/dist/retry-command-specs.js +21 -0
  135. package/dist/retry-command-specs.js.map +1 -0
  136. package/dist/retry-command.d.ts +4 -0
  137. package/dist/retry-command.d.ts.map +1 -0
  138. package/dist/retry-command.js +57 -0
  139. package/dist/retry-command.js.map +1 -0
  140. package/dist/review-command.d.ts.map +1 -1
  141. package/dist/review-command.js +47 -12
  142. package/dist/review-command.js.map +1 -1
  143. package/dist/run-options.d.ts +2 -2
  144. package/dist/run-options.d.ts.map +1 -1
  145. package/dist/run-options.js +27 -5
  146. package/dist/run-options.js.map +1 -1
  147. package/dist/settings-command.d.ts.map +1 -1
  148. package/dist/settings-command.js +143 -188
  149. package/dist/settings-command.js.map +1 -1
  150. package/dist/settings-service.d.ts +50 -0
  151. package/dist/settings-service.d.ts.map +1 -1
  152. package/dist/settings-service.js +67 -1
  153. package/dist/settings-service.js.map +1 -1
  154. package/dist/setup-job-reducer.d.ts +9 -0
  155. package/dist/setup-job-reducer.d.ts.map +1 -0
  156. package/dist/setup-job-reducer.js +290 -0
  157. package/dist/setup-job-reducer.js.map +1 -0
  158. package/dist/setup-job-store.d.ts +250 -0
  159. package/dist/setup-job-store.d.ts.map +1 -0
  160. package/dist/setup-job-store.js +359 -0
  161. package/dist/setup-job-store.js.map +1 -0
  162. package/dist/setup-job-support.d.ts +27 -0
  163. package/dist/setup-job-support.d.ts.map +1 -0
  164. package/dist/setup-job-support.js +141 -0
  165. package/dist/setup-job-support.js.map +1 -0
  166. package/dist/setup-jobs.d.ts +437 -22
  167. package/dist/setup-jobs.d.ts.map +1 -1
  168. package/dist/setup-jobs.js +813 -423
  169. package/dist/setup-jobs.js.map +1 -1
  170. package/dist/setup-lifecycle-binding.d.ts +40 -0
  171. package/dist/setup-lifecycle-binding.d.ts.map +1 -0
  172. package/dist/setup-lifecycle-binding.js +159 -0
  173. package/dist/setup-lifecycle-binding.js.map +1 -0
  174. package/dist/setup-login-protocol.d.ts +13 -0
  175. package/dist/setup-login-protocol.d.ts.map +1 -0
  176. package/dist/setup-login-protocol.js +179 -0
  177. package/dist/setup-login-protocol.js.map +1 -0
  178. package/dist/setup-login-runner.d.ts +20 -0
  179. package/dist/setup-login-runner.d.ts.map +1 -0
  180. package/dist/setup-login-runner.js +225 -0
  181. package/dist/setup-login-runner.js.map +1 -0
  182. package/dist/setup-supervisor.d.ts +53 -0
  183. package/dist/setup-supervisor.d.ts.map +1 -0
  184. package/dist/setup-supervisor.js +177 -0
  185. package/dist/setup-supervisor.js.map +1 -0
  186. package/dist/spec.d.ts +9 -20
  187. package/dist/spec.d.ts.map +1 -1
  188. package/dist/spec.js +49 -21
  189. package/dist/spec.js.map +1 -1
  190. package/dist/thread-delivery.d.ts +18 -0
  191. package/dist/thread-delivery.d.ts.map +1 -0
  192. package/dist/thread-delivery.js +67 -0
  193. package/dist/thread-delivery.js.map +1 -0
  194. package/dist/thread-select.d.ts +9 -0
  195. package/dist/thread-select.d.ts.map +1 -0
  196. package/dist/thread-select.js +12 -0
  197. package/dist/thread-select.js.map +1 -0
  198. package/dist/trust-command.d.ts.map +1 -1
  199. package/dist/trust-command.js +69 -61
  200. package/dist/trust-command.js.map +1 -1
  201. package/dist/trust-services.d.ts +5 -6
  202. package/dist/trust-services.d.ts.map +1 -1
  203. package/dist/trust-services.js +42 -13
  204. package/dist/trust-services.js.map +1 -1
  205. package/package.json +24 -22
  206. package/dist/attachment-resolver.d.ts +0 -11
  207. package/dist/attachment-resolver.d.ts.map +0 -1
  208. package/dist/attachment-resolver.js +0 -61
  209. package/dist/attachment-resolver.js.map +0 -1
  210. package/dist/settings-display.d.ts +0 -3
  211. package/dist/settings-display.d.ts.map +0 -1
  212. package/dist/settings-display.js +0 -33
  213. package/dist/settings-display.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"orphan-reaper.d.ts","sourceRoot":"","sources":["../src/orphan-reaper.ts"],"names":[],"mappings":"AAmBA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAapD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CA0C1D"}
1
+ {"version":3,"file":"orphan-reaper.d.ts","sourceRoot":"","sources":["../src/orphan-reaper.ts"],"names":[],"mappings":"AAQA,OAAO,EAKL,KAAK,mBAAmB,EACzB,MAAM,iBAAiB,CAAC;AAQzB,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAapD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,aAAa,GAAE,mBAAgD,GAC9D,MAAM,EAAE,CAoCV"}
@@ -2,15 +2,11 @@
2
2
  * Orphaned-child bookkeeping for the daemon. Harness children run in
3
3
  * their OWN process groups (deliberate: group kill), so they survive a daemon
4
4
  * crash/SIGKILL and keep mutating trees with nobody watching. The daemon
5
- * periodically snapshots the live child registry to a pids file; on the next
6
- * start, any recorded pid that is still alive AND still runs the recorded
7
- * command is an orphan from a previous daemon life — its process group is
8
- * killed before new work is accepted.
5
+ * periodically snapshots exact kernel process-group handles to a pids file;
6
+ * on the next start, only the same leader birth identity may be signalled.
9
7
  */
10
- import { execFileSync } from "node:child_process";
11
8
  import { readFileSync, renameSync, rmSync, writeFileSync } from "node:fs";
12
- import { basename } from "node:path";
13
- import { liveChildProcesses } from "@claudexor/core";
9
+ import { defaultProcessGroupService, liveChildProcesses, parseProcessGroupHandle, } from "@claudexor/core";
14
10
  export function writePidsSnapshot(path) {
15
11
  try {
16
12
  const pids = liveChildProcesses();
@@ -27,17 +23,30 @@ export function writePidsSnapshot(path) {
27
23
  }
28
24
  }
29
25
  /**
30
- * Kill process groups recorded by a PREVIOUS daemon life. Guards against pid
31
- * recycling by requiring the live process's command name to still match the
32
- * recorded command (typed equality on basename, no pattern matching). Returns
33
- * a human-readable action log for the daemon log.
26
+ * Kill process groups recorded by a PREVIOUS daemon life. Legacy pid/cmd-only
27
+ * entries and stale/unknown identities are skipped fail-closed.
34
28
  */
35
- export function reapRecordedOrphans(path) {
29
+ export function reapRecordedOrphans(path, processGroups = defaultProcessGroupService) {
36
30
  let recorded = [];
37
31
  try {
38
32
  const raw = JSON.parse(readFileSync(path, "utf8"));
39
33
  if (Array.isArray(raw.pids)) {
40
- recorded = raw.pids.filter((p) => !!p && typeof p === "object" && typeof p.pid === "number" && typeof p.cmd === "string");
34
+ recorded = raw.pids.flatMap((value) => {
35
+ if (!value || typeof value !== "object")
36
+ return [];
37
+ const candidate = value;
38
+ if (!Number.isSafeInteger(candidate.pid) || typeof candidate.cmd !== "string")
39
+ return [];
40
+ try {
41
+ const processGroup = parseProcessGroupHandle(candidate.processGroup);
42
+ return processGroup.pgid === candidate.pid
43
+ ? [{ pid: candidate.pid, cmd: candidate.cmd, processGroup }]
44
+ : [];
45
+ }
46
+ catch {
47
+ return [];
48
+ }
49
+ });
41
50
  }
42
51
  }
43
52
  catch {
@@ -45,53 +54,17 @@ export function reapRecordedOrphans(path) {
45
54
  }
46
55
  const actions = [];
47
56
  for (const child of recorded) {
48
- const liveCmd = processCommandName(child.pid);
49
- if (liveCmd === null)
50
- continue; // already gone
51
- if (basename(liveCmd) !== basename(child.cmd)) {
52
- actions.push(`skip pid ${child.pid}: command changed (${basename(liveCmd)} != ${basename(child.cmd)}) — likely recycled`);
53
- continue;
54
- }
55
- try {
56
- process.kill(-child.pid, "SIGTERM");
57
- actions.push(`SIGTERM orphan process group ${child.pid} (${basename(child.cmd)})`);
58
- setTimeout(() => {
59
- try {
60
- process.kill(-child.pid, "SIGKILL");
61
- }
62
- catch {
63
- /* group exited after SIGTERM */
64
- }
65
- }, 3_000).unref?.();
66
- }
67
- catch {
68
- try {
69
- process.kill(child.pid, "SIGTERM");
70
- actions.push(`SIGTERM orphan pid ${child.pid} (${basename(child.cmd)}; group already gone)`);
71
- }
72
- catch {
73
- /* exited between the liveness check and the kill */
57
+ const term = processGroups.signal(child.processGroup, "SIGTERM");
58
+ if (term.status !== "sent") {
59
+ if (term.status === "unknown") {
60
+ actions.push(`skip orphan process group ${child.pid} (${child.cmd}): ${term.reason}`);
74
61
  }
62
+ continue;
75
63
  }
64
+ actions.push(`SIGTERM orphan process group ${child.pid} (${child.cmd})`);
65
+ setTimeout(() => processGroups.signal(child.processGroup, "SIGKILL"), 3_000).unref?.();
76
66
  }
77
67
  rmSync(path, { force: true });
78
68
  return actions;
79
69
  }
80
- /** The live command name for a pid, or null when the process is gone. */
81
- function processCommandName(pid) {
82
- try {
83
- process.kill(pid, 0);
84
- }
85
- catch {
86
- return null;
87
- }
88
- try {
89
- const out = execFileSync("ps", ["-p", String(pid), "-o", "comm="], { encoding: "utf8" });
90
- const cmd = out.trim();
91
- return cmd.length > 0 ? cmd : null;
92
- }
93
- catch {
94
- return null;
95
- }
96
- }
97
70
  //# sourceMappingURL=orphan-reaper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"orphan-reaper.js","sourceRoot":"","sources":["../src/orphan-reaper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orphan-reaper.js","sourceRoot":"","sources":["../src/orphan-reaper.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  interface SweepInput {
2
- jobsPath: string;
3
- threadsPath: string;
2
+ journalRoot: string;
4
3
  }
5
4
  export declare function sweepOrphanWorkspaces(input: SweepInput): Promise<string[]>;
6
5
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"orphan-sweeper.d.ts","sourceRoot":"","sources":["../src/orphan-sweeper.ts"],"names":[],"mappings":"AA2BA,UAAU,UAAU;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAchF"}
1
+ {"version":3,"file":"orphan-sweeper.d.ts","sourceRoot":"","sources":["../src/orphan-sweeper.ts"],"names":[],"mappings":"AA6BA,UAAU,UAAU;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAahF"}
@@ -7,7 +7,7 @@
7
7
  * to interrupted, queued jobs have not materialized task ids), so every
8
8
  * found envelope under a daemon-known project root is an orphan.
9
9
  *
10
- * Reach is honest: only roots recorded in jobs.json (plus their thread
10
+ * Reach is honest: only roots recorded in the command journal (plus their thread
11
11
  * trees) are sweepable — a project never run through this daemon is not.
12
12
  *
13
13
  * LIVE-OWNER GUARD: envelopes carry owner.json (pid + kernel start time);
@@ -22,31 +22,33 @@ import { existsSync, readFileSync, readdirSync, rmSync, statSync } from "node:fs
22
22
  import { tmpdir } from "node:os";
23
23
  import { join } from "node:path";
24
24
  import { WorkspaceManager, git, processStartTime } from "@claudexor/workspace";
25
+ import { projectRuntimeDir } from "@claudexor/util";
26
+ import { DurableJournal } from "@claudexor/journal";
25
27
  const RO_HOME_MAX_AGE_MS = 24 * 60 * 60 * 1000;
26
28
  export async function sweepOrphanWorkspaces(input) {
27
29
  const actions = [];
28
- const roots = knownProjectRoots(input.jobsPath);
29
- const liveThreadIds = knownThreadIds(input.threadsPath);
30
+ const roots = knownProjectRoots(input.journalRoot);
30
31
  for (const root of roots) {
31
32
  const trees = [root, ...threadTreesUnder(root)];
32
33
  for (const tree of trees) {
33
34
  actions.push(...(await sweepEnvelopesUnder(tree)));
34
- actions.push(...(await sweepAttemptBranches(tree, liveThreadIds)));
35
+ actions.push(...(await sweepAttemptBranches(tree)));
35
36
  }
36
37
  }
37
38
  actions.push(...sweepReadOnlyHomes());
38
39
  return actions;
39
40
  }
40
- /** Project roots this daemon has ever run against (jobs.json scope roots). */
41
- function knownProjectRoots(jobsPath) {
41
+ /** Project roots this daemon has ever run against (command journal scope roots). */
42
+ function knownProjectRoots(journalRoot) {
42
43
  const roots = new Set();
44
+ let journal = null;
43
45
  try {
44
- const records = JSON.parse(readFileSync(jobsPath, "utf8"));
45
- if (!Array.isArray(records))
46
- return [];
47
- for (const rec of records) {
48
- const scope = rec?.params
49
- ?.scope;
46
+ journal = new DurableJournal({ rootDir: journalRoot, partition: "global" });
47
+ for (const entry of journal.records()) {
48
+ if (entry.type !== "command.accepted")
49
+ continue;
50
+ const payload = entry.payload;
51
+ const scope = payload.record?.params?.scope;
50
52
  if (scope &&
51
53
  scope.kind === "project" &&
52
54
  typeof scope.root === "string" &&
@@ -58,20 +60,14 @@ function knownProjectRoots(jobsPath) {
58
60
  catch {
59
61
  return [];
60
62
  }
61
- return [...roots];
62
- }
63
- function knownThreadIds(threadsPath) {
64
- try {
65
- const raw = JSON.parse(readFileSync(threadsPath, "utf8"));
66
- return new Set((raw.threads ?? []).map((t) => t?.id).filter((id) => typeof id === "string"));
67
- }
68
- catch {
69
- return new Set();
63
+ finally {
64
+ journal?.close();
70
65
  }
66
+ return [...roots];
71
67
  }
72
- /** Isolated-thread worktrees nest their own envelopes: <root>/.claudexor/threads/<tid>/tree. */
68
+ /** Isolated-thread worktrees live in the external per-project runtime namespace. */
73
69
  function threadTreesUnder(root) {
74
- const threadsDir = join(root, ".claudexor", "threads");
70
+ const threadsDir = join(projectRuntimeDir(root), "threads");
75
71
  if (!existsSync(threadsDir))
76
72
  return [];
77
73
  try {
@@ -85,7 +81,7 @@ function threadTreesUnder(root) {
85
81
  }
86
82
  async function sweepEnvelopesUnder(execRoot) {
87
83
  const actions = [];
88
- const workspacesDir = join(execRoot, ".claudexor", "workspaces");
84
+ const workspacesDir = join(projectRuntimeDir(execRoot), "workspaces");
89
85
  if (!existsSync(workspacesDir))
90
86
  return actions;
91
87
  const wsm = new WorkspaceManager(execRoot);
@@ -114,8 +110,8 @@ async function sweepEnvelopesUnder(execRoot) {
114
110
  return actions;
115
111
  }
116
112
  /** How long an envelope may be KEPT on live-pid evidence alone when
117
- * start-time recycling proof is unavailable on either side. Bounds credential
118
- * retention: a recycled pid cannot pin a seeded-credential home forever. */
113
+ * start-time recycling proof is unavailable on either side. Bounds scoped
114
+ * auth/scratch retention: a recycled pid cannot pin a route-scoped home forever. */
119
115
  const OWNERLESS_PROOF_KEEP_MAX_AGE_MS = 24 * 60 * 60 * 1000;
120
116
  /** The live owner pid recorded in the envelope's owner.json, or null when the
121
117
  * marker is missing, the pid is dead, or the pid was RECYCLED (the live
@@ -123,7 +119,7 @@ const OWNERLESS_PROOF_KEEP_MAX_AGE_MS = 24 * 60 * 60 * 1000;
123
119
  * names/titles mutate, start times never do). FAIL-SAFE, bounded: when
124
120
  * start-time evidence is unavailable on either side (`ps` missing/sandboxed,
125
121
  * legacy marker), a LIVE pid keeps the envelope only while it is FRESH —
126
- * in-flight work survives, but a recycled pid cannot retain credential-bearing
122
+ * in-flight work survives, but a recycled pid cannot retain route-scoped
127
123
  * homes indefinitely. A pid alive under another uid (EPERM) counts as alive. */
128
124
  function envelopeOwner(envelopeBase) {
129
125
  try {
@@ -153,7 +149,7 @@ function envelopeOwner(envelopeBase) {
153
149
  // only the file's mtime, not its parent directory's, so directory stats
154
150
  // alone would sweep a live owner that edits in place. A live long-running
155
151
  // owner keeps extending its own window; a recycled pid cannot pin a
156
- // seeded-credential home forever.
152
+ // route-scoped home forever.
157
153
  const newestMtime = Math.max(safeMtime(envelopeBase), safeMtime(join(envelopeBase, "owner.json")), newestMtimeUnder(join(envelopeBase, "tree")), newestMtimeUnder(join(envelopeBase, "home")));
158
154
  return Date.now() - newestMtime < OWNERLESS_PROOF_KEEP_MAX_AGE_MS ? raw.pid : null;
159
155
  }
@@ -164,11 +160,10 @@ function envelopeOwner(envelopeBase) {
164
160
  /**
165
161
  * Per-attempt branches whose envelope is gone are debris (disposeOrphan
166
162
  * removes its own branch; this catches branches whose envelope dir was
167
- * deleted out-of-band). Thread branches (`claudexor/thread-<tid>`) are
168
- * PERSISTENT for live threads and only deleted when the thread is gone from
169
- * the store.
163
+ * deleted out-of-band). Persistent thread branches are lifecycle-owned and
164
+ * are removed only by explicit purge, never by this generic debris sweep.
170
165
  */
171
- async function sweepAttemptBranches(execRoot, liveThreadIds) {
166
+ async function sweepAttemptBranches(execRoot) {
172
167
  const actions = [];
173
168
  const branches = await git(execRoot, [
174
169
  "branch",
@@ -193,26 +188,12 @@ async function sweepAttemptBranches(execRoot, liveThreadIds) {
193
188
  continue;
194
189
  }
195
190
  if (rest.startsWith("thread-")) {
196
- const tid = rest.slice("thread-".length);
197
- if (liveThreadIds.has(tid))
198
- continue;
199
- // Dead thread branch: its worktree dir decides — an existing tree means
200
- // the thread store lost the record but the work is still there; keep it
201
- // (evidence beats cleanup) and only note it.
202
- const threadTree = join(execRoot, ".claudexor", "threads", tid, "tree");
203
- if (existsSync(threadTree)) {
204
- actions.push(`kept branch ${branch}: thread tree still on disk (store record missing)`);
205
- continue;
206
- }
207
- const del = await git(execRoot, ["branch", "-D", branch]);
208
- if (del.code === 0)
209
- actions.push(`deleted dead thread branch ${branch} under ${execRoot}`);
210
191
  continue;
211
192
  }
212
193
  const [taskId, attemptId] = rest.split("/");
213
194
  if (!taskId || !attemptId)
214
195
  continue;
215
- const envelopeBase = join(execRoot, ".claudexor", "workspaces", taskId, attemptId);
196
+ const envelopeBase = join(projectRuntimeDir(execRoot), "workspaces", taskId, attemptId);
216
197
  if (existsSync(envelopeBase))
217
198
  continue; // still owned (sweep order: envelopes first)
218
199
  const del = await git(execRoot, ["branch", "-D", branch]);
@@ -221,7 +202,7 @@ async function sweepAttemptBranches(execRoot, liveThreadIds) {
221
202
  }
222
203
  return actions;
223
204
  }
224
- /** Read-only scoped homes and verify worktree dirs leak on crash; ro homes can hold seeded credentials. */
205
+ /** Read-only scoped homes and verify worktree dirs leak on crash; ro homes can hold injected API-route material. */
225
206
  function sweepReadOnlyHomes() {
226
207
  const actions = [];
227
208
  const tmp = tmpdir();
@@ -1 +1 @@
1
- {"version":3,"file":"orphan-sweeper.js","sourceRoot":"","sources":["../src/orphan-sweeper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orphan-sweeper.js","sourceRoot":"","sources":["../src/orphan-sweeper.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../src/plugins.ts"],"names":[],"mappings":"AAwBA,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;AACpE,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,KAAK,CAAC;AAC9C,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;AAClF,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,WAAW,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAE5G,eAAO,MAAM,YAAY,EAAE,UAAU,EAA8C,CAAC;AACpF,eAAO,MAAM,cAAc,EAAE,YAAY,EAA6B,CAAC;AACvE,eAAO,MAAM,YAAY,EAAE,UAAU,EAA2D,CAAC;AAkEjG,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,EAAE,CAAC;IACZ,EAAE,EAAE,KAAK,CAAC;IACV,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAyyCD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAoB/I;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAWtE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,wBAAwB,CAUzK"}
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../src/plugins.ts"],"names":[],"mappings":"AAyBA,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;AACpE,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,KAAK,CAAC;AAC9C,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;AAClF,MAAM,MAAM,kBAAkB,GAC5B,SAAS,GAAG,WAAW,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAE7E,eAAO,MAAM,YAAY,EAAE,UAAU,EAA8C,CAAC;AACpF,eAAO,MAAM,cAAc,EAAE,YAAY,EAA6B,CAAC;AACvE,eAAO,MAAM,YAAY,EAAE,UAAU,EAA2D,CAAC;AAkEjG,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,EAAE,CAAC;IACZ,EAAE,EAAE,KAAK,CAAC;IACV,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAmoDD,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,YAAY,EACpB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,mBAAmB,CAAC,CAsB9B;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAWtE;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,wBAAwB,CAU1B"}