@tokensrc/codex 1.14.29 → 1.14.30

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 (41) hide show
  1. package/dist/client.d.ts +44 -0
  2. package/dist/client.js +29 -0
  3. package/dist/client.js.map +1 -1
  4. package/dist/command-directory.js +2 -1
  5. package/dist/command-directory.js.map +1 -1
  6. package/dist/commands.d.ts +2 -0
  7. package/dist/commands.js +101 -6
  8. package/dist/commands.js.map +1 -1
  9. package/dist/index.js +1 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/managed-credential-v3-envelope.d.ts +1 -0
  12. package/dist/managed-credential-v3-envelope.js +1 -1
  13. package/dist/managed-credential-v3-envelope.js.map +1 -1
  14. package/dist/managed-credential-v3.d.ts +17 -0
  15. package/dist/managed-credential-v3.js +56 -0
  16. package/dist/managed-credential-v3.js.map +1 -1
  17. package/dist/private-file.js +14 -1
  18. package/dist/private-file.js.map +1 -1
  19. package/dist/profile.d.ts +1 -0
  20. package/dist/profile.js +2 -1
  21. package/dist/profile.js.map +1 -1
  22. package/dist/protocol.d.ts +66 -0
  23. package/dist/protocol.js +30 -1
  24. package/dist/protocol.js.map +1 -1
  25. package/dist/release-processes.d.ts +18 -0
  26. package/dist/release-processes.js +94 -0
  27. package/dist/release-processes.js.map +1 -0
  28. package/dist/request-bound-device-v6-flow.d.ts +9 -0
  29. package/dist/request-bound-device-v6-flow.js +33 -10
  30. package/dist/request-bound-device-v6-flow.js.map +1 -1
  31. package/dist/request-bound-device-v6-refresh.d.ts +12 -0
  32. package/dist/request-bound-device-v6-refresh.js +97 -0
  33. package/dist/request-bound-device-v6-refresh.js.map +1 -0
  34. package/dist/request-bound-device-v6-release.d.ts +77 -0
  35. package/dist/request-bound-device-v6-release.js +321 -0
  36. package/dist/request-bound-device-v6-release.js.map +1 -0
  37. package/dist/request-bound-device-v6-state.d.ts +3 -2
  38. package/dist/request-bound-device-v6-state.js +1 -1
  39. package/dist/request-bound-device-v6-state.js.map +1 -1
  40. package/dist/types.d.ts +1 -0
  41. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"request-bound-device-v6-flow.js","sourceRoot":"","sources":["../src/request-bound-device-v6-flow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request-bound-device-v6-flow.js","sourceRoot":"","sources":["../src/request-bound-device-v6-flow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { CodexV6DeviceBinding } from "./protocol.js";
2
+ /** Refresh only on the consuming device, after encrypted delivery installation ACK. */
3
+ export declare function refreshReclaimedCodexV6Credentials(input: {
4
+ env?: NodeJS.ProcessEnv;
5
+ tenantId: string;
6
+ binding: CodexV6DeviceBinding;
7
+ now?: () => number;
8
+ fetchImpl?: typeof fetch;
9
+ }): Promise<{
10
+ refreshed: boolean;
11
+ credentialExpiresAt?: string;
12
+ }>;
@@ -0,0 +1,97 @@
1
+ import { CLIENT_ID, TOKEN_URL } from "codex-multi-auth/auth";
2
+ import { CodexServiceError } from "./errors.js";
3
+ import { refreshExpiredManagedCodexV3Credentials } from "./managed-credential-v3.js";
4
+ import { readCodexV6BindingState } from "./request-bound-device-v6-state.js";
5
+ const MAX_RESPONSE_BYTES = 256 * 1024;
6
+ /** Refresh only on the consuming device, after encrypted delivery installation ACK. */
7
+ export async function refreshReclaimedCodexV6Credentials(input) {
8
+ if (!input.binding.reclaimable)
9
+ return { refreshed: false };
10
+ const env = input.env ?? process.env;
11
+ const local = await readCodexV6BindingState(env);
12
+ if (!local || local.tenantId !== input.tenantId || local.subject !== input.binding.userSubject
13
+ || local.bindingId !== input.binding.id || local.installationId !== input.binding.installationId
14
+ || local.credentialLineageId !== input.binding.credentialLineageId
15
+ || local.providerAccountId !== input.binding.providerAccountId || !input.binding.providerAccountId) {
16
+ throw new CodexServiceError("当前设备尚未确认安装此账号,无法刷新。", "codex_device_refresh_conflict", 409);
17
+ }
18
+ const now = (input.now ?? Date.now)();
19
+ return refreshExpiredManagedCodexV3Credentials({
20
+ env, tenantId: input.tenantId, assignmentId: local.localAssignmentId,
21
+ lineageId: local.credentialLineageId, providerAccountId: input.binding.providerAccountId, now,
22
+ refresh: async (current) => {
23
+ let response;
24
+ try {
25
+ // The installed OAuth dependency defines the same endpoint and client ID used by login.
26
+ // Handle response data here to keep upstream bodies and network error details out of logs.
27
+ response = await (input.fetchImpl ?? fetch)(TOKEN_URL, {
28
+ method: "POST", redirect: "error", signal: AbortSignal.timeout(20_000),
29
+ headers: { "Content-Type": "application/x-www-form-urlencoded" },
30
+ body: new URLSearchParams({ grant_type: "refresh_token", refresh_token: current.refreshToken,
31
+ client_id: CLIENT_ID })
32
+ });
33
+ }
34
+ catch {
35
+ throw unavailable();
36
+ }
37
+ let body;
38
+ try {
39
+ const reader = response.body?.getReader();
40
+ if (!reader)
41
+ throw new Error("empty");
42
+ const chunks = [];
43
+ let length = 0;
44
+ try {
45
+ for (;;) {
46
+ const chunk = await reader.read();
47
+ if (chunk.done)
48
+ break;
49
+ length += chunk.value.byteLength;
50
+ if (length > MAX_RESPONSE_BYTES) {
51
+ await reader.cancel();
52
+ throw new Error("oversized");
53
+ }
54
+ chunks.push(chunk.value);
55
+ }
56
+ body = JSON.parse(Buffer.concat(chunks).toString("utf8"));
57
+ }
58
+ finally {
59
+ for (const chunk of chunks)
60
+ chunk.fill(0);
61
+ reader.releaseLock();
62
+ }
63
+ }
64
+ catch {
65
+ throw response.ok ? invalidResponse() : unavailable();
66
+ }
67
+ const value = body && typeof body === "object" && !Array.isArray(body)
68
+ ? body : {};
69
+ if (!response.ok) {
70
+ const error = value.error;
71
+ const code = typeof error === "string" ? error
72
+ : error && typeof error === "object" ? error.code : undefined;
73
+ if (["invalid_grant", "refresh_token_reused", "refresh_token_revoked", "refresh_token_expired"].includes(String(code))) {
74
+ throw new CodexServiceError("领回凭据的 Refresh Token 已被拒绝,请申请换发;本地凭据已保留。", "codex_device_refresh_rejected", 409);
75
+ }
76
+ throw unavailable();
77
+ }
78
+ const accessToken = validSecret(value.access_token);
79
+ const refreshToken = value.refresh_token === undefined ? current.refreshToken : validSecret(value.refresh_token);
80
+ const idToken = value.id_token === undefined ? current.idToken : validSecret(value.id_token);
81
+ if (!accessToken || !refreshToken || !idToken)
82
+ throw invalidResponse();
83
+ return { accessToken, refreshToken, idToken };
84
+ }
85
+ });
86
+ }
87
+ function validSecret(value) {
88
+ return typeof value === "string" && value.length > 0 && value.length <= 65_536
89
+ && value.trim() === value ? value : undefined;
90
+ }
91
+ function unavailable() {
92
+ return new CodexServiceError("暂时无法刷新领回的账号凭据,请重试;本地凭据已保留。", "codex_device_refresh_unavailable", 503);
93
+ }
94
+ function invalidResponse() {
95
+ return new CodexServiceError("刷新响应未包含有效的完整凭据,请重试。", "codex_device_refresh_invalid_response", 502);
96
+ }
97
+ //# sourceMappingURL=request-bound-device-v6-refresh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-bound-device-v6-refresh.js","sourceRoot":"","sources":["../src/request-bound-device-v6-refresh.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ import { type CodexReleaseInspection } from "./release-processes.js";
2
+ export { inspectCodexReleaseProcesses } from "./release-processes.js";
3
+ export type { CodexReleaseProcess, CodexReleaseInspection } from "./release-processes.js";
4
+ import { z } from "zod";
5
+ import type { CodexServiceClient } from "./client.js";
6
+ declare const JournalSchema: z.ZodObject<{
7
+ schemaVersion: z.ZodLiteral<1>;
8
+ tenantId: z.ZodString;
9
+ subject: z.ZodString;
10
+ bindingId: z.ZodString;
11
+ installationId: z.ZodString;
12
+ credentialLineageId: z.ZodString;
13
+ generationVersion: z.ZodNumber;
14
+ operationId: z.ZodString;
15
+ releaseId: z.ZodNullable<z.ZodString>;
16
+ phase: z.ZodEnum<{
17
+ CLEANED: "CLEANED";
18
+ PREPARED: "PREPARED";
19
+ PREPARE_PENDING: "PREPARE_PENDING";
20
+ RELEASED: "RELEASED";
21
+ REPORT_PENDING: "REPORT_PENDING";
22
+ }>;
23
+ artifacts: z.ZodRecord<z.ZodString, z.ZodString>;
24
+ createdAt: z.ZodString;
25
+ updatedAt: z.ZodString;
26
+ }, z.core.$strict>;
27
+ export type CodexV6ReleaseJournal = z.infer<typeof JournalSchema>;
28
+ export type CodexReleasePrompt = {
29
+ stage: "PROCESSES";
30
+ inspection: CodexReleaseInspection;
31
+ } | {
32
+ stage: "CLEANUP";
33
+ bindingId: string;
34
+ providerAccountId: string;
35
+ paths: string[];
36
+ accountLabel?: string;
37
+ targetLabel?: string;
38
+ deviceLabel?: string;
39
+ };
40
+ export interface CodexReleaseInteraction {
41
+ inspect?: () => Promise<CodexReleaseInspection>;
42
+ prompt?: (input: CodexReleasePrompt) => Promise<boolean>;
43
+ output?: NodeJS.WritableStream;
44
+ }
45
+ export declare function readCodexV6ReleaseJournal(env?: NodeJS.ProcessEnv): Promise<{
46
+ schemaVersion: 1;
47
+ tenantId: string;
48
+ subject: string;
49
+ bindingId: string;
50
+ installationId: string;
51
+ credentialLineageId: string;
52
+ generationVersion: number;
53
+ operationId: string;
54
+ releaseId: string | null;
55
+ phase: "CLEANED" | "PREPARED" | "PREPARE_PENDING" | "RELEASED" | "REPORT_PENDING";
56
+ artifacts: Record<string, string>;
57
+ createdAt: string;
58
+ updatedAt: string;
59
+ } | undefined>;
60
+ export declare function assertNoPendingCodexV6Release(env?: NodeJS.ProcessEnv, operationId?: string): Promise<void>;
61
+ export declare function promptCodexRelease(input: CodexReleasePrompt): Promise<boolean>;
62
+ export declare function releaseCodexV6DeviceCredentials(input: {
63
+ client: CodexServiceClient;
64
+ tenantId: string;
65
+ env?: NodeJS.ProcessEnv;
66
+ capabilityEnabled?: boolean;
67
+ interaction?: CodexReleaseInteraction;
68
+ target?: {
69
+ bindingId: string;
70
+ managedAccountId: string;
71
+ providerAccountId: string;
72
+ };
73
+ }): Promise<CodexV6ReleaseJournal>;
74
+ export declare function clearCompletedCodexV6Release(env?: NodeJS.ProcessEnv): Promise<void>;
75
+ /** Register before spawning under the same lock used by release. The marker covers
76
+ * process startup, including the gap before a new child appears in the OS table. */
77
+ export declare function withCodexV6ManagedLaunch<T>(env: NodeJS.ProcessEnv, launch: () => Promise<T>): Promise<T>;
@@ -0,0 +1,321 @@
1
+ import { getOrCreateCodexInstallationId } from "./multi-device-v5-state.js";
2
+ import { inspectCodexReleaseProcesses } from "./release-processes.js";
3
+ export { inspectCodexReleaseProcesses } from "./release-processes.js";
4
+ import { createHash, randomUUID } from "node:crypto";
5
+ import { lstat, readFile } from "node:fs/promises";
6
+ import { homedir } from "node:os";
7
+ import { join } from "node:path";
8
+ import { confirm, isCancel, select } from "@clack/prompts";
9
+ import { z } from "zod";
10
+ import { CodexServiceError } from "./errors.js";
11
+ import { codexV3CredentialDigests, readManagedCodexV3State } from "./managed-credential-v3.js";
12
+ import { readJsonIfExists, removePrivateFileDurably, withPrivateFileLock, writePrivateJson } from "./private-file.js";
13
+ import { readCodexV6BindingState, writeCodexV6BindingState } from "./request-bound-device-v6-state.js";
14
+ import { reportCodexV6DeviceCredentials } from "./request-bound-device-v6-flow.js";
15
+ const JournalSchema = z.strictObject({
16
+ schemaVersion: z.literal(1), tenantId: z.string(), subject: z.string(),
17
+ bindingId: z.string(), installationId: z.string(), credentialLineageId: z.string(),
18
+ generationVersion: z.number().int().positive(), operationId: z.string().min(8),
19
+ releaseId: z.string().nullable(),
20
+ phase: z.enum(["REPORT_PENDING", "PREPARE_PENDING", "PREPARED", "CLEANED", "RELEASED"]),
21
+ artifacts: z.record(z.string(), z.string().regex(/^[0-9a-f]{64}$/u)),
22
+ createdAt: z.string(), updatedAt: z.string()
23
+ });
24
+ const artifactNames = ["auth.json", "auth.json.numa-backup", ".numa-managed-lineage.json",
25
+ ".numa-request-device-delivery-v6.json", ".numa-request-device-report-v6.json",
26
+ ".numa-managed-credential-v3-operation.json", ".numa-managed-credential-v3-report.json",
27
+ ".numa-device-session-v5.json", ".numa-device-acquire-v5.json", ".numa-device-report-v5.json",
28
+ ".numa-token-pool-v4-upload.json"];
29
+ const home = (env) => env.CODEX_HOME?.trim() || join(homedir(), ".codex");
30
+ const journalPath = (env) => join(home(env), ".numa-request-device-release-v6.json");
31
+ const hash = (bytes) => createHash("sha256").update(bytes).digest("hex");
32
+ function blocked(message, code = "codex_device_release_incomplete") {
33
+ return new CodexServiceError(message, code, 409);
34
+ }
35
+ export async function readCodexV6ReleaseJournal(env = process.env) {
36
+ const raw = await readJsonIfExists(journalPath(env));
37
+ return raw === undefined ? undefined : JournalSchema.parse(raw);
38
+ }
39
+ export async function assertNoPendingCodexV6Release(env = process.env, operationId) {
40
+ const journal = await readCodexV6ReleaseJournal(env);
41
+ if (journal && journal.phase !== "RELEASED" && journal.operationId !== operationId) {
42
+ throw blocked("旧凭据释放尚未完成;请在独立终端运行 numa codex release 恢复清理和登记,再领取新账号。");
43
+ }
44
+ }
45
+ export async function promptCodexRelease(input) {
46
+ if (!process.stdin.isTTY || !process.stderr.isTTY)
47
+ throw blocked("释放需要交互确认。请保存工作并退出相关 Codex 会话,在独立交互终端运行 numa codex release。", "codex_device_release_interaction_required");
48
+ if (input.stage === "PROCESSES") {
49
+ const result = await select({ message: "保存工作并自行退出相关会话后重新检查。", options: [
50
+ { value: true, label: "重新检查" }, { value: false, label: "取消切换" }
51
+ ] });
52
+ return !isCancel(result) && result;
53
+ }
54
+ const result = await confirm({ message: `清理账号 ${input.accountLabel ?? input.providerAccountId} 的受管凭据${input.targetLabel ? `,然后切换到 ${input.targetLabel}` : ""}并继续?`
55
+ + "清理后需重新领取;安装失败不会自动恢复旧凭据。检查不包括自行复制的文件和系统快照。",
56
+ initialValue: false });
57
+ return !isCancel(result) && result;
58
+ }
59
+ async function checkProcesses(interaction, allowRetry, env) {
60
+ const inspect = interaction.inspect ?? inspectCodexReleaseProcesses;
61
+ while (true) {
62
+ const inspection = await inspect();
63
+ const running = await readManagedLaunches(env);
64
+ for (const marker of running)
65
+ if (pidAlive(marker.pid)
66
+ && !inspection.processes.some((item) => item.pid === marker.pid)) {
67
+ inspection.processes.push({ pid: marker.pid, name: "Numa Codex 启动/同步会话", ancestor: false });
68
+ }
69
+ if (!inspection.error && inspection.processes.length === 0)
70
+ return;
71
+ const output = interaction.output ?? process.stderr;
72
+ if (inspection.error)
73
+ output.write(`${inspection.error}\n`);
74
+ for (const item of inspection.processes)
75
+ output.write(`需要退出:${item.name} (PID ${item.pid})\n`);
76
+ if (inspection.processes.some((item) => item.ancestor)) {
77
+ throw blocked("当前命令由仍在使用凭据的 Codex 会话启动。请保存工作并退出该会话,在独立终端继续。", "codex_device_release_parent_session");
78
+ }
79
+ if (!allowRetry)
80
+ throw blocked("复查发现相关进程或无法完成检查,清理/登记已停止;请退出后运行 numa codex release 恢复。");
81
+ if (!(await (interaction.prompt ?? promptCodexRelease)({ stage: "PROCESSES", inspection }))) {
82
+ throw blocked("已取消;尚未完成的释放操作会保留,可用 numa codex release 继续。", "codex_device_release_cancelled");
83
+ }
84
+ }
85
+ }
86
+ async function bytesAt(path) {
87
+ const stat = await lstat(path).catch((error) => {
88
+ if (error.code === "ENOENT")
89
+ return undefined;
90
+ throw error;
91
+ });
92
+ if (!stat)
93
+ return undefined;
94
+ if (!stat.isFile() || stat.isSymbolicLink() || stat.nlink !== 1 || stat.size > 2 * 1024 * 1024) {
95
+ throw blocked(`无法安全检查凭据文件 ${path}(要求普通文件且无硬链接)。`);
96
+ }
97
+ return readFile(path);
98
+ }
99
+ async function inventory(env, binding, requireSynced = true) {
100
+ const config = await bytesAt(join(home(env), "config.toml"));
101
+ if (config && /^\s*cli_auth_credentials_store\s*=\s*["'](?:keyring|auto)["']/mu.test(config.toString())) {
102
+ throw blocked("当前配置可能将凭据存入系统钥匙串;此版本只能验证 file 存储,请先处理钥匙串凭据。");
103
+ }
104
+ const state = await readManagedCodexV3State(env);
105
+ if (!state || state.phase !== "INSTALLED" || state.assignmentId !== binding.localAssignmentId
106
+ || state.lineageId !== binding.credentialLineageId || state.generationVersion !== binding.generationVersion) {
107
+ throw blocked("当前凭据与设备绑定不一致,无法确认清理范围。");
108
+ }
109
+ const artifacts = {};
110
+ for (const name of artifactNames) {
111
+ const bytes = await bytesAt(join(home(env), name));
112
+ if (!bytes) {
113
+ if (name === "auth.json")
114
+ throw blocked("本地凭据已缺失,无法确认最新完整凭据已交还。");
115
+ continue;
116
+ }
117
+ const value = JSON.parse(bytes.toString());
118
+ if (name === "auth.json" || name === "auth.json.numa-backup") {
119
+ if (value.tokens?.account_id !== binding.providerAccountId)
120
+ throw blocked(`${name} 属于其他登录;为避免删除个人凭据,已停止清理。`);
121
+ if (name === "auth.json" && requireSynced) {
122
+ const digests = codexV3CredentialDigests({ accessToken: value.tokens.access_token,
123
+ refreshToken: value.tokens.refresh_token, idToken: value.tokens.id_token });
124
+ if (digests.accessTokenDigest !== state.accessTokenDigest
125
+ || digests.refreshTokenDigest !== state.refreshTokenDigest
126
+ || digests.idTokenDigest !== state.idTokenDigest)
127
+ throw blocked("最终同步后凭据又发生变化,请重新同步后清理。");
128
+ }
129
+ }
130
+ else if (name === ".numa-managed-lineage.json") {
131
+ if (value.tenantId !== binding.tenantId || value.assignmentId !== binding.localAssignmentId
132
+ || value.lineageId !== binding.credentialLineageId || value.generationVersion !== binding.generationVersion) {
133
+ throw blocked("受管凭据状态在检查期间发生变化,未继续清理。");
134
+ }
135
+ }
136
+ else {
137
+ const v6 = name.includes("-v6.json");
138
+ const account = value.providerAccountId ?? value.expectedProviderAccountId;
139
+ const lineage = value.lineageId ?? value.expectedLineageId;
140
+ const owner = value.subject ?? value.uploaderSubject;
141
+ if (value.tenantId !== binding.tenantId || owner !== binding.subject
142
+ || value.installationId !== undefined && value.installationId !== binding.installationId
143
+ || (v6 ? value.bindingId !== binding.bindingId
144
+ : lineage !== undefined ? lineage !== binding.credentialLineageId
145
+ : account !== binding.providerAccountId)) {
146
+ throw blocked(`${name} 属于另一绑定或身份不明;请先恢复其未完成操作,再重试释放。`);
147
+ }
148
+ }
149
+ artifacts[name] = hash(bytes);
150
+ }
151
+ return artifacts;
152
+ }
153
+ export async function releaseCodexV6DeviceCredentials(input) {
154
+ if (input.capabilityEnabled !== true)
155
+ throw blocked("当前服务端尚未声明支持设备 Token Set 释放。请升级服务端并刷新平台配置后重试;旧凭据未清理。", "codex_device_release_not_supported");
156
+ const env = input.env ?? process.env;
157
+ const interaction = input.interaction ?? {};
158
+ return withPrivateFileLock(journalPath(env), async () => {
159
+ let journal = await readCodexV6ReleaseJournal(env);
160
+ let binding = await readCodexV6BindingState(env);
161
+ const subject = await input.client.getCurrentActorSubject();
162
+ const installationId = await getOrCreateCodexInstallationId(env);
163
+ if (!binding || binding.installationId !== installationId || binding.tenantId !== input.tenantId || binding.subject !== subject
164
+ || journal && (journal.subject !== subject || journal.tenantId !== input.tenantId
165
+ || journal.bindingId !== binding.bindingId || journal.installationId !== binding.installationId)) {
166
+ throw blocked("释放记录与当前用户、设备或绑定不一致,已停止操作。");
167
+ }
168
+ if (journal?.phase === "RELEASED" && binding.status === "READY")
169
+ return journal;
170
+ if (journal?.phase === "RELEASED") {
171
+ await removePrivateFileDurably(journalPath(env));
172
+ journal = undefined;
173
+ }
174
+ let accountLabel;
175
+ let targetLabel;
176
+ let deviceLabel;
177
+ if (!journal) {
178
+ const [directory, serverBindings] = await Promise.all([
179
+ input.client.listAccounts(), input.client.listV6DeviceBindings(binding.requestId)
180
+ ]);
181
+ const clean = (value) => value.replace(/[\x00-\x1f\x7f]/gu, " ");
182
+ accountLabel = clean(directory.accounts.find((account) => account.id === binding.managedAccountId
183
+ || account.accountId === binding.providerAccountId)?.label ?? binding.providerAccountId);
184
+ targetLabel = input.target ? clean(directory.accounts.find((account) => account.id === input.target.managedAccountId
185
+ || account.accountId === input.target.providerAccountId)?.label ?? input.target.providerAccountId) : undefined;
186
+ deviceLabel = clean(serverBindings.items.find((item) => item.id === binding.bindingId)?.deviceLabel ?? installationId);
187
+ (interaction.output ?? process.stderr).write(input.target
188
+ ? `第 1 步,共 3 步:退出并清理当前账号\n1 退出并清理 → 2 登记设备释放 → 3 安装目标账号\n当前账号:${accountLabel}\n目标账号:${targetLabel}\n当前设备:${deviceLabel} (${installationId})\n`
189
+ : `释放本设备账号凭据\n当前账号:${accountLabel}\n当前设备:${deviceLabel} (${installationId})\n退出并清理后登记释放,保留原设备领取资格。\n`);
190
+ }
191
+ await checkProcesses(interaction, true, env);
192
+ const save = async (changes) => {
193
+ journal = JournalSchema.parse({ ...journal, ...changes, updatedAt: new Date().toISOString() });
194
+ await writePrivateJson(journalPath(env), journal);
195
+ };
196
+ if (!journal) {
197
+ const artifacts = await inventory(env, binding, false);
198
+ (interaction.output ?? process.stderr).write(`将清理以下受管位置:\n${Object.keys(artifacts).map((name) => join(home(env), name)).join("\n")}\n`);
199
+ if (!(await (interaction.prompt ?? promptCodexRelease)({ stage: "CLEANUP", bindingId: binding.bindingId,
200
+ providerAccountId: binding.providerAccountId, accountLabel, targetLabel, deviceLabel, paths: Object.keys(artifacts).map((name) => join(home(env), name)) }))) {
201
+ throw blocked("已取消,旧凭据未清理。", "codex_device_release_cancelled");
202
+ }
203
+ await save({ schemaVersion: 1, tenantId: input.tenantId, subject, bindingId: binding.bindingId,
204
+ installationId: binding.installationId, credentialLineageId: binding.credentialLineageId,
205
+ generationVersion: binding.generationVersion, operationId: randomUUID(), releaseId: null,
206
+ phase: "REPORT_PENDING", artifacts: {}, createdAt: new Date().toISOString() });
207
+ }
208
+ if (journal.phase === "REPORT_PENDING") {
209
+ await checkProcesses(interaction, false, env);
210
+ const serverBindings = await input.client.listV6DeviceBindings(binding.requestId);
211
+ const serverBinding = serverBindings.items.find((item) => item.id === binding.bindingId
212
+ && item.userSubject === subject && item.installationId === installationId
213
+ && item.credentialLineageId === binding.credentialLineageId);
214
+ if (!serverBinding)
215
+ throw blocked("服务端找不到当前用户和设备的原绑定,未清理凭据。");
216
+ const report = await reportCodexV6DeviceCredentials({ client: input.client,
217
+ tenantId: input.tenantId, env, forceFullReport: true, releaseOperationId: journal.operationId,
218
+ knownHealth: serverBinding });
219
+ if (!report.reported || report.warningCode)
220
+ throw blocked(`最新完整凭据尚未被服务端确认 (${report.warningCode ?? "no_observation"});未清理旧凭据。`);
221
+ binding = (await readCodexV6BindingState(env));
222
+ const artifacts = await inventory(env, binding);
223
+ await save({ generationVersion: binding.generationVersion, artifacts, phase: "PREPARE_PENDING" });
224
+ }
225
+ const body = { schemaVersion: 6, installationId: journal.installationId,
226
+ credentialLineageId: journal.credentialLineageId, generationVersion: journal.generationVersion,
227
+ clientRequestId: journal.operationId };
228
+ if (journal.phase === "PREPARE_PENDING") {
229
+ const prepared = await input.client.prepareV6DeviceRelease(journal.bindingId, body, journal.operationId);
230
+ if (prepared.release.status !== "PREPARED")
231
+ throw blocked("服务端释放状态与本地清理记录不一致。");
232
+ await save({ releaseId: prepared.release.id, phase: "PREPARED" });
233
+ }
234
+ if (journal.phase === "PREPARED") {
235
+ await checkProcesses(interaction, false, env);
236
+ await withPrivateFileLock(join(home(env), "auth.json"), async () => {
237
+ // Check every artifact before deleting any. On replay, absence is valid, new bytes are not.
238
+ for (const name of artifactNames) {
239
+ const bytes = await bytesAt(join(home(env), name));
240
+ if (bytes && hash(bytes) !== journal.artifacts[name])
241
+ throw blocked(`${name} 在同步后发生变化;未继续清理,请保留现场并处理冲突。`);
242
+ }
243
+ for (const name of artifactNames) {
244
+ const path = join(home(env), name);
245
+ const bytes = await bytesAt(path);
246
+ if (bytes) {
247
+ if (hash(bytes) !== journal.artifacts[name])
248
+ throw blocked(`${name} 被并发修改,清理未完成。`);
249
+ await removePrivateFileDurably(path);
250
+ }
251
+ }
252
+ for (const name of artifactNames)
253
+ if (await bytesAt(join(home(env), name))) {
254
+ throw blocked("清理后检测到凭据重新写入,已停止登记释放。");
255
+ }
256
+ await save({ phase: "CLEANED" });
257
+ });
258
+ }
259
+ if (journal.phase === "CLEANED") {
260
+ await checkProcesses(interaction, false, env);
261
+ for (const name of artifactNames)
262
+ if (await bytesAt(join(home(env), name))) {
263
+ throw blocked("本地凭据已重新出现,不能登记释放;请处理冲突后重试。");
264
+ }
265
+ (interaction.output ?? process.stderr).write("本设备受管凭据已清理,正在登记释放结果……\n");
266
+ const result = await input.client.acknowledgeV6DeviceRelease(journal.bindingId, journal.releaseId, { ...body, localCleanupCompleted: true }, journal.operationId);
267
+ if (result.release.status !== "RELEASED")
268
+ throw blocked("释放登记待确认,请运行 numa codex release 重试。");
269
+ await writeCodexV6BindingState({ ...binding, status: "READY", updatedAt: new Date().toISOString() }, env);
270
+ await save({ phase: "RELEASED" });
271
+ }
272
+ return journal;
273
+ }, { timeoutMs: 2_000, staleAfterMs: 24 * 60 * 60 * 1000 });
274
+ }
275
+ export async function clearCompletedCodexV6Release(env = process.env) {
276
+ await withPrivateFileLock(journalPath(env), async () => {
277
+ const journal = await readCodexV6ReleaseJournal(env);
278
+ if (journal?.phase === "RELEASED")
279
+ await removePrivateFileDurably(journalPath(env));
280
+ });
281
+ }
282
+ const LaunchesSchema = z.array(z.strictObject({ pid: z.number().int().positive(), operationId: z.string() }));
283
+ const launchesPath = (env) => join(home(env), ".numa-request-device-running-v6.json");
284
+ async function readManagedLaunches(env) {
285
+ const raw = await readJsonIfExists(launchesPath(env));
286
+ return raw === undefined ? [] : LaunchesSchema.parse(raw);
287
+ }
288
+ function pidAlive(pid) {
289
+ try {
290
+ process.kill(pid, 0);
291
+ return true;
292
+ }
293
+ catch (error) {
294
+ return error.code !== "ESRCH";
295
+ }
296
+ }
297
+ /** Register before spawning under the same lock used by release. The marker covers
298
+ * process startup, including the gap before a new child appears in the OS table. */
299
+ export async function withCodexV6ManagedLaunch(env, launch) {
300
+ const operationId = randomUUID();
301
+ await withPrivateFileLock(journalPath(env), async () => {
302
+ await assertNoPendingCodexV6Release(env);
303
+ await withPrivateFileLock(launchesPath(env), async () => {
304
+ const markers = (await readManagedLaunches(env)).filter((item) => pidAlive(item.pid));
305
+ await writePrivateJson(launchesPath(env), [...markers, { pid: process.pid, operationId }]);
306
+ });
307
+ });
308
+ try {
309
+ return await launch();
310
+ }
311
+ finally {
312
+ await withPrivateFileLock(launchesPath(env), async () => {
313
+ const markers = (await readManagedLaunches(env)).filter((item) => item.operationId !== operationId && pidAlive(item.pid));
314
+ if (markers.length)
315
+ await writePrivateJson(launchesPath(env), markers);
316
+ else
317
+ await removePrivateFileDurably(launchesPath(env));
318
+ });
319
+ }
320
+ }
321
+ //# sourceMappingURL=request-bound-device-v6-release.js.map