@openclaw/codex 2026.10.7 → 2026.10.9

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 (113) hide show
  1. package/README.md +2 -0
  2. package/dist/.setup/{account-usage-runtime-gzHf_Qtb.mjs → account-usage-runtime-DAt_3QG0.mjs} +3 -3
  3. package/dist/.setup/{app-server-policy-V8zuN8q_.mjs → app-server-policy-CF-JwGUD.mjs} +1 -1
  4. package/dist/.setup/{apply-BaBl0hiG.mjs → apply-DmhHTC5c.mjs} +8 -8
  5. package/dist/.setup/{attempt-client-cleanup-jWVRH043.mjs → attempt-client-cleanup-DQBa7iiq.mjs} +5 -5
  6. package/dist/.setup/{attempt-workspace-context-BkA0W8Jy.mjs → attempt-workspace-context-EAeScFrg.mjs} +1 -1
  7. package/dist/.setup/{auth-binding-BFTkrP_b.mjs → auth-binding-D1TJwzWf.mjs} +1 -1
  8. package/dist/.setup/{auth-cache-key-DrieYJUQ.mjs → auth-cache-key-KogLtj0t.mjs} +3 -3
  9. package/dist/.setup/{binding-connection-C0t9TBX_.mjs → binding-connection-BIo1-hoT.mjs} +2 -2
  10. package/dist/.setup/{binding-connection.runtime-Wdm5G_bw.mjs → binding-connection.runtime-C5yDsKBQ.mjs} +1 -1
  11. package/dist/.setup/{bounded-turn-s9yVsxaM.mjs → bounded-turn-B91suzbV.mjs} +11 -11
  12. package/dist/.setup/{bounded-turn-isolation-CIQJykuM.mjs → bounded-turn-isolation-BRNgfoRl.mjs} +2 -2
  13. package/dist/.setup/{build-state-B5mKL-in.mjs → build-state-CvGKuaeP.mjs} +1 -1
  14. package/dist/.setup/{client-BM97zH3z.mjs → client-CafYfF2n.mjs} +311 -24
  15. package/dist/.setup/{command-dispatch-DsaWfzET.mjs → command-dispatch-C2tNChTq.mjs} +1 -1
  16. package/dist/.setup/{command-handlers-zgDE_J40.mjs → command-handlers-yb5vwwrx.mjs} +22 -22
  17. package/dist/.setup/{command-rpc-CAG1xrqm.mjs → command-rpc-CZmpQF4z.mjs} +11 -11
  18. package/dist/.setup/{compact-BZK-e5zD.mjs → compact-CeD2d2_k.mjs} +13 -13
  19. package/dist/.setup/{computer-use-CZhx4nNO.mjs → computer-use-C4HhkAcj.mjs} +7 -7
  20. package/dist/.setup/{config-LQemoqTL.mjs → config-d0gOFYEk.mjs} +2 -2
  21. package/dist/.setup/{config-runtime-DGB1-VbB.mjs → config-runtime-BUH-IDVE.mjs} +1 -1
  22. package/dist/.setup/{conversation-binding-qGuQR4jw.mjs → conversation-binding-HX8U8A3K.mjs} +15 -15
  23. package/dist/.setup/{conversation-binding-data-GRGSgAro.mjs → conversation-binding-data-BqzGWkPW.mjs} +1 -1
  24. package/dist/.setup/{conversation-control-BtPxevoK.mjs → conversation-control-D5qVEey9.mjs} +3 -3
  25. package/dist/.setup/{doctor-start-options-C28ek2hD.mjs → doctor-start-options-DyLrwtq-.mjs} +3 -3
  26. package/dist/.setup/{dynamic-tool-build-Dp4v52Kl.mjs → dynamic-tool-build-BPkHfpul.mjs} +3 -3
  27. package/dist/.setup/{dynamic-tools-C1Egdhrx.mjs → dynamic-tools-CCezdz5n.mjs} +8 -8
  28. package/dist/.setup/{effective-mcp-catalog-BNwgItdW.mjs → effective-mcp-catalog-SjTJ-F2i.mjs} +6 -6
  29. package/dist/.setup/{ephemeral-turn-DeppK8zz.mjs → ephemeral-turn-CgKjGBaW.mjs} +2 -2
  30. package/dist/.setup/{inference-proxy-DSnaS-uS.mjs → inference-proxy-BZgN5W8m.mjs} +3 -3
  31. package/dist/.setup/{isolated-completion-BUS9Mqfm.mjs → isolated-completion-C5ifbI0F.mjs} +5 -5
  32. package/dist/.setup/{managed-binary-DwC9wxch.mjs → managed-binary-Boj8_lWV.mjs} +1 -1
  33. package/dist/.setup/{mcp-app-session-preparation-D9F1O5si.mjs → mcp-app-session-preparation-hnw_eGnR.mjs} +8 -8
  34. package/dist/.setup/{model-catalog-BBg4thof.mjs → model-catalog-BO573-NN.mjs} +7 -7
  35. package/dist/.setup/{models-B65GHU4g.mjs → models-Dw0qUZl3.mjs} +3 -3
  36. package/dist/.setup/native-assignment-repair-BjS4uyQr.mjs +162 -0
  37. package/dist/.setup/{native-auth-CveRfTpz.mjs → native-auth-TAGxZP-r.mjs} +3 -3
  38. package/dist/.setup/{native-hook-relay-Ctyky2Qt.mjs → native-hook-relay-CwkDznGH.mjs} +4 -4
  39. package/dist/.setup/{native-mcp-app-DprMGBqj.mjs → native-mcp-app-B7N--ols.mjs} +5 -5
  40. package/dist/.setup/{native-skill-isolation-C4XYLm33.mjs → native-skill-isolation-0pEyxLRX.mjs} +3 -3
  41. package/dist/.setup/{native-subagent-monitor-CJaIve3h.mjs → native-subagent-monitor-D_tvjJxa.mjs} +161 -53
  42. package/dist/.setup/{native-subagent-pending-assignments-DmVhedNs.mjs → native-subagent-pending-assignments-BAOzwy85.mjs} +49 -11
  43. package/dist/.setup/{native-task-assignments-DYL9uxNe.mjs → native-task-assignments-Dap5NqiR.mjs} +4 -4
  44. package/dist/.setup/{node-cli-sessions-BxVYZNuY.mjs → node-cli-sessions-BQNAFnCa.mjs} +2 -2
  45. package/dist/.setup/{node-exec-server.runtime-8RehgPdQ.mjs → node-exec-server.runtime-B-4ogz9C.mjs} +2 -2
  46. package/dist/.setup/{plan-GqWF4XGA.mjs → plan-BE7gWwkn.mjs} +5 -5
  47. package/dist/.setup/{plugin-activation-BgfNFH2L.mjs → plugin-activation-Dbq2m2gh.mjs} +2 -2
  48. package/dist/.setup/{plugin-approval-roundtrip-x7UI_uqk.mjs → plugin-approval-roundtrip-ts-2EU8i.mjs} +1 -1
  49. package/dist/.setup/{plugin-inventory-OhiCoyPH.mjs → plugin-inventory-CZLnMaxf.mjs} +1 -1
  50. package/dist/.setup/{project-doc-thread-config-D_sWbxFR.mjs → project-doc-thread-config-BYFXSVGk.mjs} +3 -3
  51. package/dist/.setup/{provider-Bi9QCsg1.mjs → provider-D8R-IBhv.mjs} +4 -4
  52. package/dist/.setup/{provider-capabilities-BCZeV7xZ.mjs → provider-capabilities-C4ENlstc.mjs} +10 -3
  53. package/dist/.setup/{request-XC1RG34l.mjs → request-ufWmJNN1.mjs} +5 -5
  54. package/dist/.setup/{run-attempt-8U2CrqjW.mjs → run-attempt-CGHsrfPB.mjs} +131 -60
  55. package/dist/.setup/{runtime-artifact-CCPLKFGR.mjs → runtime-artifact-Ch7fCcgJ.mjs} +3 -3
  56. package/dist/.setup/{runtime-artifact-connection-dFoSOKy7.mjs → runtime-artifact-connection-C3ootnwd.mjs} +2 -2
  57. package/dist/.setup/{sandbox-guard-Cf9XMRrg.mjs → sandbox-guard-CwOc36_1.mjs} +1 -1
  58. package/dist/.setup/{session-binding-BDnNz-Co.mjs → session-binding-_RE7vtVN.mjs} +38 -12
  59. package/dist/.setup/{session-binding-record-C2kDBZhx.mjs → session-binding-record-O62ZRFhy.mjs} +2 -2
  60. package/dist/.setup/{session-binding-sidecars-DijNZb31.mjs → session-binding-sidecars-CAHe3enw.mjs} +1 -1
  61. package/dist/.setup/{session-catalog-adoption-Cl6fHxS5.mjs → session-catalog-adoption-DuChFASf.mjs} +5 -5
  62. package/dist/.setup/{session-catalog-archive-CUU7jEkO.mjs → session-catalog-archive-Bs5cP3zm.mjs} +5 -5
  63. package/dist/.setup/{session-catalog-events-CpEyDv0D.mjs → session-catalog-events-DnLfF9Xo.mjs} +4 -4
  64. package/dist/.setup/{session-catalog-index-DpYCf1-8.mjs → session-catalog-index-Bbph2EwS.mjs} +8 -8
  65. package/dist/.setup/{session-catalog-index-order-B30rjUEJ.mjs → session-catalog-index-order-CTSrDiE1.mjs} +1 -1
  66. package/dist/.setup/{session-catalog-limits-Daqt3JLk.mjs → session-catalog-limits-9Ay62KQ0.mjs} +1 -1
  67. package/dist/.setup/{session-catalog-list-request-SJyGz02j.mjs → session-catalog-list-request-uKKvUIoN.mjs} +3 -3
  68. package/dist/.setup/{session-catalog-native-projection-BYV0ICja.mjs → session-catalog-native-projection-CHtG8DwY.mjs} +4 -4
  69. package/dist/.setup/{session-catalog-node-adoption-D11N0CMr.mjs → session-catalog-node-adoption-BjYvYtAd.mjs} +2 -2
  70. package/dist/.setup/{session-catalog-node-continue-Ct62GeL1.mjs → session-catalog-node-continue-BEI9D3ev.mjs} +5 -5
  71. package/dist/.setup/{session-catalog-node-lookup-DQVe6vhs.mjs → session-catalog-node-lookup-CBomNvUN.mjs} +2 -2
  72. package/dist/.setup/{session-catalog-parsing-B4OyhylL.mjs → session-catalog-parsing-DmZmgRou.mjs} +1 -1
  73. package/dist/.setup/{session-catalog-projection-B0IyXrHt.mjs → session-catalog-projection-BgENBUS2.mjs} +4 -4
  74. package/dist/.setup/{session-catalog-source-CfIBVrbT.mjs → session-catalog-source-qHe5r9i_.mjs} +1 -1
  75. package/dist/.setup/{session-cli-BoJSZfGd.mjs → session-cli-CKzNw4c4.mjs} +2 -2
  76. package/dist/.setup/{session-history-import-DgwRu2eD.mjs → session-history-import-BhOzqhyI.mjs} +4 -4
  77. package/dist/.setup/{session-history.worker-DJQfek5p.mjs → session-history.worker-D2v5yRcB.mjs} +5 -3
  78. package/dist/.setup/{session-initialization-BjVtsTzi.mjs → session-initialization-Bwe0Bikj.mjs} +1 -1
  79. package/dist/.setup/{session-retirement-CKIS7jFv.mjs → session-retirement-BdHruV7q.mjs} +6 -6
  80. package/dist/.setup/{settled-turn-finalizer-CnIWbqN7.mjs → settled-turn-finalizer-Ca_Qd_9g.mjs} +5 -5
  81. package/dist/.setup/{shared-client-AdQX0Tdq.mjs → shared-client-C0gEybHs.mjs} +15 -13
  82. package/dist/.setup/{side-question-ZVehuPZn.mjs → side-question-Nn6D01tP.mjs} +17 -17
  83. package/dist/.setup/{source-BszpKEvi.mjs → source-CgYvv2h-.mjs} +4 -4
  84. package/dist/.setup/{thread-lifecycle-run-DezS4UNT.mjs → thread-lifecycle-run-BHM-L-56.mjs} +40 -19
  85. package/dist/.setup/{thread-ownership-OXzPB_RV.mjs → thread-ownership-BJpeo5Xk.mjs} +4 -4
  86. package/dist/.setup/{thread-policy-Dp4CQjdL.mjs → thread-policy-BlzkKVno.mjs} +3 -3
  87. package/dist/.setup/{thread-requests-DjyDmCo4.mjs → thread-requests-pX9_RXpU.mjs} +2 -2
  88. package/dist/.setup/{thread-resume-8YKfRoX6.mjs → thread-resume-BDd8b3E_.mjs} +4 -4
  89. package/dist/.setup/{transcript-mirror-DVEzdOs0.mjs → transcript-mirror-CPdcVWTn.mjs} +1 -1
  90. package/dist/.setup/{transport-stdio-lgeKKHyw.mjs → transport-stdio-BsXQmXll.mjs} +1 -1
  91. package/dist/.setup/{transport-websocket-CEBjEtFP.mjs → transport-websocket-B5mq2Iq2.mjs} +1 -1
  92. package/dist/.setup/{turn-router-DnfbVPvu.mjs → turn-router-8CkGlezp.mjs} +2 -2
  93. package/dist/.setup/{upstream-session-fork-BhADVCrb.mjs → upstream-session-fork-BW_UbivO.mjs} +17 -17
  94. package/dist/.setup/{usage-BoTUkAoJ.mjs → usage-fX3ctGZb.mjs} +3 -3
  95. package/dist/.setup/{usage-limit-error-EoQ7Vl2A.mjs → usage-limit-error-DycN7mED.mjs} +1 -1
  96. package/dist/.setup/{web-search-provider.runtime-Cc6vN-2C.mjs → web-search-provider.runtime-DEBVJch2.mjs} +2 -2
  97. package/dist/.setup/{workspace-write-sandbox-probe-DvfWTvuR.mjs → workspace-write-sandbox-probe-DB6Y3XLX.mjs} +2 -2
  98. package/dist/.source-module-urls/0560e3825cf513bbe9e095a85951c1215dfced0c1e581c5f32b007a3e759636e.json +1 -0
  99. package/dist/.source-module-urls/61f8912a558f2bfc87dcddd651d7f5d3cf17ba02e1e5359b050bf670840c0e0e.json +1 -0
  100. package/dist/api.js +3 -3
  101. package/dist/catalog-page.worker.js +340 -1
  102. package/dist/cli-metadata.js +1 -1
  103. package/dist/doctor-contract-api.js +14 -5
  104. package/dist/harness.js +20 -20
  105. package/dist/index.js +68 -58
  106. package/dist/media-understanding-provider.js +2 -2
  107. package/dist/migration-provider-api.js +1 -1
  108. package/dist/provider-discovery.js +1 -1
  109. package/dist/session-history-worker-runtime.js +4 -2
  110. package/dist/session-history.worker.js +1 -1
  111. package/openclaw.plugin.json +5 -0
  112. package/package.json +4 -4
  113. package/dist/.setup/client-catalog-response-DhB266B_.mjs +0 -310
@@ -0,0 +1,162 @@
1
+ import { c as readCodexNativeSubagentSubmissions, g as codexNativeSubagentHistoryConnectionFingerprint, l as codexNativeSubagentRunId, r as normalizeNativePendingAssignments } from "./native-subagent-pending-assignments-BAOzwy85.mjs";
2
+ import { a as readStoredCodexAppServerBinding } from "./session-binding-record-codec-CWQXr9os.mjs";
3
+ import { i as CODEX_APP_SERVER_BINDING_NAMESPACE } from "./session-binding-meta-Lkm5Lpf4.mjs";
4
+ import { asOptionalRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
5
+ import { isDeepStrictEqual } from "node:util";
6
+ //#region extensions/codex/src/migration/native-assignment-repair.ts
7
+ async function normalizeRow(entry, params, warnings) {
8
+ const raw = asOptionalRecord(entry.value);
9
+ if (raw?.nativeSubagentAssignments === void 0) return;
10
+ const stored = readStoredCodexAppServerBinding(raw);
11
+ if (!stored) {
12
+ warnings.push(`Preserved Codex native assignments in ${entry.key}; the binding could not be decoded. Inspect it before retrying Doctor.`);
13
+ return;
14
+ }
15
+ if (stored.state !== "active") return;
16
+ let inventory;
17
+ try {
18
+ inventory = normalizeNativePendingAssignments(raw.nativeSubagentAssignments);
19
+ } catch {
20
+ warnings.push(`Preserved malformed Codex native assignments in ${entry.key}; inspect the binding before retrying Doctor.`);
21
+ return;
22
+ }
23
+ let assignments = inventory?.assignments ?? [];
24
+ const originalAssignments = assignments;
25
+ const identity = /^(session-key|session):([a-z0-9][a-z0-9_-]{0,63}):(.+)$/u.exec(entry.key);
26
+ const binding = asOptionalRecord(raw.binding);
27
+ const fingerprint = codexNativeSubagentHistoryConnectionFingerprint(stored.binding);
28
+ if (assignments.length > 0 && identity && stored.sessionId && binding && raw.retired === void 0 && (identity[1] === "session-key" ? /^[A-Za-z0-9_-]{43}$/u.test(identity[3]) : identity[3] === stored.sessionId) && binding.connectionScope === void 0 && binding.supervisionSourceThreadId === void 0 && binding.pendingSupervisionBranch === void 0 && (binding.authProfileId === void 0 || typeof binding.authProfileId === "string") && fingerprint && params.context.readSessionIdentityEvidenceBatch) try {
29
+ const agentId = identity[2];
30
+ const [evidence] = await params.context.readSessionIdentityEvidenceBatch([{
31
+ agentId,
32
+ sessionId: stored.sessionId
33
+ }]);
34
+ if (evidence?.state === "absent") assignments = [];
35
+ else if (evidence?.state === "current") {
36
+ const { getSessionEntryByIdAsync, resolveStorePath } = await import("openclaw/plugin-sdk/session-store-runtime");
37
+ const { bindingStoreKey } = await import("./session-binding-record-O62ZRFhy.mjs").then((n) => n.h);
38
+ const current = await getSessionEntryByIdAsync({
39
+ agentId,
40
+ sessionId: stored.sessionId,
41
+ env: params.env,
42
+ storePath: resolveStorePath(params.config.session?.store, {
43
+ agentId,
44
+ env: params.env
45
+ }),
46
+ readConsistency: "latest"
47
+ });
48
+ if (!current || current.entry.sessionId !== stored.sessionId || current.sessionKey !== evidence.sessionKey) throw new Error("Requester ownership is unresolved");
49
+ const currentKey = bindingStoreKey({
50
+ kind: "session",
51
+ agentId,
52
+ sessionId: current.entry.sessionId,
53
+ ...identity[1] === "session-key" ? { sessionKey: current.sessionKey } : {}
54
+ });
55
+ let unknownLifecycle = false;
56
+ assignments = assignments.filter((assignment) => {
57
+ if (currentKey !== entry.key || assignment.owner.sessionId !== current.entry.sessionId || assignment.owner.connectionFingerprint !== fingerprint) return false;
58
+ if (!assignment.owner.lifecycleRevision || !current.entry.lifecycleRevision) {
59
+ unknownLifecycle = true;
60
+ return true;
61
+ }
62
+ return assignment.owner.lifecycleRevision === current.entry.lifecycleRevision;
63
+ });
64
+ if (unknownLifecycle) warnings.push(`Preserved Codex assignments with unknown lifecycle evidence in ${entry.key}.`);
65
+ } else warnings.push(`Preserved Codex assignments with unknown requester evidence in ${entry.key}.`);
66
+ } catch {
67
+ warnings.push(`Could not establish requester ownership for Codex native assignments in ${entry.key}; preserved them for a later Doctor repair.`);
68
+ }
69
+ else if (assignments.length > 0) warnings.push(`Preserved Codex native assignments in ${entry.key}; ownership inspection prerequisites are incomplete. Inspect the binding before retrying Doctor.`);
70
+ const next = assignments.length ? {
71
+ version: 1,
72
+ assignments
73
+ } : void 0;
74
+ if (isDeepStrictEqual(next, raw.nativeSubagentAssignments)) return;
75
+ const { nativeSubagentAssignments: _previous, ...value } = raw;
76
+ const retired = originalAssignments.filter((assignment) => !assignments.includes(assignment));
77
+ if (retired.length) try {
78
+ const submissions = readCodexNativeSubagentSubmissions(raw.nativeSubagentSubmissions);
79
+ if (submissions) {
80
+ const receipts = submissions.receipts.filter((receipt) => !retired.some((assignment) => isDeepStrictEqual(submissions.owner, assignment.owner) && submissions.owner.parentThreadId === assignment.nativeParentThreadId && receipt.childThreadId === assignment.childThreadId && (receipt.submissionId === assignment.nativeTurnId || codexNativeSubagentRunId(receipt.childThreadId, receipt.submissionId) === assignment.runId) && (!assignment.submission || isDeepStrictEqual(receipt, assignment.submission))));
81
+ if (receipts.length !== submissions.receipts.length) {
82
+ delete value.nativeSubagentSubmissions;
83
+ if (receipts.length) value.nativeSubagentSubmissions = {
84
+ ...submissions,
85
+ receipts
86
+ };
87
+ }
88
+ }
89
+ } catch {
90
+ warnings.push(`Preserved uncertain native submission receipts in ${entry.key}; inspect them before retrying Doctor.`);
91
+ }
92
+ return {
93
+ entry,
94
+ value: {
95
+ ...value,
96
+ ...next ? { nativeSubagentAssignments: next } : {}
97
+ }
98
+ };
99
+ }
100
+ async function* inspect(params) {
101
+ const read = params.context.readPluginStateEntriesInKeyRange;
102
+ if (!read) return;
103
+ let after;
104
+ while (true) {
105
+ const rows = read(CODEX_APP_SERVER_BINDING_NAMESPACE, {
106
+ prefix: "",
107
+ after,
108
+ limit: 512
109
+ });
110
+ const replacements = [];
111
+ const warnings = [];
112
+ for (const entry of rows) {
113
+ const replacement = await normalizeRow(entry, params, warnings);
114
+ if (replacement) replacements.push(replacement);
115
+ }
116
+ if (replacements.length || warnings.length) yield {
117
+ replacements,
118
+ warnings
119
+ };
120
+ if (rows.length < 512) return;
121
+ after = rows.at(-1)?.key;
122
+ }
123
+ }
124
+ const codexNativeAssignmentRepair = {
125
+ id: "codex-native-assignment-repair",
126
+ label: "Codex native pending assignment repair",
127
+ doctorOnly: true,
128
+ phase: "after-session-repair",
129
+ collectBackupResources: () => [],
130
+ async detectLegacyState(params) {
131
+ for await (const _ of inspect(params)) return { preview: ["- Repair duplicate or obsolete Codex native pending assignments"] };
132
+ return null;
133
+ },
134
+ async migrateLegacyState(params) {
135
+ const changes = [];
136
+ const warnings = [];
137
+ const repair = params.context.repairPluginStateEntries;
138
+ if (!repair) return {
139
+ changes,
140
+ warnings: ["Codex native assignment repair requires locked SQLite maintenance ownership"],
141
+ warningDisposition: "recoverable"
142
+ };
143
+ for await (const inspected of inspect(params)) {
144
+ warnings.push(...inspected.warnings);
145
+ if (!inspected.replacements.length) continue;
146
+ try {
147
+ const result = await repair(CODEX_APP_SERVER_BINDING_NAMESPACE, inspected.replacements);
148
+ changes.push(...result.changes, `Repaired native pending assignments in ${inspected.replacements.length} Codex binding(s)`);
149
+ warnings.push(...result.warnings);
150
+ } catch {
151
+ warnings.push("Codex native assignment bindings could not be repaired; preserved them for a later openclaw doctor --fix pass.");
152
+ }
153
+ }
154
+ return {
155
+ changes,
156
+ warnings,
157
+ ...warnings.length ? { warningDisposition: "recoverable" } : {}
158
+ };
159
+ }
160
+ };
161
+ //#endregion
162
+ export { codexNativeAssignmentRepair };
@@ -1,8 +1,8 @@
1
1
  import { d as readCodexPluginConfig } from "./config-parsing-CVK2Q463.mjs";
2
2
  import { n as isCodexAppServerProxyLaunch, t as buildCodexLoginStatusArgs } from "./launch-args-DbFCehO7.mjs";
3
- import { r as resolveManagedCodexAppServerStartOptions } from "./managed-binary-DwC9wxch.mjs";
4
- import { n as resolveCodexAppServerSpawnEnv } from "./transport-stdio-lgeKKHyw.mjs";
5
- import { n as resolveCodexAppServerRuntimeOptions } from "./config-runtime-DGB1-VbB.mjs";
3
+ import { r as resolveManagedCodexAppServerStartOptions } from "./managed-binary-Boj8_lWV.mjs";
4
+ import { n as resolveCodexAppServerSpawnEnv } from "./transport-stdio-BsXQmXll.mjs";
5
+ import { n as resolveCodexAppServerRuntimeOptions } from "./config-runtime-BUH-IDVE.mjs";
6
6
  import { materializeWindowsSpawnProgram, resolveWindowsSpawnProgram } from "openclaw/plugin-sdk/windows-spawn";
7
7
  import { runUtf8CommandWithTimeout } from "openclaw/plugin-sdk/process-runtime";
8
8
  //#region extensions/codex/src/app-server/native-auth.ts
@@ -1,9 +1,9 @@
1
+ import { k as resolveCodexToolAbortTerminalReason } from "./client-CafYfF2n.mjs";
1
2
  import { i as isJsonObject } from "./protocol-CANUwXJ3.mjs";
2
3
  import { l as fingerprintCodexPolicy } from "./config-security-DpkGNy5T.mjs";
3
- import { D as nativeHookRelayUnregisterQueue } from "./shared-client-AdQX0Tdq.mjs";
4
- import { k as resolveCodexToolAbortTerminalReason } from "./client-BM97zH3z.mjs";
5
- import { R as normalizeCodexDynamicToolName } from "./thread-requests-DjyDmCo4.mjs";
6
- import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-CJaIve3h.mjs";
4
+ import { D as nativeHookRelayUnregisterQueue } from "./shared-client-C0gEybHs.mjs";
5
+ import { R as normalizeCodexDynamicToolName } from "./thread-requests-pX9_RXpU.mjs";
6
+ import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-D_tvjJxa.mjs";
7
7
  import { createHash } from "node:crypto";
8
8
  import { addTimerTimeoutGraceMs, finiteSecondsToTimerSafeMilliseconds } from "openclaw/plugin-sdk/number-runtime";
9
9
  import { escapeRegExp } from "openclaw/plugin-sdk/text-utility-runtime";
@@ -1,9 +1,9 @@
1
- import { G as protectCodexAppServerLiveThread, _ as retainSharedCodexAppServerClientIfCurrent, n as captureCodexAppServerClientLifetime } from "./shared-client-AdQX0Tdq.mjs";
2
- import { F as getCodexAppServerClientInstanceId } from "./client-BM97zH3z.mjs";
3
- import { n as getCodexAppServerTurnRouter } from "./turn-router-DnfbVPvu.mjs";
4
- import { a as requestPluginApprovalOutcome } from "./plugin-approval-roundtrip-x7UI_uqk.mjs";
1
+ import { F as getCodexAppServerClientInstanceId } from "./client-CafYfF2n.mjs";
2
+ import { G as protectCodexAppServerLiveThread, _ as retainSharedCodexAppServerClientIfCurrent, n as captureCodexAppServerClientLifetime } from "./shared-client-C0gEybHs.mjs";
3
+ import { n as getCodexAppServerTurnRouter } from "./turn-router-8CkGlezp.mjs";
4
+ import { a as requestPluginApprovalOutcome } from "./plugin-approval-roundtrip-ts-2EU8i.mjs";
5
5
  import { i as readCodexMcpToolUiVisibility, n as projectCodexMcpToolMetadata, r as readCodexMcpToolConnectorId, t as projectCodexMcpServerMetadata } from "./mcp-tool-metadata-_sawBkIh.mjs";
6
- import { t as __exportAll } from "./session-binding-sidecars-DijNZb31.mjs";
6
+ import { t as __exportAll } from "./session-binding-sidecars-CAHe3enw.mjs";
7
7
  import { asOptionalRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
8
8
  import { z } from "zod";
9
9
  import { loadAgentHarnessMcpConfig, prepareHarnessNativeMcpAppPreview } from "openclaw/plugin-sdk/agent-harness-runtime";
@@ -1,9 +1,9 @@
1
1
  import { i as isJsonObject } from "./protocol-CANUwXJ3.mjs";
2
2
  import { n as resolveCodexAppServerLocalHomeDir } from "./auth-start-options-BPIPeEX8.mjs";
3
3
  import { t as buildCodexAppServerConnectionFingerprint } from "./plugin-app-cache-key-Bg9DbDI6.mjs";
4
- import { K as readCodexClientSessionMeta } from "./shared-client-AdQX0Tdq.mjs";
5
- import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS } from "./attempt-client-cleanup-jWVRH043.mjs";
6
- import { b as codexDynamicToolsFingerprint, p as attestCodexRestrictedToolSurfaceMcpServersDisabled } from "./thread-requests-DjyDmCo4.mjs";
4
+ import { K as readCodexClientSessionMeta } from "./shared-client-C0gEybHs.mjs";
5
+ import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS } from "./attempt-client-cleanup-DQBa7iiq.mjs";
6
+ import { b as codexDynamicToolsFingerprint, p as attestCodexRestrictedToolSurfaceMcpServersDisabled } from "./thread-requests-pX9_RXpU.mjs";
7
7
  import path from "node:path";
8
8
  import os from "node:os";
9
9
  import fs from "node:fs/promises";