codex-multi-auth 0.1.5 → 0.1.8

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 (75) hide show
  1. package/LICENSE +21 -1
  2. package/README.md +19 -6
  3. package/assets/readme-hero.svg +31 -31
  4. package/dist/index.d.ts +1 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +2 -2
  7. package/dist/index.js.map +1 -1
  8. package/dist/lib/codex-cli/state.js +4 -4
  9. package/dist/lib/codex-cli/state.js.map +1 -1
  10. package/dist/lib/codex-cli/sync.d.ts +9 -16
  11. package/dist/lib/codex-cli/sync.d.ts.map +1 -1
  12. package/dist/lib/codex-cli/sync.js +51 -284
  13. package/dist/lib/codex-cli/sync.js.map +1 -1
  14. package/dist/lib/codex-cli/writer.d.ts.map +1 -1
  15. package/dist/lib/codex-cli/writer.js +62 -5
  16. package/dist/lib/codex-cli/writer.js.map +1 -1
  17. package/dist/lib/codex-manager/settings-hub.d.ts +44 -2
  18. package/dist/lib/codex-manager/settings-hub.d.ts.map +1 -1
  19. package/dist/lib/codex-manager/settings-hub.js +746 -117
  20. package/dist/lib/codex-manager/settings-hub.js.map +1 -1
  21. package/dist/lib/codex-manager.d.ts.map +1 -1
  22. package/dist/lib/codex-manager.js +3 -8
  23. package/dist/lib/codex-manager.js.map +1 -1
  24. package/dist/lib/context-overflow.js +10 -10
  25. package/dist/lib/named-backup-export.d.ts +69 -0
  26. package/dist/lib/named-backup-export.d.ts.map +1 -0
  27. package/dist/lib/named-backup-export.js +207 -0
  28. package/dist/lib/named-backup-export.js.map +1 -0
  29. package/dist/lib/oauth-success.html +66 -210
  30. package/dist/lib/oc-chatgpt-import-adapter.d.ts +64 -0
  31. package/dist/lib/oc-chatgpt-import-adapter.d.ts.map +1 -0
  32. package/dist/lib/oc-chatgpt-import-adapter.js +506 -0
  33. package/dist/lib/oc-chatgpt-import-adapter.js.map +1 -0
  34. package/dist/lib/oc-chatgpt-orchestrator.d.ts +80 -0
  35. package/dist/lib/oc-chatgpt-orchestrator.d.ts.map +1 -0
  36. package/dist/lib/oc-chatgpt-orchestrator.js +130 -0
  37. package/dist/lib/oc-chatgpt-orchestrator.js.map +1 -0
  38. package/dist/lib/oc-chatgpt-target-detection.d.ts +59 -0
  39. package/dist/lib/oc-chatgpt-target-detection.d.ts.map +1 -0
  40. package/dist/lib/oc-chatgpt-target-detection.js +327 -0
  41. package/dist/lib/oc-chatgpt-target-detection.js.map +1 -0
  42. package/dist/lib/prompts/codex.js +2 -2
  43. package/dist/lib/runtime-paths.d.ts.map +1 -1
  44. package/dist/lib/runtime-paths.js +44 -2
  45. package/dist/lib/runtime-paths.js.map +1 -1
  46. package/dist/lib/storage.d.ts +42 -3
  47. package/dist/lib/storage.d.ts.map +1 -1
  48. package/dist/lib/storage.js +634 -49
  49. package/dist/lib/storage.js.map +1 -1
  50. package/dist/lib/ui/auth-menu.d.ts.map +1 -1
  51. package/dist/lib/ui/auth-menu.js +13 -1
  52. package/dist/lib/ui/auth-menu.js.map +1 -1
  53. package/dist/lib/ui/copy.d.ts +15 -1
  54. package/dist/lib/ui/copy.d.ts.map +1 -1
  55. package/dist/lib/ui/copy.js +15 -1
  56. package/dist/lib/ui/copy.js.map +1 -1
  57. package/node_modules/@codex-ai/plugin/dist/index.d.ts +1 -1
  58. package/node_modules/@codex-ai/plugin/dist/tool.d.ts +41 -41
  59. package/node_modules/@codex-ai/plugin/dist/tool.js +28 -28
  60. package/package.json +132 -133
  61. package/scripts/bench-format/hashline-v2.mjs +642 -642
  62. package/scripts/bench-format/render.mjs +496 -496
  63. package/scripts/bench-format/stats.mjs +54 -54
  64. package/scripts/bench-format/tasks.mjs +151 -151
  65. package/scripts/benchmark-render-dashboard.mjs +49 -49
  66. package/scripts/codex-multi-auth.js +12 -0
  67. package/scripts/codex.js +315 -2
  68. package/scripts/install-codex-auth.js +9 -9
  69. package/scripts/test-all-models.sh +7 -7
  70. package/scripts/test-model-matrix.js +247 -148
  71. package/scripts/validate-model-map.sh +7 -7
  72. package/vendor/codex-ai-plugin/dist/index.d.ts +1 -1
  73. package/vendor/codex-ai-plugin/dist/tool.d.ts +41 -41
  74. package/vendor/codex-ai-plugin/dist/tool.js +28 -28
  75. package/vendor/codex-ai-sdk/dist/index.d.ts +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../lib/codex-cli/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../lib/codex-cli/state.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,16 @@
1
- import { type AccountStorageV3 } from "../storage.js";
2
1
  import { type ModelFamily } from "../prompts/codex.js";
2
+ import { type AccountStorageV3 } from "../storage.js";
3
3
  /**
4
- * Reconciles the provided local account storage with the Codex CLI state and returns the resulting storage and whether it changed.
5
- *
6
- * This operation:
7
- * - Merges accounts from the Codex CLI state into a clone of `current` (or into a new empty storage when `current` is null).
8
- * - May update the active account selection and per-family active indexes when the Codex CLI selection is considered applicable.
9
- * - Preserves secrets and sensitive fields; any tokens written to storage are subject to the project's token-redaction rules and are not exposed in logs or metrics.
10
- *
11
- * Concurrency assumptions:
12
- * - Caller is responsible for serializing concurrent writes to persistent storage; this function only returns an in-memory storage object and does not perform atomic file-level coordination.
4
+ * Preserves one-way mirror semantics for Codex CLI compatibility state.
13
5
  *
14
- * Windows filesystem notes:
15
- * - When the caller persists the returned storage to disk on Windows, standard Windows file-locking and path-length semantics apply; this function does not perform Windows-specific path normalization.
6
+ * Multi-auth storage is the canonical source of truth. Codex CLI account files are mirrors only
7
+ * and must never seed, merge into, or restore the canonical account pool. This helper is kept for
8
+ * older call sites that still use the historical reconcile entry point, but it now only normalizes
9
+ * the existing local indexes and never reads or applies Codex CLI account data.
16
10
  *
17
- * @param current - The current local AccountStorageV3, or `null` to indicate none exists.
18
- * @returns An object containing:
19
- * - `storage`: the reconciled AccountStorageV3 to persist (may be the original `current` when no changes were applied).
20
- * - `changed`: `true` if the reconciled storage differs from `current`, `false` otherwise.
11
+ * @param current - The current canonical AccountStorageV3, or null when no canonical storage exists.
12
+ * @returns The original storage when no local normalization is needed, a normalized clone when index
13
+ * values need clamping, or null when canonical storage is missing.
21
14
  */
22
15
  export declare function syncAccountStorageFromCodexCli(current: AccountStorageV3 | null): Promise<{
23
16
  storage: AccountStorageV3 | null;
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../lib/codex-cli/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,KAAK,gBAAgB,EACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAuPvE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,8BAA8B,CACnD,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAC9B,OAAO,CAAC;IAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAwFjE;AAED,wBAAgB,2BAA2B,CAC1C,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,WAAW,GACjB,MAAM,CAMR"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../lib/codex-cli/sync.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAmDtD;;;;;;;;;;;GAWG;AACH,wBAAgB,8BAA8B,CAC7C,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAC9B,OAAO,CAAC;IAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAgCjE;AAED,wBAAgB,2BAA2B,CAC1C,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,WAAW,GACjB,MAAM,CAUR"}
@@ -1,24 +1,7 @@
1
- import { getLastAccountsSaveTimestamp, } from "../storage.js";
2
- import { MODEL_FAMILIES } from "../prompts/codex.js";
3
1
  import { createLogger } from "../logger.js";
4
- import { loadCodexCliState } from "./state.js";
5
- import { incrementCodexCliMetric, makeAccountFingerprint, } from "./observability.js";
6
- import { getLastCodexCliSelectionWriteTimestamp } from "./writer.js";
2
+ import { MODEL_FAMILIES } from "../prompts/codex.js";
3
+ import { incrementCodexCliMetric } from "./observability.js";
7
4
  const log = createLogger("codex-cli-sync");
8
- function normalizeEmail(value) {
9
- if (!value)
10
- return undefined;
11
- const trimmed = value.trim().toLowerCase();
12
- return trimmed.length > 0 ? trimmed : undefined;
13
- }
14
- function createEmptyStorage() {
15
- return {
16
- version: 3,
17
- accounts: [],
18
- activeIndex: 0,
19
- activeIndexByFamily: {},
20
- };
21
- }
22
5
  function cloneStorage(storage) {
23
6
  return {
24
7
  version: 3,
@@ -29,297 +12,81 @@ function cloneStorage(storage) {
29
12
  : {},
30
13
  };
31
14
  }
32
- function buildIndexByAccountId(accounts) {
33
- const map = new Map();
34
- for (let i = 0; i < accounts.length; i += 1) {
35
- const account = accounts[i];
36
- if (!account?.accountId)
37
- continue;
38
- map.set(account.accountId, i);
39
- }
40
- return map;
41
- }
42
- function buildIndexByRefresh(accounts) {
43
- const map = new Map();
44
- for (let i = 0; i < accounts.length; i += 1) {
45
- const account = accounts[i];
46
- if (!account?.refreshToken)
47
- continue;
48
- map.set(account.refreshToken, i);
49
- }
50
- return map;
51
- }
52
- function buildIndexByEmail(accounts) {
53
- const map = new Map();
54
- for (let i = 0; i < accounts.length; i += 1) {
55
- const email = normalizeEmail(accounts[i]?.email);
56
- if (!email)
57
- continue;
58
- map.set(email, i);
15
+ function normalizeIndexCandidate(value, fallback) {
16
+ if (!Number.isFinite(value)) {
17
+ return Number.isFinite(fallback) ? Math.trunc(fallback) : 0;
59
18
  }
60
- return map;
19
+ return Math.trunc(value);
61
20
  }
62
- function toStorageAccount(snapshot) {
63
- if (!snapshot.refreshToken)
64
- return null;
65
- const now = Date.now();
66
- return {
67
- accountId: snapshot.accountId,
68
- accountIdSource: snapshot.accountId ? "token" : undefined,
69
- email: snapshot.email,
70
- refreshToken: snapshot.refreshToken,
71
- accessToken: snapshot.accessToken,
72
- expiresAt: snapshot.expiresAt,
73
- enabled: true,
74
- addedAt: now,
75
- lastUsed: 0,
76
- };
77
- }
78
- function upsertFromSnapshot(accounts, snapshot) {
79
- const nextAccount = toStorageAccount(snapshot);
80
- if (!nextAccount)
81
- return false;
82
- const byAccountId = buildIndexByAccountId(accounts);
83
- const byRefresh = buildIndexByRefresh(accounts);
84
- const byEmail = buildIndexByEmail(accounts);
85
- const normalizedEmail = normalizeEmail(snapshot.email);
86
- let targetIndex;
87
- if (snapshot.accountId && byAccountId.has(snapshot.accountId)) {
88
- targetIndex = byAccountId.get(snapshot.accountId);
89
- }
90
- else if (snapshot.refreshToken && byRefresh.has(snapshot.refreshToken)) {
91
- targetIndex = byRefresh.get(snapshot.refreshToken);
92
- }
93
- else if (normalizedEmail && byEmail.has(normalizedEmail)) {
94
- targetIndex = byEmail.get(normalizedEmail);
95
- }
96
- if (targetIndex === undefined) {
97
- accounts.push(nextAccount);
98
- return true;
99
- }
100
- const current = accounts[targetIndex];
101
- if (!current)
102
- return false;
103
- const merged = {
104
- ...current,
105
- accountId: snapshot.accountId ?? current.accountId,
106
- accountIdSource: snapshot.accountId
107
- ? current.accountIdSource ?? "token"
108
- : current.accountIdSource,
109
- email: snapshot.email ?? current.email,
110
- refreshToken: snapshot.refreshToken ?? current.refreshToken,
111
- accessToken: snapshot.accessToken ?? current.accessToken,
112
- expiresAt: snapshot.expiresAt ?? current.expiresAt,
113
- };
114
- const changed = JSON.stringify(current) !== JSON.stringify(merged);
115
- if (changed) {
116
- accounts[targetIndex] = merged;
117
- }
118
- return changed;
119
- }
120
- function resolveActiveIndex(accounts, activeAccountId, activeEmail) {
121
- if (accounts.length === 0)
122
- return 0;
123
- if (activeAccountId) {
124
- const byId = accounts.findIndex((account) => account.accountId === activeAccountId);
125
- if (byId >= 0)
126
- return byId;
127
- }
128
- const normalizedEmail = normalizeEmail(activeEmail);
129
- if (normalizedEmail) {
130
- const byEmail = accounts.findIndex((account) => normalizeEmail(account.email) === normalizedEmail);
131
- if (byEmail >= 0)
132
- return byEmail;
133
- }
134
- return 0;
135
- }
136
- function writeFamilyIndexes(storage, index) {
137
- storage.activeIndex = index;
138
- storage.activeIndexByFamily = storage.activeIndexByFamily ?? {};
139
- for (const family of MODEL_FAMILIES) {
140
- storage.activeIndexByFamily[family] = index;
141
- }
142
- }
143
- /**
144
- * Normalize and clamp the global and per-family active account indexes to valid ranges.
145
- *
146
- * Mutates `storage` in-place: ensures `activeIndexByFamily` exists, clamps `activeIndex` to
147
- * 0..(accounts.length - 1) (or 0 when there are no accounts), and resolves each family entry
148
- * to a valid index within the same bounds.
149
- *
150
- * Concurrency: callers must synchronize externally when multiple threads/processes may write
151
- * the same storage object. Filesystem notes: no platform-specific IO is performed here; when
152
- * persisted to disk on Windows consumers should still ensure atomic writes. Token handling:
153
- * this function does not read or modify authentication tokens and makes no attempt to redact
154
- * sensitive fields.
155
- *
156
- * @param storage - The account storage object whose indexes will be normalized and clamped
157
- */
158
21
  function normalizeStoredFamilyIndexes(storage) {
159
22
  const count = storage.accounts.length;
160
- const clamped = count === 0 ? 0 : Math.max(0, Math.min(storage.activeIndex, count - 1));
23
+ const normalizedActiveIndex = normalizeIndexCandidate(storage.activeIndex, 0);
24
+ const clamped = count === 0 ? 0 : Math.max(0, Math.min(normalizedActiveIndex, count - 1));
161
25
  if (storage.activeIndex !== clamped) {
162
26
  storage.activeIndex = clamped;
163
27
  }
164
28
  storage.activeIndexByFamily = storage.activeIndexByFamily ?? {};
165
29
  for (const family of MODEL_FAMILIES) {
30
+ const hasFamilyIndex = Object.prototype.hasOwnProperty.call(storage.activeIndexByFamily, family);
166
31
  const raw = storage.activeIndexByFamily[family];
167
- const resolved = typeof raw === "number" && Number.isFinite(raw) ? raw : storage.activeIndex;
168
- storage.activeIndexByFamily[family] =
169
- count === 0 ? 0 : Math.max(0, Math.min(resolved, count - 1));
32
+ const resolved = typeof raw === "number"
33
+ ? normalizeIndexCandidate(raw, storage.activeIndex)
34
+ : storage.activeIndex;
35
+ const familyIndex = count === 0 ? 0 : Math.max(0, Math.min(resolved, count - 1));
36
+ if (!hasFamilyIndex && familyIndex === storage.activeIndex) {
37
+ continue;
38
+ }
39
+ storage.activeIndexByFamily[family] = familyIndex;
170
40
  }
171
41
  }
172
42
  /**
173
- * Return the `accountId` and `email` from the first snapshot marked active.
174
- *
175
- * @param snapshots - Array of Codex CLI account snapshots to search
176
- * @returns The `accountId` and `email` from the first snapshot whose `isActive` is true; properties are omitted if no active snapshot is found
177
- *
178
- * Concurrency: pure and side-effect free; safe to call concurrently.
179
- * Filesystem: behavior is independent of OS/filesystem semantics (including Windows).
180
- * Security: only `accountId` and `email` are returned; other sensitive snapshot fields (for example tokens) are not exposed or returned by this function.
181
- */
182
- function readActiveFromSnapshots(snapshots) {
183
- const active = snapshots.find((snapshot) => snapshot.isActive);
184
- return {
185
- accountId: active?.accountId,
186
- email: active?.email,
187
- };
188
- }
189
- /**
190
- * Determines whether the Codex CLI's active-account selection should override the local selection.
43
+ * Preserves one-way mirror semantics for Codex CLI compatibility state.
191
44
  *
192
- * Considers the state's numeric `syncVersion` or `sourceUpdatedAtMs` and compares the derived Codex timestamp
193
- * against local timestamps from recent account saves and last Codex selection writes. Concurrent writes or
194
- * clock skew can affect this decision; filesystem timestamp granularity on Windows may reduce timestamp precision.
195
- * This function only examines timestamps and identifiers in `state` and does not read or expose token values.
45
+ * Multi-auth storage is the canonical source of truth. Codex CLI account files are mirrors only
46
+ * and must never seed, merge into, or restore the canonical account pool. This helper is kept for
47
+ * older call sites that still use the historical reconcile entry point, but it now only normalizes
48
+ * the existing local indexes and never reads or applies Codex CLI account data.
196
49
  *
197
- * @param state - Persisted Codex CLI state (may be undefined); the function reads `syncVersion` and `sourceUpdatedAtMs` when present
198
- * @returns `true` if the Codex CLI selection should be applied (i.e., Codex state is newer or timestamps are unknown), `false` otherwise
50
+ * @param current - The current canonical AccountStorageV3, or null when no canonical storage exists.
51
+ * @returns The original storage when no local normalization is needed, a normalized clone when index
52
+ * values need clamping, or null when canonical storage is missing.
199
53
  */
200
- function shouldApplyCodexCliSelection(state) {
201
- if (!state)
202
- return false;
203
- const hasSyncVersion = typeof state.syncVersion === "number" && Number.isFinite(state.syncVersion);
204
- const codexVersion = hasSyncVersion
205
- ? state.syncVersion
206
- : typeof state.sourceUpdatedAtMs === "number" && Number.isFinite(state.sourceUpdatedAtMs)
207
- ? state.sourceUpdatedAtMs
208
- : 0;
209
- const localVersion = Math.max(getLastAccountsSaveTimestamp(), getLastCodexCliSelectionWriteTimestamp());
210
- if (codexVersion <= 0 || localVersion <= 0)
211
- return true;
212
- // Keep local selection when plugin wrote more recently than Codex state.
213
- const toleranceMs = hasSyncVersion ? 0 : 1_000;
214
- return codexVersion >= localVersion - toleranceMs;
215
- }
216
- /**
217
- * Reconciles the provided local account storage with the Codex CLI state and returns the resulting storage and whether it changed.
218
- *
219
- * This operation:
220
- * - Merges accounts from the Codex CLI state into a clone of `current` (or into a new empty storage when `current` is null).
221
- * - May update the active account selection and per-family active indexes when the Codex CLI selection is considered applicable.
222
- * - Preserves secrets and sensitive fields; any tokens written to storage are subject to the project's token-redaction rules and are not exposed in logs or metrics.
223
- *
224
- * Concurrency assumptions:
225
- * - Caller is responsible for serializing concurrent writes to persistent storage; this function only returns an in-memory storage object and does not perform atomic file-level coordination.
226
- *
227
- * Windows filesystem notes:
228
- * - When the caller persists the returned storage to disk on Windows, standard Windows file-locking and path-length semantics apply; this function does not perform Windows-specific path normalization.
229
- *
230
- * @param current - The current local AccountStorageV3, or `null` to indicate none exists.
231
- * @returns An object containing:
232
- * - `storage`: the reconciled AccountStorageV3 to persist (may be the original `current` when no changes were applied).
233
- * - `changed`: `true` if the reconciled storage differs from `current`, `false` otherwise.
234
- */
235
- export async function syncAccountStorageFromCodexCli(current) {
54
+ export function syncAccountStorageFromCodexCli(current) {
236
55
  incrementCodexCliMetric("reconcileAttempts");
237
- try {
238
- const state = await loadCodexCliState();
239
- if (!state) {
240
- incrementCodexCliMetric("reconcileNoops");
241
- return { storage: current, changed: false };
242
- }
243
- const next = current ? cloneStorage(current) : createEmptyStorage();
244
- let changed = false;
245
- for (const snapshot of state.accounts) {
246
- const updated = upsertFromSnapshot(next.accounts, snapshot);
247
- if (updated)
248
- changed = true;
249
- }
250
- if (next.accounts.length === 0) {
251
- incrementCodexCliMetric(changed ? "reconcileChanges" : "reconcileNoops");
252
- log.debug("Codex CLI reconcile completed", {
253
- operation: "reconcile-storage",
254
- outcome: changed ? "changed" : "noop",
255
- accountCount: next.accounts.length,
256
- });
257
- return {
258
- storage: current ?? next,
259
- changed,
260
- };
261
- }
262
- const activeFromSnapshots = readActiveFromSnapshots(state.accounts);
263
- const applyActiveFromCodex = shouldApplyCodexCliSelection(state);
264
- if (applyActiveFromCodex) {
265
- const desiredIndex = resolveActiveIndex(next.accounts, state.activeAccountId ?? activeFromSnapshots.accountId, state.activeEmail ?? activeFromSnapshots.email);
266
- const previousActive = next.activeIndex;
267
- const previousFamilies = JSON.stringify(next.activeIndexByFamily ?? {});
268
- writeFamilyIndexes(next, desiredIndex);
269
- normalizeStoredFamilyIndexes(next);
270
- if (previousActive !== next.activeIndex) {
271
- changed = true;
272
- }
273
- if (previousFamilies !== JSON.stringify(next.activeIndexByFamily ?? {})) {
274
- changed = true;
275
- }
276
- }
277
- else {
278
- const previousActive = next.activeIndex;
279
- const previousFamilies = JSON.stringify(next.activeIndexByFamily ?? {});
280
- normalizeStoredFamilyIndexes(next);
281
- if (previousActive !== next.activeIndex) {
282
- changed = true;
283
- }
284
- if (previousFamilies !== JSON.stringify(next.activeIndexByFamily ?? {})) {
285
- changed = true;
286
- }
287
- log.debug("Skipped Codex CLI active selection overwrite due to newer local state", {
288
- operation: "reconcile-storage",
289
- outcome: "local-newer",
290
- });
291
- }
292
- incrementCodexCliMetric(changed ? "reconcileChanges" : "reconcileNoops");
293
- log.debug("Codex CLI reconcile completed", {
294
- operation: "reconcile-storage",
295
- outcome: changed ? "changed" : "noop",
296
- accountCount: next.accounts.length,
297
- activeAccountRef: makeAccountFingerprint({
298
- accountId: state.activeAccountId ?? activeFromSnapshots.accountId,
299
- email: state.activeEmail ?? activeFromSnapshots.email,
300
- }),
301
- });
302
- return {
303
- storage: next,
304
- changed,
305
- };
306
- }
307
- catch (error) {
308
- incrementCodexCliMetric("reconcileFailures");
309
- log.warn("Codex CLI reconcile failed", {
56
+ if (!current) {
57
+ incrementCodexCliMetric("reconcileNoops");
58
+ log.debug("Skipped Codex CLI reconcile because canonical storage is missing", {
310
59
  operation: "reconcile-storage",
311
- outcome: "error",
312
- error: String(error),
60
+ outcome: "canonical-missing",
313
61
  });
314
- return { storage: current, changed: false };
62
+ return Promise.resolve({ storage: null, changed: false });
315
63
  }
64
+ const next = cloneStorage(current);
65
+ const previousActive = next.activeIndex;
66
+ const previousFamilies = JSON.stringify(next.activeIndexByFamily ?? {});
67
+ normalizeStoredFamilyIndexes(next);
68
+ const changed = previousActive !== next.activeIndex ||
69
+ previousFamilies !== JSON.stringify(next.activeIndexByFamily ?? {});
70
+ incrementCodexCliMetric(changed ? "reconcileChanges" : "reconcileNoops");
71
+ log.debug("Skipped Codex CLI authority import; canonical storage remains authoritative", {
72
+ operation: "reconcile-storage",
73
+ outcome: changed ? "normalized-local-indexes" : "canonical-authoritative",
74
+ accountCount: next.accounts.length,
75
+ });
76
+ return Promise.resolve({
77
+ storage: changed ? next : current,
78
+ changed,
79
+ });
316
80
  }
317
81
  export function getActiveSelectionForFamily(storage, family) {
318
82
  const count = storage.accounts.length;
319
83
  if (count === 0)
320
84
  return 0;
321
85
  const raw = storage.activeIndexByFamily?.[family];
322
- const candidate = typeof raw === "number" && Number.isFinite(raw) ? raw : storage.activeIndex;
86
+ const normalizedActiveIndex = normalizeIndexCandidate(storage.activeIndex, 0);
87
+ const candidate = typeof raw === "number"
88
+ ? normalizeIndexCandidate(raw, normalizedActiveIndex)
89
+ : normalizedActiveIndex;
323
90
  return Math.max(0, Math.min(candidate, count - 1));
324
91
  }
325
92
  //# sourceMappingURL=sync.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../lib/codex-cli/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../lib/codex-cli/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAoB,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,GAAG,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;AAE3C,SAAS,YAAY,CAAC,OAAyB;IAC9C,OAAO;QACN,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;QAC7D,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;YAC/C,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,mBAAmB,EAAE;YACpC,CAAC,CAAC,EAAE;KACL,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAa,EAAE,QAAgB;IAC/D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,4BAA4B,CAAC,OAAyB;IAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IACtC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC9E,MAAM,OAAO,GACZ,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;QACrC,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC;IAC/B,CAAC;IACD,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,IAAI,EAAE,CAAC;IAChE,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QACrC,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAC1D,OAAO,CAAC,mBAAmB,EAC3B,MAAM,CACN,CAAC;QACF,MAAM,GAAG,GAAG,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,QAAQ,GACb,OAAO,GAAG,KAAK,QAAQ;YACtB,CAAC,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;YACnD,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;QACxB,MAAM,WAAW,GAChB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,IAAI,WAAW,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;YAC5D,SAAS;QACV,CAAC;QACD,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC;IACnD,CAAC;AACF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,8BAA8B,CAC7C,OAAgC;IAEhC,uBAAuB,CAAC,mBAAmB,CAAC,CAAC;IAE7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;QAC1C,GAAG,CAAC,KAAK,CAAC,kEAAkE,EAAE;YAC7E,SAAS,EAAE,mBAAmB;YAC9B,OAAO,EAAE,mBAAmB;SAC5B,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC;IACxC,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;IACxE,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAEnC,MAAM,OAAO,GACZ,cAAc,KAAK,IAAI,CAAC,WAAW;QACnC,gBAAgB,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;IAErE,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IACzE,GAAG,CAAC,KAAK,CAAC,6EAA6E,EAAE;QACxF,SAAS,EAAE,mBAAmB;QAC9B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,yBAAyB;QACzE,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;KAClC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,OAAO,CAAC;QACtB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;QACjC,OAAO;KACP,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAC1C,OAAyB,EACzB,MAAmB;IAEnB,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IACtC,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,qBAAqB,GAAG,uBAAuB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC9E,MAAM,SAAS,GACd,OAAO,GAAG,KAAK,QAAQ;QACtB,CAAC,CAAC,uBAAuB,CAAC,GAAG,EAAE,qBAAqB,CAAC;QACrD,CAAC,CAAC,qBAAqB,CAAC;IAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../lib/codex-cli/writer.ts"],"names":[],"mappings":"AAmBA,UAAU,eAAe;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAwTD,wBAAsB,0BAA0B,CAC/C,SAAS,EAAE,eAAe,GACxB,OAAO,CAAC,OAAO,CAAC,CAiMlB;AAED,wBAAgB,sCAAsC,IAAI,MAAM,CAE/D"}
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../lib/codex-cli/writer.ts"],"names":[],"mappings":"AAmBA,UAAU,eAAe;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AA2XD,wBAAsB,0BAA0B,CAC/C,SAAS,EAAE,eAAe,GACxB,OAAO,CAAC,OAAO,CAAC,CAqMlB;AAED,wBAAgB,sCAAsC,IAAI,MAAM,CAE/D"}
@@ -77,6 +77,59 @@ function extractSelectionFromAccountRecord(record) {
77
77
  idToken,
78
78
  };
79
79
  }
80
+ function enrichActiveAccountRecordWithTokens(record, selection) {
81
+ const auth = isRecord(record.auth) ? { ...record.auth } : {};
82
+ const tokens = isRecord(auth.tokens) ? { ...auth.tokens } : {};
83
+ const currentAccess = extractTokenFromRecord(record, ["accessToken", "access_token"]) ??
84
+ extractTokenFromRecord(tokens, ["access_token", "accessToken"]);
85
+ const currentRefresh = extractTokenFromRecord(record, ["refreshToken", "refresh_token"]) ??
86
+ extractTokenFromRecord(tokens, ["refresh_token", "refreshToken"]);
87
+ const currentIdToken = extractTokenFromRecord(record, ["idToken", "id_token"]) ??
88
+ extractTokenFromRecord(tokens, ["id_token", "idToken"]);
89
+ const selectedAccess = readTrimmedString(selection.accessToken);
90
+ const selectedRefresh = readTrimmedString(selection.refreshToken);
91
+ const selectedIdToken = readTrimmedString(selection.idToken);
92
+ const accountId = selection.accountId?.trim() || readAccountId(record);
93
+ const email = normalizeEmail(selection.email) ?? normalizeEmail(record.email);
94
+ const accessToken = selectedAccess ?? currentAccess;
95
+ const refreshToken = selectedRefresh ?? currentRefresh;
96
+ if (!accessToken || !refreshToken) {
97
+ return record;
98
+ }
99
+ const idToken = selectedIdToken ?? currentIdToken ?? accessToken;
100
+ const next = { ...record };
101
+ next.accessToken = accessToken;
102
+ next.access_token = accessToken;
103
+ next.refreshToken = refreshToken;
104
+ next.refresh_token = refreshToken;
105
+ if (idToken) {
106
+ next.idToken = idToken;
107
+ next.id_token = idToken;
108
+ }
109
+ if (accountId) {
110
+ next.accountId = accountId;
111
+ next.account_id = accountId;
112
+ }
113
+ if (email) {
114
+ next.email = email;
115
+ }
116
+ const nextTokens = { ...tokens };
117
+ nextTokens.access_token = accessToken;
118
+ nextTokens.accessToken = accessToken;
119
+ nextTokens.refresh_token = refreshToken;
120
+ nextTokens.refreshToken = refreshToken;
121
+ if (idToken) {
122
+ nextTokens.id_token = idToken;
123
+ nextTokens.idToken = idToken;
124
+ }
125
+ if (accountId) {
126
+ nextTokens.account_id = accountId;
127
+ nextTokens.accountId = accountId;
128
+ }
129
+ auth.tokens = nextTokens;
130
+ next.auth = auth;
131
+ return next;
132
+ }
80
133
  function resolveMatchIndex(accounts, selection) {
81
134
  const desiredId = selection.accountId?.trim();
82
135
  const desiredEmail = normalizeEmail(selection.email);
@@ -301,6 +354,7 @@ export async function setCodexCliActiveSelection(selection) {
301
354
  selection.accessToken.trim().length > 0 &&
302
355
  typeof selection.refreshToken === "string" &&
303
356
  selection.refreshToken.trim().length > 0;
357
+ const requireAuthWrite = hasAuthPath || selectionHasTokens;
304
358
  if (!hasAccountsPath && !hasAuthPath && !selectionHasTokens) {
305
359
  incrementCodexCliMetric("writeFailures");
306
360
  return false;
@@ -380,7 +434,10 @@ export async function setCodexCliActiveSelection(selection) {
380
434
  next.accounts = parsed.accounts.map((entry, index) => {
381
435
  if (!isRecord(entry))
382
436
  return entry;
383
- const updated = { ...entry };
437
+ let updated = { ...entry };
438
+ if (index === matchIndex) {
439
+ updated = enrichActiveAccountRecordWithTokens(updated, resolvedSelection);
440
+ }
384
441
  updated.active = index === matchIndex;
385
442
  updated.isActive = index === matchIndex;
386
443
  updated.is_active = index === matchIndex;
@@ -406,10 +463,6 @@ export async function setCodexCliActiveSelection(selection) {
406
463
  if (hasAuthPath || wroteAccounts || selectionHasTokens) {
407
464
  wroteAuth = await writeCodexAuthState(authPath, resolvedSelection);
408
465
  if (!wroteAuth) {
409
- if (!wroteAccounts) {
410
- incrementCodexCliMetric("writeFailures");
411
- return false;
412
- }
413
466
  log.warn("Codex auth state update skipped after accounts selection update", {
414
467
  operation: "write-active-selection",
415
468
  outcome: "accounts-updated-auth-failed",
@@ -419,6 +472,10 @@ export async function setCodexCliActiveSelection(selection) {
419
472
  email: resolvedSelection.email,
420
473
  }),
421
474
  });
475
+ if (requireAuthWrite || !wroteAccounts) {
476
+ incrementCodexCliMetric("writeFailures");
477
+ return false;
478
+ }
422
479
  }
423
480
  else {
424
481
  log.debug("Persisted Codex auth active selection", {