@claudexor/cli 3.1.2 → 3.3.7-rc.0

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 (244) hide show
  1. package/dist/about-command.d.ts.map +1 -1
  2. package/dist/accounts-projection.d.ts +8 -1
  3. package/dist/accounts-projection.d.ts.map +1 -1
  4. package/dist/accounts-projection.js +33 -20
  5. package/dist/accounts-projection.js.map +1 -1
  6. package/dist/accounts-services.d.ts +208 -0
  7. package/dist/accounts-services.d.ts.map +1 -0
  8. package/dist/accounts-services.js +88 -0
  9. package/dist/accounts-services.js.map +1 -0
  10. package/dist/acp-surface-runner.d.ts +39 -0
  11. package/dist/acp-surface-runner.d.ts.map +1 -1
  12. package/dist/acp-surface-runner.js +104 -30
  13. package/dist/acp-surface-runner.js.map +1 -1
  14. package/dist/attachment-upload.d.ts +5 -0
  15. package/dist/attachment-upload.d.ts.map +1 -0
  16. package/dist/attachment-upload.js +64 -0
  17. package/dist/attachment-upload.js.map +1 -0
  18. package/dist/capabilities.d.ts.map +1 -1
  19. package/dist/capabilities.js +6 -1
  20. package/dist/capabilities.js.map +1 -1
  21. package/dist/choice-input.d.ts +7 -0
  22. package/dist/choice-input.d.ts.map +1 -0
  23. package/dist/choice-input.js +17 -0
  24. package/dist/choice-input.js.map +1 -0
  25. package/dist/claude-oauth-usage.d.ts.map +1 -1
  26. package/dist/claude-oauth-usage.js +13 -1
  27. package/dist/claude-oauth-usage.js.map +1 -1
  28. package/dist/claudexord-entry.js.map +1 -1
  29. package/dist/claudexord.d.ts +1 -13
  30. package/dist/claudexord.d.ts.map +1 -1
  31. package/dist/claudexord.js +57 -94
  32. package/dist/claudexord.js.map +1 -1
  33. package/dist/cli-error.d.ts.map +1 -1
  34. package/dist/cli-error.js +21 -11
  35. package/dist/cli-error.js.map +1 -1
  36. package/dist/cli.js +143 -163
  37. package/dist/cli.js.map +1 -1
  38. package/dist/codex-device-login.js.map +1 -1
  39. package/dist/codex-quota-source.js.map +1 -1
  40. package/dist/command-flags.d.ts +16 -1
  41. package/dist/command-flags.d.ts.map +1 -1
  42. package/dist/command-flags.js +41 -19
  43. package/dist/command-flags.js.map +1 -1
  44. package/dist/command-registry.d.ts +21 -8
  45. package/dist/command-registry.d.ts.map +1 -1
  46. package/dist/command-registry.js +59 -116
  47. package/dist/command-registry.js.map +1 -1
  48. package/dist/command-scope.d.ts +13 -0
  49. package/dist/command-scope.d.ts.map +1 -0
  50. package/dist/command-scope.js +61 -0
  51. package/dist/command-scope.js.map +1 -0
  52. package/dist/control-services.d.ts +1638 -1003
  53. package/dist/control-services.d.ts.map +1 -1
  54. package/dist/control-services.js +49 -67
  55. package/dist/control-services.js.map +1 -1
  56. package/dist/credential-commands.d.ts.map +1 -1
  57. package/dist/credential-commands.js +13 -3
  58. package/dist/credential-commands.js.map +1 -1
  59. package/dist/daemon-lifecycle.d.ts.map +1 -1
  60. package/dist/daemon-outcome.d.ts +3 -5
  61. package/dist/daemon-outcome.d.ts.map +1 -1
  62. package/dist/daemon-outcome.js +7 -19
  63. package/dist/daemon-outcome.js.map +1 -1
  64. package/dist/daemon-run.d.ts +21 -12
  65. package/dist/daemon-run.d.ts.map +1 -1
  66. package/dist/daemon-run.js +59 -40
  67. package/dist/daemon-run.js.map +1 -1
  68. package/dist/daemon-runtime-shutdown.d.ts +7 -0
  69. package/dist/daemon-runtime-shutdown.d.ts.map +1 -1
  70. package/dist/daemon-runtime-shutdown.js +29 -0
  71. package/dist/daemon-runtime-shutdown.js.map +1 -1
  72. package/dist/delegation-belt-descriptor.js.map +1 -1
  73. package/dist/delegation-output.d.ts +2 -0
  74. package/dist/delegation-output.d.ts.map +1 -1
  75. package/dist/delegation-output.js +3 -1
  76. package/dist/delegation-output.js.map +1 -1
  77. package/dist/harness-command.d.ts +13 -0
  78. package/dist/harness-command.d.ts.map +1 -0
  79. package/dist/harness-command.js +35 -0
  80. package/dist/harness-command.js.map +1 -0
  81. package/dist/harness-installer.d.ts +79 -0
  82. package/dist/harness-installer.d.ts.map +1 -0
  83. package/dist/harness-installer.js +256 -0
  84. package/dist/harness-installer.js.map +1 -0
  85. package/dist/interaction-prompt.d.ts +19 -0
  86. package/dist/interaction-prompt.d.ts.map +1 -0
  87. package/dist/interaction-prompt.js +114 -0
  88. package/dist/interaction-prompt.js.map +1 -0
  89. package/dist/live.d.ts +2 -6
  90. package/dist/live.d.ts.map +1 -1
  91. package/dist/live.js +88 -75
  92. package/dist/live.js.map +1 -1
  93. package/dist/mcp-daemon-unavailable.d.ts +6 -0
  94. package/dist/mcp-daemon-unavailable.d.ts.map +1 -0
  95. package/dist/mcp-daemon-unavailable.js +16 -0
  96. package/dist/mcp-daemon-unavailable.js.map +1 -0
  97. package/dist/mcp-run-projections.d.ts +30 -0
  98. package/dist/mcp-run-projections.d.ts.map +1 -1
  99. package/dist/mcp-run-projections.js +17 -17
  100. package/dist/mcp-run-projections.js.map +1 -1
  101. package/dist/mcp-runner.d.ts.map +1 -1
  102. package/dist/mcp-runner.js +81 -39
  103. package/dist/mcp-runner.js.map +1 -1
  104. package/dist/native-login.js.map +1 -1
  105. package/dist/ops-command-specs.d.ts +64 -0
  106. package/dist/ops-command-specs.d.ts.map +1 -0
  107. package/dist/ops-command-specs.js +146 -0
  108. package/dist/ops-command-specs.js.map +1 -0
  109. package/dist/ops-commands.d.ts.map +1 -1
  110. package/dist/ops-commands.js +23 -5
  111. package/dist/ops-commands.js.map +1 -1
  112. package/dist/orphan-reaper.js.map +1 -1
  113. package/dist/output-mode.d.ts +11 -0
  114. package/dist/output-mode.d.ts.map +1 -0
  115. package/dist/output-mode.js +28 -0
  116. package/dist/output-mode.js.map +1 -0
  117. package/dist/plan-question-loop.d.ts.map +1 -1
  118. package/dist/plan-question-loop.js +17 -13
  119. package/dist/plan-question-loop.js.map +1 -1
  120. package/dist/plugins.js +1 -1
  121. package/dist/plugins.js.map +1 -1
  122. package/dist/primary-output.d.ts +9 -4
  123. package/dist/primary-output.d.ts.map +1 -1
  124. package/dist/primary-output.js +50 -2
  125. package/dist/primary-output.js.map +1 -1
  126. package/dist/quota-subject-universe.d.ts +6 -0
  127. package/dist/quota-subject-universe.d.ts.map +1 -0
  128. package/dist/quota-subject-universe.js +31 -0
  129. package/dist/quota-subject-universe.js.map +1 -0
  130. package/dist/registry.js.map +1 -1
  131. package/dist/release-command.d.ts +1 -1
  132. package/dist/release-command.js +2 -2
  133. package/dist/remote-command-specs.d.ts +45 -0
  134. package/dist/remote-command-specs.d.ts.map +1 -0
  135. package/dist/remote-command-specs.js +29 -0
  136. package/dist/remote-command-specs.js.map +1 -0
  137. package/dist/remote-command.d.ts +11 -0
  138. package/dist/remote-command.d.ts.map +1 -0
  139. package/dist/remote-command.js +262 -0
  140. package/dist/remote-command.js.map +1 -0
  141. package/dist/remote-filesystem.d.ts +33 -0
  142. package/dist/remote-filesystem.d.ts.map +1 -0
  143. package/dist/remote-filesystem.js +280 -0
  144. package/dist/remote-filesystem.js.map +1 -0
  145. package/dist/repo-asset-authority.js.map +1 -1
  146. package/dist/request-preflight.d.ts +11 -2
  147. package/dist/request-preflight.d.ts.map +1 -1
  148. package/dist/request-preflight.js +36 -13
  149. package/dist/request-preflight.js.map +1 -1
  150. package/dist/retention-service.d.ts.map +1 -1
  151. package/dist/retention-service.js +6 -1
  152. package/dist/retention-service.js.map +1 -1
  153. package/dist/retry-command-specs.d.ts.map +1 -1
  154. package/dist/retry-command-specs.js +2 -0
  155. package/dist/retry-command-specs.js.map +1 -1
  156. package/dist/run-applicability.d.ts +74 -0
  157. package/dist/run-applicability.d.ts.map +1 -0
  158. package/dist/run-applicability.js +80 -0
  159. package/dist/run-applicability.js.map +1 -0
  160. package/dist/run-detail-projections.d.ts +23 -0
  161. package/dist/run-detail-projections.d.ts.map +1 -1
  162. package/dist/run-detail-projections.js +32 -1
  163. package/dist/run-detail-projections.js.map +1 -1
  164. package/dist/run-detail-response.d.ts +7 -0
  165. package/dist/run-detail-response.d.ts.map +1 -0
  166. package/dist/run-detail-response.js +23 -0
  167. package/dist/run-detail-response.js.map +1 -0
  168. package/dist/run-facts-projection.d.ts +22 -0
  169. package/dist/run-facts-projection.d.ts.map +1 -0
  170. package/dist/run-facts-projection.js +86 -0
  171. package/dist/run-facts-projection.js.map +1 -0
  172. package/dist/runtime-replacement-stop.d.ts +25 -0
  173. package/dist/runtime-replacement-stop.d.ts.map +1 -0
  174. package/dist/runtime-replacement-stop.js +145 -0
  175. package/dist/runtime-replacement-stop.js.map +1 -0
  176. package/dist/settings-command.d.ts +1 -0
  177. package/dist/settings-command.d.ts.map +1 -1
  178. package/dist/settings-command.js +27 -21
  179. package/dist/settings-command.js.map +1 -1
  180. package/dist/settings-service.d.ts +7 -7
  181. package/dist/settings-service.d.ts.map +1 -1
  182. package/dist/settings-service.js +3 -3
  183. package/dist/settings-service.js.map +1 -1
  184. package/dist/setup-client-pty.d.ts +14 -0
  185. package/dist/setup-client-pty.d.ts.map +1 -0
  186. package/dist/setup-client-pty.js +61 -0
  187. package/dist/setup-client-pty.js.map +1 -0
  188. package/dist/setup-device-code-disclosure.d.ts +15 -0
  189. package/dist/setup-device-code-disclosure.d.ts.map +1 -0
  190. package/dist/setup-device-code-disclosure.js +52 -0
  191. package/dist/setup-device-code-disclosure.js.map +1 -0
  192. package/dist/setup-job-reducer.d.ts.map +1 -1
  193. package/dist/setup-job-reducer.js +1 -0
  194. package/dist/setup-job-reducer.js.map +1 -1
  195. package/dist/setup-job-store.d.ts +275 -75
  196. package/dist/setup-job-store.d.ts.map +1 -1
  197. package/dist/setup-job-store.js.map +1 -1
  198. package/dist/setup-job-support.js.map +1 -1
  199. package/dist/setup-jobs.d.ts +517 -137
  200. package/dist/setup-jobs.d.ts.map +1 -1
  201. package/dist/setup-jobs.js +68 -118
  202. package/dist/setup-jobs.js.map +1 -1
  203. package/dist/setup-lifecycle-binding.d.ts +7 -0
  204. package/dist/setup-lifecycle-binding.d.ts.map +1 -1
  205. package/dist/setup-lifecycle-binding.js +6 -0
  206. package/dist/setup-lifecycle-binding.js.map +1 -1
  207. package/dist/setup-login-child-lifecycle.d.ts +13 -0
  208. package/dist/setup-login-child-lifecycle.d.ts.map +1 -0
  209. package/dist/setup-login-child-lifecycle.js +45 -0
  210. package/dist/setup-login-child-lifecycle.js.map +1 -0
  211. package/dist/setup-login-inline.d.ts +11 -12
  212. package/dist/setup-login-inline.d.ts.map +1 -1
  213. package/dist/setup-login-inline.js +26 -15
  214. package/dist/setup-login-inline.js.map +1 -1
  215. package/dist/setup-login-permit.d.ts +10 -0
  216. package/dist/setup-login-permit.d.ts.map +1 -0
  217. package/dist/setup-login-permit.js +52 -0
  218. package/dist/setup-login-permit.js.map +1 -0
  219. package/dist/setup-login-protocol.d.ts.map +1 -1
  220. package/dist/setup-login-protocol.js +9 -2
  221. package/dist/setup-login-protocol.js.map +1 -1
  222. package/dist/setup-login-runner.d.ts +1 -0
  223. package/dist/setup-login-runner.d.ts.map +1 -1
  224. package/dist/setup-login-runner.js +20 -31
  225. package/dist/setup-login-runner.js.map +1 -1
  226. package/dist/setup-supervisor.d.ts.map +1 -1
  227. package/dist/setup-supervisor.js.map +1 -1
  228. package/dist/terminal-run-output.d.ts +12 -0
  229. package/dist/terminal-run-output.d.ts.map +1 -0
  230. package/dist/terminal-run-output.js +33 -0
  231. package/dist/terminal-run-output.js.map +1 -0
  232. package/dist/thread-continuity-context.d.ts +36 -0
  233. package/dist/thread-continuity-context.d.ts.map +1 -0
  234. package/dist/thread-continuity-context.js +33 -0
  235. package/dist/thread-continuity-context.js.map +1 -0
  236. package/dist/thread-execution-workspace.d.ts +15 -0
  237. package/dist/thread-execution-workspace.d.ts.map +1 -1
  238. package/dist/thread-execution-workspace.js +39 -5
  239. package/dist/thread-execution-workspace.js.map +1 -1
  240. package/dist/thread-turn-services.d.ts +107 -0
  241. package/dist/thread-turn-services.d.ts.map +1 -0
  242. package/dist/thread-turn-services.js +28 -0
  243. package/dist/thread-turn-services.js.map +1 -0
  244. package/package.json +23 -23
@@ -1 +1 @@
1
- {"version":3,"file":"setup-jobs.d.ts","sourceRoot":"","sources":["../src/setup-jobs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-jobs.d.ts","sourceRoot":"","sources":["../src/setup-jobs.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { spawn } from "node:child_process";
2
2
  import { randomUUID } from "node:crypto";
3
- import { chmodSync, existsSync, rmSync, writeFileSync } from "node:fs";
3
+ import { chmodSync, writeFileSync } from "node:fs";
4
4
  import { isAbsolute, join } from "node:path";
5
5
  import { AuthCapabilityVerifier, ProcessGroupService, parseProcessGroupHandle, } from "@claudexor/core";
6
6
  import { daemonDir } from "@claudexor/daemon";
@@ -10,8 +10,11 @@ import * as NativeLogin from "./native-login.js";
10
10
  import { SETUP_PROFILES, processGroupFromJob, profileDoctorProbe, resolveProfileBinding, resolveSetupLoginRunnerPath, shellQuote, stateMatchesDurableExecution, waitWithAbort, withAbortAndTimeout, } from "./setup-job-support.js";
11
11
  import { buildGateway } from "./registry.js";
12
12
  import { ACTIVE_SETUP_STATES, SetupJobStore, TERMINAL_SETUP_STATES } from "./setup-job-store.js";
13
- import { SETUP_LOGIN_PROTOCOL_VERSION, atomicPrivateJson, captureExecutableEvidence, commandDigest, readLoginManifest, readRunnerDeviceCode, readRunnerResult, readRunnerState, sealLoginManifest, verifyExecutableEvidence, } from "./setup-login-protocol.js";
13
+ import { SETUP_LOGIN_PROTOCOL_VERSION, atomicPrivateJson, captureExecutableEvidence, commandDigest, readLoginManifest, readRunnerResult, readRunnerState, sealLoginManifest, verifyExecutableEvidence, } from "./setup-login-protocol.js";
14
14
  import { SetupSupervisor } from "./setup-supervisor.js";
15
+ import { createDeviceCodeDisclosureWatcher } from "./setup-device-code-disclosure.js";
16
+ import { awaitingSetupUserMessage, clientPtyWaitingPatch, isDeviceCodeSetupJob, projectSetupDeviceCode, removeSetupDeviceCodeSidecar, setupTransportConflict, } from "./setup-client-pty.js";
17
+ import { persistSetupLoginPermit, setupLoginDeadlines } from "./setup-login-permit.js";
15
18
  const NO_PROJECT_ROOT = noProjectRepoRoot();
16
19
  const LOGIN_EXTENSION_MS = 15 * 60_000;
17
20
  export function createSetupJobManager(opts = {}) {
@@ -59,58 +62,17 @@ export function createSetupJobManager(opts = {}) {
59
62
  detached: true,
60
63
  stdio: "ignore",
61
64
  }));
62
- function iso() {
63
- return now().toISOString();
64
- }
65
- /** A device-code (app-server) login is identified by its authorized argv —
66
- * the sealed manifest args carry `app-server` for that flow only. */
67
- function isDeviceCodeJob(job) {
68
- return job.authorization?.args.includes("app-server") ?? false;
69
- }
70
- function awaitingUserMessage(job) {
71
- return isDeviceCodeJob(job)
72
- ? `Complete ${job.harness} sign-in: open the URL and enter the one-time code shown in Claudexor.`
73
- : `Complete ${job.harness} native login in Terminal.`;
74
- }
75
- /** The transient device-code disclosure the runner wrote, projected at READ
76
- * time onto a snapshot/event. Never journaled: only surfaced while the login
77
- * is genuinely awaiting the user (the sidecar is removed on terminalization).
78
- * The one-time userCode rides this projection only (INV-062 / D-17). */
79
- function projectDeviceCode(job) {
80
- if (!ACTIVE_SETUP_STATES.has(job.state) || job.phase !== "awaiting_user")
81
- return undefined;
82
- if (!isDeviceCodeJob(job) || !job.authorization)
83
- return undefined;
84
- let sidecar;
85
- try {
86
- sidecar = readRunnerDeviceCode(store.paths(job.jobId).runnerDeviceCode);
87
- }
88
- catch {
89
- return undefined;
90
- }
91
- if (!sidecar ||
92
- sidecar.jobId !== job.jobId ||
93
- sidecar.executionId !== job.authorization.executionId)
94
- return undefined;
95
- return {
96
- flow: sidecar.flow,
97
- verificationUrl: sidecar.verificationUrl,
98
- userCode: sidecar.userCode,
99
- };
100
- }
101
- /** Remove the transient device-code sidecar once a login is terminal so the
102
- * one-time code stops being projected. Best-effort; the journal is authority. */
103
- function removeDeviceCodeSidecar(jobId) {
104
- try {
105
- rmSync(store.paths(jobId).runnerDeviceCode, { force: true });
106
- }
107
- catch {
108
- /* best-effort; the code is invalid once terminal regardless */
109
- }
110
- }
65
+ const iso = () => now().toISOString();
66
+ const projectDeviceCode = (job) => projectSetupDeviceCode(job, store.paths(job.jobId).runnerDeviceCode);
111
67
  function update(jobId, patch, idempotency) {
112
68
  return store.update(jobId, patch, idempotency);
113
69
  }
70
+ const armDeviceCodeDisclosureWatcher = createDeviceCodeDisclosureWatcher({
71
+ status: (jobId) => store.status(jobId),
72
+ update: (jobId, patch) => void update(jobId, patch),
73
+ disclosurePath: (jobId) => store.paths(jobId).runnerDeviceCode,
74
+ now,
75
+ });
114
76
  function log(jobId, line) {
115
77
  store.appendLog(jobId, line);
116
78
  }
@@ -137,7 +99,7 @@ export function createSetupJobManager(opts = {}) {
137
99
  });
138
100
  // The transient device-code disclosure is invalid once terminal — drop the
139
101
  // sidecar so its one-time code stops being projected (INV-062 / D-17).
140
- removeDeviceCodeSidecar(jobId);
102
+ removeSetupDeviceCodeSidecar(store.paths(jobId).runnerDeviceCode);
141
103
  logAfterMutation(jobId, message);
142
104
  return done;
143
105
  }
@@ -379,19 +341,6 @@ export function createSetupJobManager(opts = {}) {
379
341
  ? result
380
342
  : null;
381
343
  }
382
- function persistPermit(job, manifest) {
383
- const issuedAt = job.execution?.permitIssuedAt;
384
- if (!issuedAt)
385
- throw new Error("cannot issue a setup-login permit before its durable journal transition");
386
- atomicPrivateJson(manifest.permitPath, {
387
- version: SETUP_LOGIN_PROTOCOL_VERSION,
388
- jobId: job.jobId,
389
- executionId: manifest.executionId,
390
- issuedAt,
391
- commandDigest: manifest.commandDigest,
392
- manifestDigest: manifest.manifestDigest,
393
- });
394
- }
395
344
  async function observeAndPermit(jobId, state) {
396
345
  let job = store.status(jobId);
397
346
  const manifest = manifestFor(jobId);
@@ -438,11 +387,11 @@ export function createSetupJobManager(opts = {}) {
438
387
  message: `Durably authorized ${job.harness} native login execution.`,
439
388
  });
440
389
  }
441
- persistPermit(job, manifest);
390
+ persistSetupLoginPermit(job, manifest);
442
391
  if (job.phase === "launching") {
443
392
  update(jobId, {
444
393
  phase: "awaiting_user",
445
- message: awaitingUserMessage(job),
394
+ message: awaitingSetupUserMessage(job),
446
395
  });
447
396
  }
448
397
  // Armed for launching AND already-awaiting_user adoption (a successor
@@ -495,7 +444,7 @@ export function createSetupJobManager(opts = {}) {
495
444
  // governance), the remedy is keyed deterministically on the authorized flow
496
445
  // itself (the `--device-auth` Terminal flow or the app-server device-code
497
446
  // flow, whose argv carries `app-server`).
498
- const deviceAuthRemedy = job.authorization?.args.includes("--device-auth") || isDeviceCodeJob(job)
447
+ const deviceAuthRemedy = job.authorization?.args.includes("--device-auth") || isDeviceCodeSetupJob(job)
499
448
  ? " If the sign-in page rejected your one-time code, enable ChatGPT → Settings → Security → " +
500
449
  '"Allow device code login" and retry, or use `claudexor auth login codex --browser-redirect`.'
501
450
  : "";
@@ -576,56 +525,19 @@ export function createSetupJobManager(opts = {}) {
576
525
  remaining -= step;
577
526
  }
578
527
  }
579
- /** D-17 disclosure race: awaiting_user flips before the one-time code
580
- * sidecar exists, and a sidecar write is journal-less — SSE subscribers
581
- * attached at the flip would never learn the code arrived. Armed at EVERY
582
- * awaiting_user flip (create AND reconcile-adopt paths, one owner): watch
583
- * for the sidecar (bounded by the job deadline) and bump ONE message event;
584
- * the read-time projection then overlays the code as designed. */
585
- const armedDisclosureWatchers = new Set();
586
- function armDeviceCodeDisclosureWatcher(jobId) {
587
- const job = store.status(jobId);
588
- if (!isDeviceCodeJob(job))
589
- return;
590
- // Idempotent: create, permit-flip, and reconcile-adopt may each arm.
591
- if (armedDisclosureWatchers.has(jobId))
592
- return;
593
- armedDisclosureWatchers.add(jobId);
594
- const disclosurePath = store.paths(jobId).runnerDeviceCode;
595
- const deadline = job.deadlineAt ? Date.parse(job.deadlineAt) : now().getTime() + 60_000;
596
- const watch = () => {
597
- let current;
598
- try {
599
- current = store.status(jobId);
600
- }
601
- catch {
602
- return; // journal closed (shutdown/restart) — the successor re-arms
603
- }
604
- if (!ACTIVE_SETUP_STATES.has(current.state) || current.phase === "cancelling")
605
- return;
606
- if (existsSync(disclosurePath)) {
607
- if (current.phase === "awaiting_user") {
608
- update(jobId, {
609
- message: `One-time code ready — enter it at the ${current.harness} verification page (shown in Claudexor).`,
610
- });
611
- }
612
- return;
613
- }
614
- if (now().getTime() < deadline)
615
- setTimeout(watch, 300).unref();
616
- };
617
- setTimeout(watch, 300).unref();
618
- }
619
528
  function markAwaitingUser(jobId) {
620
529
  const current = store.status(jobId);
621
530
  if (current.phase === "launching") {
622
531
  update(jobId, {
623
532
  phase: "awaiting_user",
624
- message: awaitingUserMessage(current),
533
+ message: awaitingSetupUserMessage(current),
625
534
  });
626
535
  armDeviceCodeDisclosureWatcher(jobId);
627
536
  }
628
537
  }
538
+ function loginDeadlineReached(job) {
539
+ return Boolean(job.deadlineAt && now().getTime() >= Date.parse(job.deadlineAt));
540
+ }
629
541
  async function monitorLogin(jobId) {
630
542
  if (processing.has(jobId))
631
543
  return;
@@ -638,20 +550,25 @@ export function createSetupJobManager(opts = {}) {
638
550
  await consumeLoginResult(jobId, result);
639
551
  return;
640
552
  }
553
+ // Extend updates this journaled authority without rewriting the sealed
554
+ // client_pty manifest. Check it before any freshly observed runner can be
555
+ // permitted, not only after the monitor handles that runner.
556
+ if (loginDeadlineReached(job)) {
557
+ await terminateLogin(jobId, "timed_out");
558
+ return;
559
+ }
641
560
  const state = matchingState(jobId);
642
561
  if (state) {
643
562
  await observeAndPermit(jobId, state);
644
563
  }
645
564
  else if (!state &&
565
+ job.transport !== "client_pty" &&
646
566
  job.phase === "launching" &&
647
567
  job.startedAt &&
648
568
  now().getTime() - Date.parse(job.startedAt) >= launcherTimeoutMs) {
649
569
  finish(jobId, "failed", "launch_failed", `${job.harness} login worker did not provide an identity handshake within ${launcherTimeoutMs / 1000}s; vendor execution was never permitted.`);
650
570
  return;
651
571
  }
652
- const current = store.status(jobId);
653
- if (current.deadlineAt && now().getTime() >= Date.parse(current.deadlineAt))
654
- await terminateLogin(jobId, "timed_out");
655
572
  }
656
573
  async function tick() {
657
574
  await Promise.all(store.list({ active: true }).map((job) => monitorLogin(job.jobId)));
@@ -694,7 +611,7 @@ export function createSetupJobManager(opts = {}) {
694
611
  // Replay an honest reason: cancelling is entered for user cancels AND
695
612
  // deadline timeouts; the durable deadline decides which one this was
696
613
  // (wave-2 finding — no prose classification needed).
697
- const deadlinePassed = typeof job.deadlineAt === "string" && Date.parse(job.deadlineAt) <= now().getTime();
614
+ const deadlinePassed = loginDeadlineReached(job);
698
615
  await terminateLogin(job.jobId, deadlinePassed ? "timed_out" : "cancelled_by_user");
699
616
  continue;
700
617
  }
@@ -704,6 +621,12 @@ export function createSetupJobManager(opts = {}) {
704
621
  await consumeLoginResult(job.jobId, result);
705
622
  continue;
706
623
  }
624
+ // A durable result wins, but an expired unfinished runner cannot regain
625
+ // authorization during restart adoption.
626
+ if (loginDeadlineReached(job)) {
627
+ await terminateLogin(job.jobId, "timed_out");
628
+ continue;
629
+ }
707
630
  const state = matchingState(job.jobId);
708
631
  if (state) {
709
632
  // Adoption of a still-live login runner (logins SURVIVE ordinary
@@ -759,7 +682,7 @@ export function createSetupJobManager(opts = {}) {
759
682
  // The device-code flow is driven by the daemon-hosted app-server runner and
760
683
  // needs no Terminal, so it is not macOS-gated. The legacy Terminal handoff
761
684
  // stays macOS-only.
762
- if (!deviceCode && platform !== "darwin") {
685
+ if (!deviceCode && job.transport !== "client_pty" && platform !== "darwin") {
763
686
  return finish(job.jobId, "failed", "launch_failed", `Terminal-handoff login is macOS-only. Run it yourself, then recheck Harness Doctor: ${spec.displayCommand}`, {}, spec.displayCommand);
764
687
  }
765
688
  try {
@@ -767,6 +690,7 @@ export function createSetupJobManager(opts = {}) {
767
690
  const executionId = randomUUID();
768
691
  const executable = captureExecutableEvidence(spec.binary);
769
692
  const authorizedCommandDigest = commandDigest(executable, spec.args);
693
+ const { loginDeadlineAt, permitDeadlineAt, permitWaitMs } = setupLoginDeadlines(now(), loginTimeoutMs, launcherTimeoutMs, job.transport);
770
694
  const manifest = sealLoginManifest({
771
695
  version: SETUP_LOGIN_PROTOCOL_VERSION,
772
696
  jobId: job.jobId,
@@ -792,7 +716,8 @@ export function createSetupJobManager(opts = {}) {
792
716
  statePath: paths.runnerState,
793
717
  resultPath: paths.runnerResult,
794
718
  permitPath: paths.runnerPermit,
795
- permitDeadlineAt: new Date(now().getTime() + launcherTimeoutMs).toISOString(),
719
+ permitDeadlineAt,
720
+ ...(permitWaitMs === undefined ? {} : { permitWaitMs }),
796
721
  executable,
797
722
  commandDigest: authorizedCommandDigest,
798
723
  });
@@ -805,7 +730,7 @@ export function createSetupJobManager(opts = {}) {
805
730
  const waiting = update(job.jobId, {
806
731
  state: "waiting_for_input",
807
732
  phase: "launching",
808
- deadlineAt: new Date(now().getTime() + loginTimeoutMs).toISOString(),
733
+ deadlineAt: loginDeadlineAt,
809
734
  startedAt: iso(),
810
735
  command: spec.displayCommand,
811
736
  authorization: {
@@ -838,6 +763,24 @@ export function createSetupJobManager(opts = {}) {
838
763
  runner.unref();
839
764
  return waiting;
840
765
  }
766
+ if (job.transport === "client_pty") {
767
+ const authorization = {
768
+ executionId,
769
+ executable,
770
+ args: [...spec.args],
771
+ commandDigest: authorizedCommandDigest,
772
+ manifestDigest: manifest.manifestDigest,
773
+ };
774
+ const waiting = update(job.jobId, clientPtyWaitingPatch({
775
+ job,
776
+ deadlineAt: loginDeadlineAt,
777
+ startedAt: iso(),
778
+ command: spec.displayCommand,
779
+ authorization,
780
+ }));
781
+ log(job.jobId, `client_pty attach prepared: ${paths.manifest}`);
782
+ return waiting;
783
+ }
841
784
  // External-risk disclosure (v3.0.3, Bible): a browser-based OpenAI
842
785
  // sign-in completed in a browser holding ANOTHER account's session can
843
786
  // revoke sibling sessions (incl. the ChatGPT desktop app) server-side.
@@ -851,7 +794,7 @@ export function createSetupJobManager(opts = {}) {
851
794
  const waiting = update(job.jobId, {
852
795
  state: "waiting_for_input",
853
796
  phase: "launching",
854
- deadlineAt: new Date(now().getTime() + loginTimeoutMs).toISOString(),
797
+ deadlineAt: loginDeadlineAt,
855
798
  startedAt: iso(),
856
799
  command: spec.displayCommand,
857
800
  authorization: {
@@ -951,6 +894,10 @@ export function createSetupJobManager(opts = {}) {
951
894
  // --browser-redirect request must never be silently answered with the
952
895
  // active device-auth job.
953
896
  if ((active.profileId ?? null) === (profileBinding?.profileId ?? null)) {
897
+ const transportConflict = setupTransportConflict(active, request.transport);
898
+ if (transportConflict) {
899
+ throw Object.assign(new Error(transportConflict), { status: 409 });
900
+ }
954
901
  // The meaningful flow distinction for codex is the legacy Terminal
955
902
  // localhost-redirect ("login" with no app-server / --device-auth argv)
956
903
  // vs the app-server device-code / browser-callback flows. A mismatch
@@ -991,6 +938,7 @@ export function createSetupJobManager(opts = {}) {
991
938
  jobId,
992
939
  harness,
993
940
  action,
941
+ transport: request.transport,
994
942
  state: "queued",
995
943
  phase: "preparing",
996
944
  command: null,
@@ -1093,10 +1041,12 @@ export function createSetupJobManager(opts = {}) {
1093
1041
  !job.deadlineAt) {
1094
1042
  throw Object.assign(new Error("setup job cannot be extended"), { status: 409 });
1095
1043
  }
1096
- return update(jobId, {
1044
+ const extended = update(jobId, {
1097
1045
  deadlineAt: new Date(Date.parse(job.deadlineAt) + LOGIN_EXTENSION_MS).toISOString(),
1098
1046
  message: `${job.harness} login deadline extended by 15 minutes.`,
1099
1047
  }, idempotency);
1048
+ armDeviceCodeDisclosureWatcher(jobId);
1049
+ return extended;
1100
1050
  },
1101
1051
  _store: store,
1102
1052
  _supervisorHealth: () => supervisor.health(),
@@ -1 +1 @@
1
- {"version":3,"file":"setup-jobs.js","sourceRoot":"","sources":["../src/setup-jobs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-jobs.js","sourceRoot":"","sources":["../src/setup-jobs.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
1
  export interface SetupLifecycleHandle {
2
2
  start(): Promise<void>;
3
+ list(filter: {
4
+ active: true;
5
+ }): readonly unknown[];
3
6
  beginDrain(): void;
4
7
  shutdown(): Promise<void>;
5
8
  }
@@ -26,6 +29,10 @@ export declare class SetupLifecycleBinding<TStore, THandle extends SetupLifecycl
26
29
  current(): THandle;
27
30
  generation(): number;
28
31
  isBoundToCurrentGeneration(): boolean;
32
+ /** Synchronous setup admission fact for atomic runtime replacement. A missing
33
+ * or recovery-blocked generation throws so the caller fails closed as
34
+ * activity-unknown rather than treating absence as idle. */
35
+ hasActiveWork(): boolean;
29
36
  beginDrain(): void;
30
37
  shutdown(): Promise<void>;
31
38
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"setup-lifecycle-binding.d.ts","sourceRoot":"","sources":["../src/setup-lifecycle-binding.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,UAAU,IAAI,IAAI,CAAC;IACnB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB,CAAC,MAAM;IACzC,OAAO,IAAI,MAAM,CAAC;IAClB,UAAU,IAAI,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,qBAAa,qBAAqB,CAAC,MAAM,EAAE,OAAO,SAAS,oBAAoB;IAQ3E,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IARzB,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,QAAQ,CAAoC;IACpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAA8B;gBAGlC,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,EACjC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO;IAGrD,mEAAmE;IAC7D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB5B,OAAO,IAAI,OAAO;IAWlB,UAAU,IAAI,MAAM;IAIpB,0BAA0B,IAAI,OAAO;IAIrC,UAAU,IAAI,IAAI;IAMlB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAWzB;;;OAGG;IACH,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YAoD9C,SAAS;IAcvB,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,aAAa;CAOtB"}
1
+ {"version":3,"file":"setup-lifecycle-binding.d.ts","sourceRoot":"","sources":["../src/setup-lifecycle-binding.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,IAAI,CAAA;KAAE,GAAG,SAAS,OAAO,EAAE,CAAC;IACnD,UAAU,IAAI,IAAI,CAAC;IACnB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB,CAAC,MAAM;IACzC,OAAO,IAAI,MAAM,CAAC;IAClB,UAAU,IAAI,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,qBAAa,qBAAqB,CAAC,MAAM,EAAE,OAAO,SAAS,oBAAoB;IAQ3E,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IARzB,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,QAAQ,CAAoC;IACpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAA8B;IAErD,YACmB,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,EACjC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,EACjD;IAEJ,mEAAmE;IAC7D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAe3B;IAED,OAAO,IAAI,OAAO,CASjB;IAED,UAAU,IAAI,MAAM,CAEnB;IAED,0BAA0B,IAAI,OAAO,CAEpC;IAED;;gEAE4D;IAC5D,aAAa,IAAI,OAAO,CAEvB;IAED,UAAU,IAAI,IAAI,CAIjB;IAED,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CASxB;IAED;;;OAGG;IACH,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAkD3D;YAEa,SAAS;IAcvB,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,aAAa;CAOtB"}
@@ -52,6 +52,12 @@ export class SetupLifecycleBinding {
52
52
  isBoundToCurrentGeneration() {
53
53
  return this.active !== null && this.activeGeneration === this.slot.generation();
54
54
  }
55
+ /** Synchronous setup admission fact for atomic runtime replacement. A missing
56
+ * or recovery-blocked generation throws so the caller fails closed as
57
+ * activity-unknown rather than treating absence as idle. */
58
+ hasActiveWork() {
59
+ return this.current().list({ active: true }).length > 0;
60
+ }
55
61
  beginDrain() {
56
62
  if (this.draining)
57
63
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"setup-lifecycle-binding.js","sourceRoot":"","sources":["../src/setup-lifecycle-binding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-lifecycle-binding.js","sourceRoot":"","sources":["../src/setup-lifecycle-binding.ts"],"names":[],"mappings":"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"}