@openclaw/codex 2026.10.10-beta.2 → 2026.10.10-beta.3

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 (60) hide show
  1. package/dist/.setup/{account-usage-runtime-BVO-lpvn.mjs → account-usage-runtime-BOspqhfQ.mjs} +1 -1
  2. package/dist/.setup/{apply-tJl5mopa.mjs → apply-DVeFKzUL.mjs} +4 -4
  3. package/dist/.setup/{attempt-client-cleanup-DMJWXGxM.mjs → attempt-client-cleanup-BLp6z_DD.mjs} +4 -4
  4. package/dist/.setup/{auth-cache-key-BW1YeaIk.mjs → auth-cache-key-aolg0chE.mjs} +1 -1
  5. package/dist/.setup/{bounded-turn-BQkmyyjB.mjs → bounded-turn-DJr0EXh7.mjs} +6 -6
  6. package/dist/.setup/{build-state-CjLCC0wm.mjs → build-state-DswWyGqI.mjs} +1 -1
  7. package/dist/.setup/{client--P8jwXvA.mjs → client-CPPD2q0Z.mjs} +3 -3
  8. package/dist/.setup/{client-catalog-response-CsDxVVOZ.mjs → client-catalog-response-FeIOBhaz.mjs} +1 -1
  9. package/dist/.setup/{command-dispatch-DqaVBeR3.mjs → command-dispatch-DlgDPLEv.mjs} +1 -1
  10. package/dist/.setup/{command-handlers-i6mEjvfo.mjs → command-handlers-B7Kcgt8i.mjs} +10 -10
  11. package/dist/.setup/{command-rpc-B65jEc0r.mjs → command-rpc-DomZ6_l8.mjs} +6 -6
  12. package/dist/.setup/{compact-AO2H4RJe.mjs → compact-H5H5Cvbw.mjs} +9 -9
  13. package/dist/.setup/{computer-use-YUnu0JVx.mjs → computer-use-BFfXSTZw.mjs} +3 -3
  14. package/dist/.setup/{conversation-binding-CfnUR-IM.mjs → conversation-binding-DyiBKCA4.mjs} +29 -20
  15. package/dist/.setup/{dynamic-tool-build-DOub3CB5.mjs → dynamic-tool-build-DkJpWzXt.mjs} +1 -1
  16. package/dist/.setup/{dynamic-tools-Us5mvq_N.mjs → dynamic-tools-UL4DHNTh.mjs} +6 -6
  17. package/dist/.setup/{effective-mcp-catalog-DfUUoeeM.mjs → effective-mcp-catalog-CvJiu5dn.mjs} +4 -4
  18. package/dist/.setup/{ephemeral-turn-B2z0RIeF.mjs → ephemeral-turn-C9iVxYQi.mjs} +2 -2
  19. package/dist/.setup/{inference-context-HRw3PDwn.mjs → inference-context-BPwyk-Op.mjs} +1 -1
  20. package/dist/.setup/{inference-proxy-CiLbHMLf.mjs → inference-proxy-iJoMVyEy.mjs} +1 -1
  21. package/dist/.setup/{isolated-completion-CybgD6uU.mjs → isolated-completion-Bv8qIPw_.mjs} +3 -3
  22. package/dist/.setup/{mcp-app-session-preparation-zUgpDLWR.mjs → mcp-app-session-preparation-DtvMR_yX.mjs} +3 -3
  23. package/dist/.setup/{model-catalog-CWY3wo0B.mjs → model-catalog-EWVLBn3F.mjs} +5 -5
  24. package/dist/.setup/{models-CmOBxsKF.mjs → models-Bc4yyUrk.mjs} +3 -3
  25. package/dist/.setup/{native-hook-relay-CocOW9YS.mjs → native-hook-relay-DbNYjwuC.mjs} +3 -3
  26. package/dist/.setup/{native-mcp-app-DrQeLxXj.mjs → native-mcp-app-gkEJsgj2.mjs} +4 -4
  27. package/dist/.setup/{native-skill-isolation-DL4-PQa4.mjs → native-skill-isolation-Cja6Nv79.mjs} +2 -2
  28. package/dist/.setup/{native-subagent-monitor-C3CIIaZG.mjs → native-subagent-monitor-D1pYkirc.mjs} +9 -7
  29. package/dist/.setup/{plan-Bqj6VQvQ.mjs → plan-BUB3QGL7.mjs} +2 -2
  30. package/dist/.setup/{plugin-approval-roundtrip-CGEiG7hG.mjs → plugin-approval-roundtrip-BkiVPLuc.mjs} +1 -1
  31. package/dist/.setup/{provider-C_1fMsyD.mjs → provider-Rt7awchu.mjs} +4 -4
  32. package/dist/.setup/{provider-capabilities-C7pYYpvh.mjs → provider-capabilities-C0laqfjE.mjs} +1 -1
  33. package/dist/.setup/{request-C6U8q2uz.mjs → request-DbU7VQMs.mjs} +1 -1
  34. package/dist/.setup/{run-attempt-BhuXanLv.mjs → run-attempt-BFAgRiTd.mjs} +20 -20
  35. package/dist/.setup/{session-cancellation-DCN1FcBZ.mjs → session-cancellation-9l8N4EUL.mjs} +4 -4
  36. package/dist/.setup/{session-catalog-events-CEi6SuLQ.mjs → session-catalog-events-CicBG92S.mjs} +3 -3
  37. package/dist/.setup/{session-catalog-index-qt4UWBua.mjs → session-catalog-index-ft2e51lh.mjs} +4 -4
  38. package/dist/.setup/{session-catalog-native-projection-BqBYi6kV.mjs → session-catalog-native-projection-CwOyRRXK.mjs} +1 -1
  39. package/dist/.setup/{session-catalog-projection-CNyhjZze.mjs → session-catalog-projection-By1iGA1y.mjs} +1 -1
  40. package/dist/.setup/{session-catalog-source-z_mNyQdX.mjs → session-catalog-source-DghHV4qB.mjs} +1 -1
  41. package/dist/.setup/{session-retirement-RZStisKb.mjs → session-retirement-D9qTLXqz.mjs} +5 -5
  42. package/dist/.setup/{settled-turn-finalizer-gioXygEX.mjs → settled-turn-finalizer-Cn7yngMH.mjs} +3 -3
  43. package/dist/.setup/{shared-client-CkyTrNB8.mjs → shared-client-B8v6e5D0.mjs} +28 -13
  44. package/dist/.setup/{side-question-DHPWKgO3.mjs → side-question-DFFnd64D.mjs} +13 -13
  45. package/dist/.setup/{source-63MLSmLJ.mjs → source-DTo8pzXK.mjs} +1 -1
  46. package/dist/.setup/{thread-lifecycle-run-zCXYFW8W.mjs → thread-lifecycle-run-DOC2IWpW.mjs} +56 -29
  47. package/dist/.setup/{thread-ownership-Bmk5a2Gu.mjs → thread-ownership-DJ8PPxRc.mjs} +3 -3
  48. package/dist/.setup/{thread-policy-DYtvZ5Ay.mjs → thread-policy-UldER50x.mjs} +3 -3
  49. package/dist/.setup/{thread-resume-vBShG3-o.mjs → thread-resume-BZWI-rUL.mjs} +4 -4
  50. package/dist/.setup/{turn-router-BGj67FMK.mjs → turn-router-CaEj5E0i.mjs} +1 -1
  51. package/dist/.setup/{upstream-session-fork-CWKjpdtW.mjs → upstream-session-fork-Dqf5_VFU.mjs} +8 -8
  52. package/dist/.setup/{usage-AhrLFxZP.mjs → usage-BfOJuCR7.mjs} +1 -1
  53. package/dist/.setup/{usage-limit-error-BdNbGJC3.mjs → usage-limit-error-B0x1eymI.mjs} +1 -1
  54. package/dist/.setup/{web-search-provider.runtime-Yk6lnJBG.mjs → web-search-provider.runtime-BwYKjmzK.mjs} +1 -1
  55. package/dist/catalog-page.worker.js +1 -1
  56. package/dist/harness.js +16 -16
  57. package/dist/index.js +24 -24
  58. package/dist/media-understanding-provider.js +2 -2
  59. package/dist/migration-provider-api.js +1 -1
  60. package/package.json +4 -4
@@ -1,7 +1,7 @@
1
- import { I as protectCodexAppServerLiveThread, p as retainSharedCodexAppServerClientIfCurrent, t as captureCodexAppServerClientLifetime } from "./shared-client-CkyTrNB8.mjs";
2
- import { M as getCodexAppServerClientInstanceId } from "./client--P8jwXvA.mjs";
3
- import { n as getCodexAppServerTurnRouter } from "./turn-router-BGj67FMK.mjs";
4
- import { a as requestPluginApprovalOutcome } from "./plugin-approval-roundtrip-CGEiG7hG.mjs";
1
+ import { I as protectCodexAppServerLiveThread, p as retainSharedCodexAppServerClientIfCurrent, t as captureCodexAppServerClientLifetime } from "./shared-client-B8v6e5D0.mjs";
2
+ import { M as getCodexAppServerClientInstanceId } from "./client-CPPD2q0Z.mjs";
3
+ import { n as getCodexAppServerTurnRouter } from "./turn-router-CaEj5E0i.mjs";
4
+ import { a as requestPluginApprovalOutcome } from "./plugin-approval-roundtrip-BkiVPLuc.mjs";
5
5
  import { i as readCodexMcpToolUiVisibility, n as projectCodexMcpToolMetadata, r as readCodexMcpToolConnectorId, t as projectCodexMcpServerMetadata } from "./mcp-tool-metadata-DW41snf3.mjs";
6
6
  import { t as __exportAll } from "./session-binding-sidecars-BNSS6WL4.mjs";
7
7
  import { asOptionalRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -1,8 +1,8 @@
1
1
  import { r as isJsonObject } from "./protocol-CaPAVwe9.mjs";
2
2
  import { n as resolveCodexAppServerLocalHomeDir } from "./auth-start-options-BPIPeEX8.mjs";
3
3
  import { t as buildCodexAppServerConnectionFingerprint } from "./plugin-app-cache-key-DRb-niJc.mjs";
4
- import { L as readCodexClientSessionMeta } from "./shared-client-CkyTrNB8.mjs";
5
- import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS } from "./attempt-client-cleanup-DMJWXGxM.mjs";
4
+ import { R as readCodexClientSessionMeta } from "./shared-client-B8v6e5D0.mjs";
5
+ import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS } from "./attempt-client-cleanup-BLp6z_DD.mjs";
6
6
  import { b as codexDynamicToolsFingerprint, p as attestCodexRestrictedToolSurfaceMcpServersDisabled } from "./thread-requests-BjawdIVV.mjs";
7
7
  import path from "node:path";
8
8
  import os from "node:os";
@@ -1,15 +1,15 @@
1
1
  import { c as codexNativeSubagentRunId, d as readNativeSubagentThreadIds, f as readThreadParentThreadId, l as normalizeIdentifier, m as assertHistoryOwnerMatchesRegistration, p as readThreadSpawnSource, t as matchesNativeAssignmentLifecycle, u as readCodexNativeSubagentRunId } from "./native-subagent-pending-assignments-CTinVtjo.mjs";
2
2
  import { r as isJsonObject } from "./protocol-CaPAVwe9.mjs";
3
- import { n as defineCodexBuildState } from "./build-state-CjLCC0wm.mjs";
3
+ import { n as defineCodexBuildState } from "./build-state-DswWyGqI.mjs";
4
4
  import { a as readHookOutputEntries, o as readItem, s as readNullableString } from "./event-projector-values-yf4us9Pf.mjs";
5
5
  import { n as attachCodexMirrorIdentity } from "./upstream-prompt-provenance-Ccd9MFRJ.mjs";
6
6
  import { t as readCodexMirroredSessionHistoryMessages } from "./session-history-7W0cgTXF.mjs";
7
- import { A as hasCodexAppServerLiveThread, B as retainCodexAppServerLiveThread, E as claimCodexAppServerLiveThread } from "./shared-client-CkyTrNB8.mjs";
8
- import { j as readCodexAppServerWarningMessage } from "./client--P8jwXvA.mjs";
9
- import { C as unknownItemStatus, _ as itemName, b as matchesCodexSnapshotTurn, f as isMutatingNativeToolItem, g as itemKind, h as isSideEffectingNativeToolItem, l as auditNativeToolName, m as isProjectedNativeToolItem, p as isNonSuccessItemStatus, u as auditNativeToolTerminalStatus, v as itemStatus, y as itemTitle } from "./turn-router-BGj67FMK.mjs";
10
- import { s as interruptCodexTurnAndWaitBestEffort, t as CODEX_APP_SERVER_INTERRUPT_TIMEOUT_MS } from "./attempt-client-cleanup-DMJWXGxM.mjs";
7
+ import { A as hasCodexAppServerLiveThread, E as claimCodexAppServerLiveThread, V as retainCodexAppServerLiveThread } from "./shared-client-B8v6e5D0.mjs";
8
+ import { j as readCodexAppServerWarningMessage } from "./client-CPPD2q0Z.mjs";
9
+ import { C as unknownItemStatus, _ as itemName, b as matchesCodexSnapshotTurn, f as isMutatingNativeToolItem, g as itemKind, h as isSideEffectingNativeToolItem, l as auditNativeToolName, m as isProjectedNativeToolItem, p as isNonSuccessItemStatus, u as auditNativeToolTerminalStatus, v as itemStatus, y as itemTitle } from "./turn-router-CaEj5E0i.mjs";
10
+ import { s as interruptCodexTurnAndWaitBestEffort, t as CODEX_APP_SERVER_INTERRUPT_TIMEOUT_MS } from "./attempt-client-cleanup-BLp6z_DD.mjs";
11
11
  import { t as projectCodexWebSearchItem } from "./web-search-item-DHVuNSqk.mjs";
12
- import { n as codexApprovalTimeoutText } from "./plugin-approval-roundtrip-CGEiG7hG.mjs";
12
+ import { n as codexApprovalTimeoutText } from "./plugin-approval-roundtrip-BkiVPLuc.mjs";
13
13
  import { t as resolveCodexLocalRuntimeAttribution } from "./local-runtime-attribution-CZz2DJ4q.mjs";
14
14
  import { t as __exportAll } from "./session-binding-sidecars-BNSS6WL4.mjs";
15
15
  import { asFiniteNumber, asNonArrayRecord, normalizeOptionalString, readStringField } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -652,6 +652,7 @@ var CodexNativeSubagentAssignmentInventory = class {
652
652
  if (!store || !current || !owner.completionCustody?.isCurrent()) return;
653
653
  const custody = owner.completionCustody.retain();
654
654
  try {
655
+ await this.drain(state);
655
656
  const assignments = await store.read();
656
657
  if (!this.dependencies.isCurrent(state) || !custody.isCurrent()) return;
657
658
  for (const assignment of assignments) {
@@ -661,6 +662,7 @@ var CodexNativeSubagentAssignmentInventory = class {
661
662
  if (!this.dependencies.isCurrent(state) || !custody.isCurrent()) return;
662
663
  if (!recovery || recovery.parentThreadId !== assignment.nativeParentThreadId) continue;
663
664
  await this.dependencies.restore(state, assignment, recovery, custody);
665
+ await this.drain(state);
664
666
  }
665
667
  } catch (error) {
666
668
  embeddedAgentLog.warn("Native pending assignments remain for reconciliation", { error: formatErrorMessage$1(error) });
@@ -2065,7 +2067,7 @@ async function registerNativeSubagentParent(input, dependencies) {
2065
2067
  dependencies.prune(registeredState);
2066
2068
  registrationSettled.resolve();
2067
2069
  }
2068
- const ready = dependencies.submissions.restore(state, owner).then(() => dependencies.assignments.restore(state, owner));
2070
+ const ready = dependencies.submissions.restore(state, owner).then(() => dependencies.submissions.drain(registeredState)).then(() => dependencies.assignments.restore(state, owner)).then(() => dependencies.assignments.drain(registeredState));
2069
2071
  let registered = true;
2070
2072
  let settlement;
2071
2073
  return {
@@ -2,7 +2,7 @@ import { t as isOnlyMigrationKind } from "./scope-DOC1Xjc8.mjs";
2
2
  import { u as CODEX_PLUGINS_MARKETPLACE_NAME } from "./plugin-inventory-DE9wcaeH.mjs";
3
3
  import "./config-BfrAlTMT.mjs";
4
4
  import { t as readCodexExperimentalFeature } from "./experimental-features-uGnVDtp-.mjs";
5
- import { i as hasCodexSource, n as defaultCodexHome, o as readJsonObject, r as discoverCodexSource, s as sanitizeName, t as codexPluginMigrationSubscriptionWarning } from "./source-63MLSmLJ.mjs";
5
+ import { i as hasCodexSource, n as defaultCodexHome, o as readJsonObject, r as discoverCodexSource, s as sanitizeName, t as codexPluginMigrationSubscriptionWarning } from "./source-DTo8pzXK.mjs";
6
6
  import { asBoolean, asOptionalRecord, isRecord, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
7
7
  import { createHash } from "node:crypto";
8
8
  import { runCommandBuffered } from "openclaw/plugin-sdk/process-runtime";
@@ -98,7 +98,7 @@ async function readCodexCliCredentialsAsync(options) {
98
98
  options.signal?.throwIfAborted();
99
99
  if (!options.allowKeychainPrompt) return;
100
100
  const home = await fs.realpath(options.codexHome).catch(() => path.resolve(options.codexHome));
101
- const { CodexAppServerClient } = await import("./client--P8jwXvA.mjs").then((n) => n.n);
101
+ const { CodexAppServerClient } = await import("./client-CPPD2q0Z.mjs").then((n) => n.n);
102
102
  const { resolveManagedCodexPackageEntrypoint, resolveManagedCodexNativeCommand } = await import("./managed-binary-DbKvGXKl.mjs").then((n) => n.o);
103
103
  const launcher = resolveManagedCodexPackageEntrypoint(path.dirname(fileURLToPath(import.meta.url)));
104
104
  const command = launcher ? resolveManagedCodexNativeCommand(launcher) : void 0;
@@ -1,4 +1,4 @@
1
- import { ut as resolveCodexGatewayTimeoutWithGraceMs } from "./shared-client-CkyTrNB8.mjs";
1
+ import { ft as resolveCodexGatewayTimeoutWithGraceMs } from "./shared-client-B8v6e5D0.mjs";
2
2
  import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
3
3
  import { isApprovalNotFoundError, toErrorObject } from "openclaw/plugin-sdk/error-runtime";
4
4
  import { racePromiseWithAbortSignal } from "openclaw/plugin-sdk/time-runtime";
@@ -11,7 +11,7 @@ function buildCodexMigrationProvider(params = {}) {
11
11
  ].join(" "),
12
12
  supportedItemKinds: ["memory", "auth"],
13
13
  async detect(ctx) {
14
- const { discoverCodexSource, hasCodexSource } = await import("./source-63MLSmLJ.mjs").then((n) => n.a);
14
+ const { discoverCodexSource, hasCodexSource } = await import("./source-DTo8pzXK.mjs").then((n) => n.a);
15
15
  const memoryOnly = isOnlyMigrationKind(ctx, "memory");
16
16
  const authOnly = isOnlyMigrationKind(ctx, "auth");
17
17
  const source = await discoverCodexSource({
@@ -29,16 +29,16 @@ function buildCodexMigrationProvider(params = {}) {
29
29
  };
30
30
  },
31
31
  async plan(ctx) {
32
- const { buildCodexMigrationPlan } = await import("./plan-Bqj6VQvQ.mjs");
32
+ const { buildCodexMigrationPlan } = await import("./plan-BUB3QGL7.mjs");
33
33
  return buildCodexMigrationPlan(ctx);
34
34
  },
35
35
  deferredApply: { retrySafe: true },
36
36
  prepareApply(ctx) {
37
37
  if (isOnlyMigrationKind(ctx, "memory") || isOnlyMigrationKind(ctx, "auth")) return;
38
- return import("./apply-tJl5mopa.mjs").then(({ prepareTargetCodexAppServer }) => prepareTargetCodexAppServer(ctx));
38
+ return import("./apply-DVeFKzUL.mjs").then(({ prepareTargetCodexAppServer }) => prepareTargetCodexAppServer(ctx));
39
39
  },
40
40
  async apply(ctx, plan) {
41
- const { applyCodexMigrationPlan } = await import("./apply-tJl5mopa.mjs");
41
+ const { applyCodexMigrationPlan } = await import("./apply-DVeFKzUL.mjs");
42
42
  return await applyCodexMigrationPlan({
43
43
  ctx,
44
44
  plan,
@@ -1,4 +1,4 @@
1
- import { f as releaseLeasedSharedCodexAppServerClient } from "./shared-client-CkyTrNB8.mjs";
1
+ import { f as releaseLeasedSharedCodexAppServerClient } from "./shared-client-B8v6e5D0.mjs";
2
2
  //#region extensions/codex/src/app-server/provider-capabilities.ts
3
3
  function resolveOverriddenProviderWebSearchSupport(modelProviderOverride) {
4
4
  const provider = modelProviderOverride?.trim().toLowerCase();
@@ -289,7 +289,7 @@ async function withCodexAppServerJsonClient(params, run) {
289
289
  timeoutMessage,
290
290
  promise: (async () => {
291
291
  const { prepareCodexAppServerDirectSandboxBypassBlock } = await import("./sandbox-guard-DneAfNye.mjs").then((n) => n.a);
292
- const { createIsolatedCodexAppServerClient, getLeasedSharedCodexAppServerClient, releaseLeasedSharedCodexAppServerClient } = await import("./shared-client-CkyTrNB8.mjs").then((n) => n.m);
292
+ const { createIsolatedCodexAppServerClient, getLeasedSharedCodexAppServerClient, releaseLeasedSharedCodexAppServerClient } = await import("./shared-client-B8v6e5D0.mjs").then((n) => n.m);
293
293
  errorPhase = void 0;
294
294
  setPhase("prepare");
295
295
  throwIfAbandoned();
@@ -2,13 +2,13 @@ import { n as readCodexRuntimeModelId } from "./model-runtime-BdqzOMkU.mjs";
2
2
  import { g as createCodexNativeSubagentHistoryOwner } from "./native-subagent-pending-assignments-CTinVtjo.mjs";
3
3
  import { n as flattenCodexDynamicToolFunctions, r as isJsonObject, t as CODEX_OPENCLAW_DIRECT_DYNAMIC_TOOL_NAMESPACE } from "./protocol-CaPAVwe9.mjs";
4
4
  import { g as sessionBindingIdentity, i as matchesCodexNativeSubagentSubmissionBinding, n as assertCodexBindingMayBeReplaced } from "./session-binding-record-C_THntMe.mjs";
5
- import { n as defineCodexBuildState } from "./build-state-CjLCC0wm.mjs";
5
+ import { n as defineCodexBuildState } from "./build-state-DswWyGqI.mjs";
6
6
  import { c as withMcpElicitationsApprovalPolicy, d as readCodexRequirementsToml, n as hasCodexMcpToolApprovalOverrides, s as shouldAutoApproveCodexAppServerApprovals } from "./config-security-clxAZYWX.mjs";
7
7
  import { c as isCodexPairedNodeRemoteExecPlacementSandbox, d as readCodexPluginConfig, f as resolveCodexPluginsPolicy, l as isCodexRemoteExecPlacementSandbox, u as isCodexSandboxExecServerEnabled } from "./config-parsing-DsWSCPHO.mjs";
8
8
  import { n as isCodexAppServerProxyLaunch } from "./launch-args-DbFCehO7.mjs";
9
9
  import { t as resolveCodexAppServerHomeDir } from "./auth-start-options-BPIPeEX8.mjs";
10
10
  import { i as resolveCodexAppServerHomeScope, l as resolveCodexModelBackedReviewerPolicyContext, o as resolveCodexComputerUseConfig } from "./config-options-DMFZkd3X.mjs";
11
- import { D as retireSharedCodexAppServerClientIfCurrent, _ as observeAcquire, c as resolveCodexAppServerPreparedApiKeyCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey } from "./auth-cache-key-BW1YeaIk.mjs";
11
+ import { D as retireSharedCodexAppServerClientIfCurrent, _ as observeAcquire, c as resolveCodexAppServerPreparedApiKeyCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey } from "./auth-cache-key-aolg0chE.mjs";
12
12
  import { i as withCodexAppServerGitConfig } from "./transport-stdio-Bq160Dhv.mjs";
13
13
  import { o as formatCodexDisplayText } from "./command-formatters-B_7-QZ1c.mjs";
14
14
  import { a as codexPrewriteRejectionCause, r as CodexAppServerRpcError } from "./rpc-error-DemqqaxE.mjs";
@@ -23,43 +23,43 @@ import { t as readCodexMirroredSessionHistoryMessages } from "./session-history-
23
23
  import { a as isCodexDurableCustomMessage, c as resolveCodexContextEngineProjectionMaxChars, i as fitCodexProjectedContextForTurnStart, l as resolveCodexContinuityProjectionMaxChars, n as CodexContextAttachmentError, o as neutralizeCodexExplicitMentionSigils, r as buildCodexContinuityCalibration, s as projectContextEngineAssemblyForCodex, t as CODEX_TURN_START_TEXT_INPUT_MAX_CHARS, u as resolveProjectionPromptBudgetTokens } from "./context-engine-projection-PIeLSnR-.mjs";
24
24
  import { a as buildCodexMirrorIdempotencyKey, i as buildCodexMirrorDedupeIdentity, s as hasCodexMirrorOrigin, t as applyCodexTranscriptTaint } from "./transcript-mirror-attestation-BzUXnrvv.mjs";
25
25
  import { i as resolveCodexAppServerAuthProfileIdForAgent, r as resolveCodexAppServerAuthProfileId } from "./auth-profile-auwzSwwy.mjs";
26
- import { C as getCodexInferenceThread, F as prepareCodexWorkspaceReferences, I as protectCodexAppServerLiveThread, J as recordCodexTurnForkSettings, O as ensureCodexAppServerClientRuntime, Q as resolveCodexAppServerPreparedAuthHandoff, U as readCodexRateLimitsRevision, W as readRecentCodexRateLimits, Z as resolveCodexAppServerAuthAccountCacheKey, a as createIsolatedCodexAppServerClient, ct as TURN_TERMINAL_SETTLEMENT_TIMEOUT_MS, dt as resolveCodexStartupTimeoutMs, f as releaseLeasedSharedCodexAppServerClient, ft as withCodexStartupTimeout, l as readCodexAppServerClientDesktopGenerationFingerprint, o as getLeasedSharedCodexAppServerClient, ot as CodexAppServerStartupError, p as retainSharedCodexAppServerClientIfCurrent, r as clearSharedCodexAppServerClientIfCurrentAndUnclaimed, s as getSharedCodexAppServerClient, st as TURN_FINALIZE_DRAIN_ABORT_GRACE_MS, v as CodexThreadClientReplacementError, w as getCodexInferenceThreadQualification } from "./shared-client-CkyTrNB8.mjs";
26
+ import { $ as resolveCodexAppServerAuthAccountCacheKey, C as getCodexInferenceThread, F as prepareCodexWorkspaceReferences, G as readRecentCodexRateLimits, I as protectCodexAppServerLiveThread, O as ensureCodexAppServerClientRuntime, W as readCodexRateLimitsRevision, X as recordCodexTurnForkSettings, a as createIsolatedCodexAppServerClient, ct as CodexAppServerStartupError, et as resolveCodexAppServerPreparedAuthHandoff, f as releaseLeasedSharedCodexAppServerClient, l as readCodexAppServerClientDesktopGenerationFingerprint, lt as TURN_FINALIZE_DRAIN_ABORT_GRACE_MS, mt as withCodexStartupTimeout, o as getLeasedSharedCodexAppServerClient, p as retainSharedCodexAppServerClientIfCurrent, pt as resolveCodexStartupTimeoutMs, r as clearSharedCodexAppServerClientIfCurrentAndUnclaimed, s as getSharedCodexAppServerClient, ut as TURN_TERMINAL_SETTLEMENT_TIMEOUT_MS, v as CodexThreadClientReplacementError, w as getCodexInferenceThreadQualification } from "./shared-client-B8v6e5D0.mjs";
27
27
  import { a as isCodexResponsesOAuthRun, r as isCodexResponsesOAuth } from "./responses-oauth-CCV7aVYF.mjs";
28
- import { C as createCodexElicitationResponse, D as toCodexDynamicToolProtocolResponse, E as toCodexDynamicToolProgressResponse, P as resolveCodexAppServerClientInstanceId, T as resolveDynamicToolCallTimeoutMs, a as isCodexAppServerIndeterminateTransportError, b as readCodexTurnCompletedNotification, c as CodexServerRequestResolvedError, g as assertCodexTurnStartResponse, i as isCodexAppServerIndeterminateRequestCancellationError, j as readCodexAppServerWarningMessage, r as isCodexAppServerApprovalRequest, v as readCodexDynamicToolCallParams, w as handleDynamicToolCallWithTimeout } from "./client--P8jwXvA.mjs";
28
+ import { C as createCodexElicitationResponse, D as toCodexDynamicToolProtocolResponse, E as toCodexDynamicToolProgressResponse, P as resolveCodexAppServerClientInstanceId, T as resolveDynamicToolCallTimeoutMs, a as isCodexAppServerIndeterminateTransportError, b as readCodexTurnCompletedNotification, c as CodexServerRequestResolvedError, g as assertCodexTurnStartResponse, i as isCodexAppServerIndeterminateRequestCancellationError, j as readCodexAppServerWarningMessage, r as isCodexAppServerApprovalRequest, v as readCodexDynamicToolCallParams, w as handleDynamicToolCallWithTimeout } from "./client-CPPD2q0Z.mjs";
29
29
  import { s as CODEX_APP_SERVER_OPT_OUT_NOTIFICATION_METHODS } from "./client-initialize-CjgZcX61.mjs";
30
- import { S as shouldClearTerminalPresentationForNativeItem, _ as itemName, a as isCodexNotificationForTurn, b as matchesCodexSnapshotTurn, i as CodexProjectionDiagnostics, n as getCodexAppServerTurnRouter, o as readCodexNotificationScope, s as readCodexNotificationThreadId, t as CODEX_APP_SERVER_NATIVE_TURN_WAIT_TIMEOUT_MS, x as shouldAdvancePersistableAssistantBarrier } from "./turn-router-BGj67FMK.mjs";
31
- import { d as terminateCodexBackgroundTerminals, f as unsubscribeCodexThreadBestEffort, l as retireUnsafeCodexTurnClientBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError, s as interruptCodexTurnAndWaitBestEffort, u as shouldRetireCodexStartupClient } from "./attempt-client-cleanup-DMJWXGxM.mjs";
30
+ import { S as shouldClearTerminalPresentationForNativeItem, _ as itemName, a as isCodexNotificationForTurn, b as matchesCodexSnapshotTurn, i as CodexProjectionDiagnostics, n as getCodexAppServerTurnRouter, o as readCodexNotificationScope, s as readCodexNotificationThreadId, t as CODEX_APP_SERVER_NATIVE_TURN_WAIT_TIMEOUT_MS, x as shouldAdvancePersistableAssistantBarrier } from "./turn-router-CaEj5E0i.mjs";
31
+ import { d as terminateCodexBackgroundTerminals, f as unsubscribeCodexThreadBestEffort, l as retireUnsafeCodexTurnClientBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError, s as interruptCodexTurnAndWaitBestEffort, u as shouldRetireCodexStartupClient } from "./attempt-client-cleanup-BLp6z_DD.mjs";
32
32
  import { r as prepareCodexAppServerAuthBinding } from "./auth-binding-830RLAJW.mjs";
33
33
  import { a as isRawFunctionToolOutputCompletionNotification, c as readRawResponseToolCallId, i as isCodexTurnAbortMarkerNotification, l as updateActiveTurnItemIds, o as isTerminalTurnStatus, r as completePendingOpenClawDynamicToolNotification, s as readCodexNotificationItem, t as CodexUsageProjection } from "./event-projector-usage-CBY0Hkga.mjs";
34
34
  import { d as mergeCodexThreadConfigs } from "./project-doc-thread-config-B0UI3f1D.mjs";
35
35
  import { B as resolveCodexDynamicToolsLoadingForRuntime, L as isSystemAgentOnlyCodexDynamicToolAllowlist, P as filterCodexDynamicTools, V as joinPresentSections, _ as buildDeveloperInstructions, b as codexDynamicToolsFingerprint, h as resolveCodexWebSearchPlan, k as stabilizeJsonValue, l as isCodexNativeDelegationDisabledForRun, v as areCodexDynamicToolFingerprintsCompatible, w as fingerprintJsonObject, x as codexLegacyDynamicToolsFingerprint } from "./thread-requests-BjawdIVV.mjs";
36
36
  import { i as resolveCodexSessionBinding, n as createCodexSessionGenerationSupersededError, t as clearCodexBindingForClient } from "./session-binding-BgsWcbdY.mjs";
37
37
  import { i as resolveCodexAppServerThreadModelSelection } from "./thread-model-selection-DxposL4X.mjs";
38
- import { a as resolveCodexPromptError, i as refreshCodexUsageLimitPromptError, n as formatCodexTurnStartUsageLimitError, r as markCodexAuthProfileBlockedFromRateLimits, t as CodexUsageLimitPromptError } from "./usage-limit-error-BdNbGJC3.mjs";
39
- import { c as withExclusiveCodexAppServerThread, r as retainCodexAppServerBindingSubscription, t as isSameCodexAppServerThreadOwner } from "./thread-ownership-Bmk5a2Gu.mjs";
38
+ import { a as resolveCodexPromptError, i as refreshCodexUsageLimitPromptError, n as formatCodexTurnStartUsageLimitError, r as markCodexAuthProfileBlockedFromRateLimits, t as CodexUsageLimitPromptError } from "./usage-limit-error-B0x1eymI.mjs";
39
+ import { c as withExclusiveCodexAppServerThread, r as retainCodexAppServerBindingSubscription, t as isSameCodexAppServerThreadOwner } from "./thread-ownership-DJ8PPxRc.mjs";
40
40
  import { t as persistCodexContextCompactionActivity } from "./context-compaction-activity-CMla5FPJ.mjs";
41
- import { a as CodexToolTranscriptProjection, c as asCodexToolArguments, i as emitCodexAgentEvent, l as isCodexCommandBearingToolCall, o as CodexToolProgressProjection, r as CodexEventProjection, s as shouldEmitTranscriptToolProgress, t as codexNativeSubagentMonitorRuntime, u as resolveCodexToolProgressDetailMode } from "./native-subagent-monitor-C3CIIaZG.mjs";
42
- import { a as requestPluginApprovalOutcome } from "./plugin-approval-roundtrip-CGEiG7hG.mjs";
41
+ import { a as CodexToolTranscriptProjection, c as asCodexToolArguments, i as emitCodexAgentEvent, l as isCodexCommandBearingToolCall, o as CodexToolProgressProjection, r as CodexEventProjection, s as shouldEmitTranscriptToolProgress, t as codexNativeSubagentMonitorRuntime, u as resolveCodexToolProgressDetailMode } from "./native-subagent-monitor-D1pYkirc.mjs";
42
+ import { a as requestPluginApprovalOutcome } from "./plugin-approval-roundtrip-BkiVPLuc.mjs";
43
43
  import { r as prepareCodexNativeExecutionPolicyForRun } from "./native-execution-policy-D09tLP-u.mjs";
44
- import { n as CodexThreadPolicyHandoffError, s as restoreCodexThreadInstructionsAfterCompaction } from "./thread-policy-DYtvZ5Ay.mjs";
44
+ import { n as CodexThreadPolicyHandoffError, s as restoreCodexThreadInstructionsAfterCompaction } from "./thread-policy-UldER50x.mjs";
45
45
  import { t as attemptTerminal } from "./attempt-terminal-sZutF0WY.mjs";
46
46
  import { a as runCodexAgentEndHook, c as withCodexAppServerFastModeServiceTier, i as reportCodexBackgroundCleanupFailure, n as ensureCodexWorkspaceDirOnce, o as runCodexCleanupStep, r as estimateCodexAppServerProjectedTurnTokens, s as shouldKeepCodexSharedAbortOpen, t as emitCodexAppServerEvent } from "./run-attempt-lifecycle-DN-ATDp9.mjs";
47
47
  import { t as CODEX_INFERENCE_GENERATION_KEY } from "./inference-metadata-CYFWLHVk.mjs";
48
- import "./inference-context-HRw3PDwn.mjs";
48
+ import "./inference-context-BPwyk-Op.mjs";
49
49
  import { i as createAssistantReasoningMessage, n as createAssistantCommentaryMessage, r as createAssistantMessage, t as createAssistantAsyncDelivery } from "./event-projector-assistant-message-ChOAY7rW.mjs";
50
- import { a as resolveCodexExternalSandboxPolicyForOpenClawSandbox, c as shouldEnableCodexAppServerNativeToolSurface, i as resolveCodexAppServerHookChannelId, l as shouldRequireCodexSandboxExecServerEnvironment, o as resolveCodexMessageToolProvider, p as mapCodexAppServerRemoteWorkspacePath, r as resolveCodexAppServerExecutionCwd, s as resolveCodexSandboxEnvironmentSelection, t as buildDynamicTools, u as shouldWarnCodexDynamicToolBuildStageSummary } from "./dynamic-tool-build-DOub3CB5.mjs";
51
- import { a as buildCodexNativeHookRelayDisabledConfig, d as scheduleCodexNativeHookRelayUnregister, i as buildCodexNativeHookRelayConfig, l as resolveCodexNativeHookRelayEvents, n as CodexManagedHooksOnlyError, r as assertCodexNativeHookRelayAllowed, s as createCodexNativeHookRelay, t as CODEX_NATIVE_HOOK_RELAY_TTL_GRACE_MS, u as resolveCodexNativeHookRelayTtlMs } from "./native-hook-relay-CocOW9YS.mjs";
52
- import { a as prepareCodexPluginThreadConfigStartupProvider, c as buildLegacyScheduledCodexAppRecoveryPrompt, d as resolveScheduledCodexAppCreatorCaptureDecision, i as isContextEngineBindingCompatible, l as buildScheduledCodexAppServerConnectionIdentity, n as isCodexAppServerProfilerEnabled, o as resolveCodexPluginThreadConfigStartupPolicy, r as buildContextEngineBinding, s as assertScheduledCodexAppAuthorityRuntime, t as startOrResumeThread, u as captureScheduledCodexAppAuthority } from "./thread-lifecycle-run-zCXYFW8W.mjs";
50
+ import { a as resolveCodexExternalSandboxPolicyForOpenClawSandbox, c as shouldEnableCodexAppServerNativeToolSurface, i as resolveCodexAppServerHookChannelId, l as shouldRequireCodexSandboxExecServerEnvironment, o as resolveCodexMessageToolProvider, p as mapCodexAppServerRemoteWorkspacePath, r as resolveCodexAppServerExecutionCwd, s as resolveCodexSandboxEnvironmentSelection, t as buildDynamicTools, u as shouldWarnCodexDynamicToolBuildStageSummary } from "./dynamic-tool-build-DkJpWzXt.mjs";
51
+ import { a as buildCodexNativeHookRelayDisabledConfig, d as scheduleCodexNativeHookRelayUnregister, i as buildCodexNativeHookRelayConfig, l as resolveCodexNativeHookRelayEvents, n as CodexManagedHooksOnlyError, r as assertCodexNativeHookRelayAllowed, s as createCodexNativeHookRelay, t as CODEX_NATIVE_HOOK_RELAY_TTL_GRACE_MS, u as resolveCodexNativeHookRelayTtlMs } from "./native-hook-relay-DbNYjwuC.mjs";
52
+ import { a as prepareCodexPluginThreadConfigStartupProvider, c as buildLegacyScheduledCodexAppRecoveryPrompt, d as resolveScheduledCodexAppCreatorCaptureDecision, i as isContextEngineBindingCompatible, l as buildScheduledCodexAppServerConnectionIdentity, n as isCodexAppServerProfilerEnabled, o as resolveCodexPluginThreadConfigStartupPolicy, r as buildContextEngineBinding, s as assertScheduledCodexAppAuthorityRuntime, t as startOrResumeThread, u as captureScheduledCodexAppAuthority } from "./thread-lifecycle-run-DOC2IWpW.mjs";
53
53
  import { i as resolveCodexSessionPermissionCwd, n as applyCodexSessionPermissionPolicy, r as resolveCodexEffectiveSessionPermissionPolicy } from "./session-permission-policy-CD2MAWU8.mjs";
54
- import { o as hasCodexNativeToolCatalog, s as loadCodexNativeToolCatalog } from "./native-skill-isolation-DL4-PQa4.mjs";
55
- import { r as prepareCodexNativeMcpFormResourceContext, t as createCodexNativeMcpAppResultDetailsPreparer } from "./native-mcp-app-DrQeLxXj.mjs";
56
- import { _ as invalidateCodexComputerFrame, a as handleCodexAppServerApprovalRequest, c as createCodexNativePreToolUseFailureBuffer, f as buildTurnCollaborationMode, g as buildCodexUserInput, h as readCodexRetainedBackgroundCommands, i as createCodexDynamicToolDiagnostics, l as buildCodexHistoryProvenancePrefix, m as CodexNativeProcessAuthority, n as projectCodexExecutableDynamicTools, o as ensureCodexSandboxExecServerEnvironment, p as buildTurnStartParams, r as routeCodexAppServerElicitationRequest, s as releaseCodexSandboxExecServerEnvironment, t as createCodexDynamicToolBridge, u as buildCodexParentLocalInstructions, v as createCodexRemoteWorkspaceFileReader, y as CodexNativeToolLifecycleProjector } from "./dynamic-tools-Us5mvq_N.mjs";
54
+ import { o as hasCodexNativeToolCatalog, s as loadCodexNativeToolCatalog } from "./native-skill-isolation-Cja6Nv79.mjs";
55
+ import { r as prepareCodexNativeMcpFormResourceContext, t as createCodexNativeMcpAppResultDetailsPreparer } from "./native-mcp-app-gkEJsgj2.mjs";
56
+ import { _ as invalidateCodexComputerFrame, a as handleCodexAppServerApprovalRequest, c as createCodexNativePreToolUseFailureBuffer, f as buildTurnCollaborationMode, g as buildCodexUserInput, h as readCodexRetainedBackgroundCommands, i as createCodexDynamicToolDiagnostics, l as buildCodexHistoryProvenancePrefix, m as CodexNativeProcessAuthority, n as projectCodexExecutableDynamicTools, o as ensureCodexSandboxExecServerEnvironment, p as buildTurnStartParams, r as routeCodexAppServerElicitationRequest, s as releaseCodexSandboxExecServerEnvironment, t as createCodexDynamicToolBridge, u as buildCodexParentLocalInstructions, v as createCodexRemoteWorkspaceFileReader, y as CodexNativeToolLifecycleProjector } from "./dynamic-tools-UL4DHNTh.mjs";
57
57
  import { c as promptSnapshot, i as mirrorPromptAtTurnStartBestEffort, n as createCodexAppServerUserMessagePersistenceNotifier, o as buildCodexUserPromptMessage, s as buildResolvedCodexUserPromptMessage, t as codexTranscriptMirrorRuntime } from "./transcript-mirror-CEQJZlF3.mjs";
58
58
  import { t as resolveCodexAppServerForModelProvider } from "./app-server-policy-Cog6mm2i.mjs";
59
59
  import { a as getCodexContextFileDisplayBasename, i as getCodexContextFileBasename, n as CODEX_NATIVE_PROJECT_DOC_BASENAMES, o as isNonEmptyString, r as buildCodexWorkspaceBootstrapContext, s as normalizeCodexContextFilePath } from "./attempt-workspace-context-GYPLawX6.mjs";
60
60
  import { n as captureCodexSettledTurnFinalizationContext } from "./settled-turn-context-BPL6D3RO.mjs";
61
- import { t as resolveCodexProviderWebSearchSupport } from "./provider-capabilities-C7pYYpvh.mjs";
62
- import { a as runCodexComputerUseLiveTest, i as createComputerUseRequest, t as ensureCodexComputerUse } from "./computer-use-YUnu0JVx.mjs";
61
+ import { t as resolveCodexProviderWebSearchSupport } from "./provider-capabilities-C0laqfjE.mjs";
62
+ import { a as runCodexComputerUseLiveTest, i as createComputerUseRequest, t as ensureCodexComputerUse } from "./computer-use-BFfXSTZw.mjs";
63
63
  import { asOptionalRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalString, readNonBlankString, readStringField } from "openclaw/plugin-sdk/string-coerce-runtime";
64
64
  import { createHash, randomUUID } from "node:crypto";
65
65
  import { isDeepStrictEqual } from "node:util";
@@ -1,7 +1,7 @@
1
- import { T as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-BW1YeaIk.mjs";
2
- import "./shared-client-CkyTrNB8.mjs";
3
- import { t as isSameCodexAppServerThreadOwner } from "./thread-ownership-Bmk5a2Gu.mjs";
4
- import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-C3CIIaZG.mjs";
1
+ import { T as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-aolg0chE.mjs";
2
+ import "./shared-client-B8v6e5D0.mjs";
3
+ import { t as isSameCodexAppServerThreadOwner } from "./thread-ownership-DJ8PPxRc.mjs";
4
+ import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-D1pYkirc.mjs";
5
5
  //#region extensions/codex/src/app-server/session-cancellation.ts
6
6
  /** Stop owns admitted descendants, without retiring the session or its native history. */
7
7
  async function withCodexSessionDescendantCancellation(bindingStore, params, run) {
@@ -1,11 +1,11 @@
1
1
  import { c as MAX_CWD_LENGTH, d as boundedCatalogString } from "./session-catalog-parsing-V6jyFg9g.mjs";
2
- import { n as defineCodexBuildState } from "./build-state-CjLCC0wm.mjs";
2
+ import { n as defineCodexBuildState } from "./build-state-DswWyGqI.mjs";
3
3
  import { r as inferCodexAppServerConnectionClass } from "./config-security-clxAZYWX.mjs";
4
4
  import { n as resolveCodexAppServerLocalHomeDir } from "./auth-start-options-BPIPeEX8.mjs";
5
5
  import { n as codexCatalogHomeIdFromCanonicalPath } from "./session-catalog-home-id-vlih0B_g.mjs";
6
6
  import { t as buildCodexAppServerConnectionFingerprint } from "./plugin-app-cache-key-DRb-niJc.mjs";
7
- import { a as observeCodexCatalogEphemeralThreads, n as codexCatalogSourceForClient } from "./session-catalog-source-z_mNyQdX.mjs";
8
- import { r as projectCodexCatalogNativeThread } from "./session-catalog-native-projection-BqBYi6kV.mjs";
7
+ import { a as observeCodexCatalogEphemeralThreads, n as codexCatalogSourceForClient } from "./session-catalog-source-DghHV4qB.mjs";
8
+ import { r as projectCodexCatalogNativeThread } from "./session-catalog-native-projection-CwOyRRXK.mjs";
9
9
  import { createHash } from "node:crypto";
10
10
  import { embeddedAgentLog } from "openclaw/plugin-sdk/agent-harness-registration";
11
11
  import path from "node:path";
@@ -2,11 +2,11 @@ import { S as readControlCursor, _ as normalizeLimit, c as MAX_CWD_LENGTH, d as
2
2
  import { n as detachCodexCatalogString, t as CODEX_CATALOG_MAX_ROWS } from "./session-catalog-limits-Dc6E0BZz.mjs";
3
3
  import { i as retainCodexCatalogRow, n as codexCatalogRowRecency, r as compareCodexCatalogRows, t as CodexCatalogOrdering } from "./session-catalog-index-order-0Zqng2u8.mjs";
4
4
  import { c as CodexCatalogPersistence, i as CodexCatalogAvailability, l as codexCatalogMetadataPage, r as withCodexCatalogListRequest } from "./session-catalog-list-request-CAjoWjaH.mjs";
5
- import { i as getCodexCatalogSource, s as setCodexCatalogSource } from "./session-catalog-source-z_mNyQdX.mjs";
6
- import { r as projectCodexCatalogNativeThread } from "./session-catalog-native-projection-BqBYi6kV.mjs";
7
- import { i as subscribeCodexCatalogEvents } from "./session-catalog-events-CEi6SuLQ.mjs";
5
+ import { i as getCodexCatalogSource, s as setCodexCatalogSource } from "./session-catalog-source-DghHV4qB.mjs";
6
+ import { r as projectCodexCatalogNativeThread } from "./session-catalog-native-projection-CwOyRRXK.mjs";
7
+ import { i as subscribeCodexCatalogEvents } from "./session-catalog-events-CicBG92S.mjs";
8
8
  import { a as reportCodexCatalogSpawnFailure, n as findCodexAppServerSpawnError } from "./spawn-error-CL3n6MAa.mjs";
9
- import { CodexCatalogProjectionCapacityError, CodexCatalogProjections, mergeCodexCatalogRolloutRow, n as readCodexCatalogRollout, projectCodexCatalogPage, r as resolveCodexCatalogRolloutFingerprint, t as codexCatalogRolloutLogicalPath } from "./session-catalog-projection-CNyhjZze.mjs";
9
+ import { CodexCatalogProjectionCapacityError, CodexCatalogProjections, mergeCodexCatalogRolloutRow, n as readCodexCatalogRollout, projectCodexCatalogPage, r as resolveCodexCatalogRolloutFingerprint, t as codexCatalogRolloutLogicalPath } from "./session-catalog-projection-By1iGA1y.mjs";
10
10
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
11
11
  import { createHash } from "node:crypto";
12
12
  import { isDeepStrictEqual } from "node:util";
@@ -1,7 +1,7 @@
1
1
  import { D as selectCodexCatalogPreviewInput, c as MAX_CWD_LENGTH, d as boundedCatalogString, k as truncateCodexCatalogPreview } from "./session-catalog-parsing-V6jyFg9g.mjs";
2
2
  import { r as isJsonObject } from "./protocol-CaPAVwe9.mjs";
3
3
  import { n as detachCodexCatalogString } from "./session-catalog-limits-Dc6E0BZz.mjs";
4
- import { r as copyCodexCatalogSource } from "./session-catalog-source-z_mNyQdX.mjs";
4
+ import { r as copyCodexCatalogSource } from "./session-catalog-source-DghHV4qB.mjs";
5
5
  import { t as __exportAll } from "./session-binding-sidecars-BNSS6WL4.mjs";
6
6
  import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
7
7
  //#region extensions/codex/src/session-catalog-native-projection.ts
@@ -2,7 +2,7 @@ import { D as selectCodexCatalogPreviewInput, O as toCatalogSession, S as readCo
2
2
  import { n as detachCodexCatalogString } from "./session-catalog-limits-Dc6E0BZz.mjs";
3
3
  import { n as codexCatalogRowRecency } from "./session-catalog-index-order-0Zqng2u8.mjs";
4
4
  import { t as isOpenClawManagedCodexThread } from "./session-catalog-provenance-Dg9s12z-.mjs";
5
- import { i as getCodexCatalogSource, r as copyCodexCatalogSource, s as setCodexCatalogSource } from "./session-catalog-source-z_mNyQdX.mjs";
5
+ import { i as getCodexCatalogSource, r as copyCodexCatalogSource, s as setCodexCatalogSource } from "./session-catalog-source-DghHV4qB.mjs";
6
6
  import { asFiniteNumber, isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
7
7
  import path from "node:path";
8
8
  import fs from "node:fs/promises";
@@ -1,4 +1,4 @@
1
- import { n as defineCodexBuildState } from "./build-state-CjLCC0wm.mjs";
1
+ import { n as defineCodexBuildState } from "./build-state-DswWyGqI.mjs";
2
2
  //#region extensions/codex/src/session-catalog-source.ts
3
3
  const getSources = defineCodexBuildState("openclaw.codexCatalogSources", () => ({
4
4
  clients: /* @__PURE__ */ new WeakMap(),
@@ -1,9 +1,9 @@
1
- import { T as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-BW1YeaIk.mjs";
1
+ import { T as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-aolg0chE.mjs";
2
2
  import { t as withCodexAppServerThreadMutation } from "./thread-ownership-queue-CeyYScUC.mjs";
3
- import { A as hasCodexAppServerLiveThread, N as isCodexAppServerLiveThreadClaimed, z as releaseCodexAppServerLiveThread } from "./shared-client-CkyTrNB8.mjs";
4
- import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-DMJWXGxM.mjs";
5
- import { t as isSameCodexAppServerThreadOwner } from "./thread-ownership-Bmk5a2Gu.mjs";
6
- import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-C3CIIaZG.mjs";
3
+ import { A as hasCodexAppServerLiveThread, B as releaseCodexAppServerLiveThread, N as isCodexAppServerLiveThreadClaimed } from "./shared-client-B8v6e5D0.mjs";
4
+ import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-BLp6z_DD.mjs";
5
+ import { t as isSameCodexAppServerThreadOwner } from "./thread-ownership-DJ8PPxRc.mjs";
6
+ import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-D1pYkirc.mjs";
7
7
  import { t as getCodexSessionInitializationRollback } from "./session-initialization-Dn3vveGv.mjs";
8
8
  import { isIncognitoSessionKey } from "openclaw/plugin-sdk/session-key-runtime";
9
9
  import { isNativeSessionDeletionUnresolved, wrapNativeSessionDeletionMutation } from "openclaw/plugin-sdk/agent-harness-session-runtime";
@@ -1,8 +1,8 @@
1
1
  import { i as readMirrorIdentity, n as attachCodexMirrorIdentity } from "./upstream-prompt-provenance-Ccd9MFRJ.mjs";
2
2
  import { l as readCodexMirrorSourceFingerprint, o as fingerprintCodexMirrorSourceMessage } from "./transcript-mirror-attestation-BzUXnrvv.mjs";
3
- import { Q as resolveCodexAppServerPreparedAuthHandoff } from "./shared-client-CkyTrNB8.mjs";
4
- import { d as assertCodexPassiveTurnItems } from "./client--P8jwXvA.mjs";
5
- import { runBoundedCodexAppServerTurn } from "./bounded-turn-BQkmyyjB.mjs";
3
+ import { et as resolveCodexAppServerPreparedAuthHandoff } from "./shared-client-B8v6e5D0.mjs";
4
+ import { d as assertCodexPassiveTurnItems } from "./client-CPPD2q0Z.mjs";
5
+ import { runBoundedCodexAppServerTurn } from "./bounded-turn-DJr0EXh7.mjs";
6
6
  import { t as resolveCodexLocalRuntimeAttribution } from "./local-runtime-attribution-CZz2DJ4q.mjs";
7
7
  import { t as resolveCodexBoundedTurnIsolation } from "./bounded-turn-isolation-D8CDrAVX.mjs";
8
8
  import { a as createAttributedCodexAssistantMessage } from "./event-projector-assistant-message-ChOAY7rW.mjs";
@@ -1,21 +1,21 @@
1
1
  import { r as isJsonObject } from "./protocol-CaPAVwe9.mjs";
2
- import { n as defineCodexBuildState, t as codexBuildSymbol } from "./build-state-CjLCC0wm.mjs";
2
+ import { n as defineCodexBuildState, t as codexBuildSymbol } from "./build-state-DswWyGqI.mjs";
3
3
  import { t as CODEX_APP_SERVER_AUTH_PROVIDER } from "./auth-profile-selection-Bp5PDk3W.mjs";
4
4
  import { n as isCodexAppServerProxyLaunch } from "./launch-args-DbFCehO7.mjs";
5
5
  import { a as withEphemeralCodexAuthStore, i as withClearedEnvironmentVariables, n as resolveCodexAppServerLocalHomeDir, t as resolveCodexAppServerHomeDir } from "./auth-start-options-BPIPeEX8.mjs";
6
6
  import { a as resolveCodexAppServerStartOptionsForAgent, d as readCodexEffectiveConfig, o as resolveCodexComputerUseConfig, t as codexAppServerStartOptionsKey, u as CODEX_SESSION_OVERRIDABLE_LAYER_TYPES } from "./config-options-DMFZkd3X.mjs";
7
7
  import { a as isManagedCodexDesktopCommand, b as resolveMacOSDesktopCodexBundledMarketplaceCandidates, c as readInstalledCodexAppServerStatus, f as resolveManagedCodexNativeCommand, i as assertInstalledCodexAppServerVersion, l as rejectInstalledCodexAppServer, r as INSTALLED_CODEX_START_TIMEOUT_MS, u as resolveManagedCodexAppServerStartOptions, v as resolveFirstExistingMacOSDesktopCodexBundledMarketplacePath, x as resolveMacOSDesktopCodexComputerUseServiceAppCandidates, y as resolveMacOSDesktopCodexAppPathCandidates } from "./managed-binary-DbKvGXKl.mjs";
8
- import { A as waitForUnclaimedSharedClientStartup, C as releaseSharedClientEntry, D as retireSharedCodexAppServerClientIfCurrent, E as retirePendingSharedClientEntryIfUnclaimed, M as waitForCodexDesktopGeneration, N as readCodexDesktopArtifactTreeFingerprint, S as rekeySharedClientEntry, _ as observeAcquire, a as readCodexCliAuthFileApiKey, b as recordSharedClientAcquireBoundary, c as resolveCodexAppServerPreparedApiKeyCacheKey, d as createCodexAppServerStartupLifetime, f as getCurrentSharedClientEntry, g as isSharedCodexFallbackJoinError, i as fingerprintTokenAuthProfileCacheKey, l as SharedCodexFallbackJoinError, m as getSharedCodexAppServerClientState, n as CODEX_AUTH_JSON_FILENAME, o as readFirstNonEmptyEnv, p as getOrCreateSharedClientEntry, r as fingerprintApiKeyAuthProfileCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey, t as CODEX_APP_SERVER_API_KEY_ENV_VARS, u as closeSharedClientEntryIfUnclaimed, v as observeSharedClientAcquire, w as retainSharedClientEntry, x as refreshSharedClientIdleRetirement, y as ownCodexStartup } from "./auth-cache-key-BW1YeaIk.mjs";
8
+ import { A as waitForUnclaimedSharedClientStartup, C as releaseSharedClientEntry, D as retireSharedCodexAppServerClientIfCurrent, E as retirePendingSharedClientEntryIfUnclaimed, M as waitForCodexDesktopGeneration, N as readCodexDesktopArtifactTreeFingerprint, S as rekeySharedClientEntry, _ as observeAcquire, a as readCodexCliAuthFileApiKey, b as recordSharedClientAcquireBoundary, c as resolveCodexAppServerPreparedApiKeyCacheKey, d as createCodexAppServerStartupLifetime, f as getCurrentSharedClientEntry, g as isSharedCodexFallbackJoinError, i as fingerprintTokenAuthProfileCacheKey, l as SharedCodexFallbackJoinError, m as getSharedCodexAppServerClientState, n as CODEX_AUTH_JSON_FILENAME, o as readFirstNonEmptyEnv, p as getOrCreateSharedClientEntry, r as fingerprintApiKeyAuthProfileCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey, t as CODEX_APP_SERVER_API_KEY_ENV_VARS, u as closeSharedClientEntryIfUnclaimed, v as observeSharedClientAcquire, w as retainSharedClientEntry, x as refreshSharedClientIdleRetirement, y as ownCodexStartup } from "./auth-cache-key-aolg0chE.mjs";
9
9
  import { n as resolveCodexAppServerSpawnEnv } from "./transport-stdio-Bq160Dhv.mjs";
10
10
  import { n as CodexAppServerAuthProfileUnavailableError, r as formatCodexAuthProfileUnavailableMessage } from "./auth-profile-recovery-BREezV0L.mjs";
11
11
  import { a as codexPrewriteRejectionCause } from "./rpc-error-DemqqaxE.mjs";
12
12
  import { i as withTimeout } from "./timeout-D0mEWSGG.mjs";
13
13
  import { n as readCodexSessionMeta } from "./session-catalog-provenance-Dg9s12z-.mjs";
14
- import { n as observeCodexCatalogClient } from "./session-catalog-events-CEi6SuLQ.mjs";
14
+ import { n as observeCodexCatalogClient } from "./session-catalog-events-CicBG92S.mjs";
15
15
  import { n as resolveCodexAppServerRuntimeOptions } from "./config-runtime-BZRizyuG.mjs";
16
16
  import { a as resolveCodexAppServerAuthProfileStore, i as resolveCodexAppServerAuthProfileIdForAgent, r as resolveCodexAppServerAuthProfileId, t as isCodexAppServerNativeAuthProfile } from "./auth-profile-auwzSwwy.mjs";
17
17
  import { i as isCodexResponsesOAuthCredential, n as createCodexResponsesOAuth, o as resolveCodexResponsesOAuthProfileFingerprint, r as isCodexResponsesOAuth, t as CODEX_RESPONSES_OAUTH_PROVIDER } from "./responses-oauth-CCV7aVYF.mjs";
18
- import { t as CodexAppServerClient } from "./client--P8jwXvA.mjs";
18
+ import { t as CodexAppServerClient } from "./client-CPPD2q0Z.mjs";
19
19
  import { a as isUnsupportedCodexAppServerVersionError } from "./client-initialize-CjgZcX61.mjs";
20
20
  import { n as isCodexWebSocketOpenFailure } from "./transport-websocket-0YqiI_MH.mjs";
21
21
  import { t as __exportAll } from "./session-binding-sidecars-BNSS6WL4.mjs";
@@ -1508,8 +1508,22 @@ function requireCodexThreadForkSettings(client, threadId) {
1508
1508
  }
1509
1509
  //#endregion
1510
1510
  //#region extensions/codex/src/app-server/client-thread-owner.ts
1511
- function createThreadOwnerToken(threadId, onInvalidated) {
1511
+ /** Background custody can survive projection replacement only under its creation policy. */
1512
+ function isThreadBackgroundOnly(runtime, threadId, configFingerprint) {
1513
+ if (!runtime || runtime.closed || !runtime.protectedThreads.has(threadId)) return false;
1514
+ const claim = runtime.claimedThreads.get(threadId);
1515
+ const policy = claim?.configFingerprint ?? runtime.retainedThreads.get(threadId)?.configFingerprint;
1516
+ return (!claim || claim.releaseAfterProtection !== void 0) && (configFingerprint === void 0 || policy === configFingerprint);
1517
+ }
1518
+ function isThreadClaimed(runtime, threadId) {
1519
+ return Boolean(runtime && !runtime.closed && runtime.claimedThreads.has(threadId));
1520
+ }
1521
+ function isThreadProtected(runtime, threadId) {
1522
+ return Boolean(runtime && !runtime.closed && runtime.protectedThreads.has(threadId));
1523
+ }
1524
+ function createThreadOwnerToken(threadId, onInvalidated, configFingerprint) {
1512
1525
  const owner = {
1526
+ configFingerprint,
1513
1527
  invalidated: false,
1514
1528
  invalidate: () => {
1515
1529
  if (owner.invalidated) return;
@@ -2003,7 +2017,7 @@ async function claimCodexAppServerLiveThread(client, threadId, onInvalidated) {
2003
2017
  function claimCodexAppServerThreadOwnership(client, runtime, threadId, retained, onInvalidated) {
2004
2018
  const previousClaim = runtime.claimedThreads.get(threadId);
2005
2019
  runtime.retainedThreads.delete(threadId);
2006
- const claimed = createThreadOwnerToken(threadId, onInvalidated);
2020
+ const claimed = createThreadOwnerToken(threadId, onInvalidated, retained.configFingerprint);
2007
2021
  runtime.claimedThreads.set(threadId, claimed);
2008
2022
  previousClaim?.invalidate();
2009
2023
  retained.ownerToken?.invalidate();
@@ -2088,13 +2102,14 @@ function hasCodexAppServerLiveThread(client, threadId) {
2088
2102
  return hasThreadOwnership(configuredClients.get(client), threadId);
2089
2103
  }
2090
2104
  function isCodexAppServerLiveThreadClaimed(client, threadId) {
2091
- const runtime = configuredClients.get(client);
2092
- return runtime !== void 0 && !runtime.closed && runtime.claimedThreads.has(threadId);
2105
+ return isThreadClaimed(configuredClients.get(client), threadId);
2106
+ }
2107
+ function readCodexAppServerThreadOwnershipState(client) {
2108
+ return configuredClients.get(client);
2093
2109
  }
2094
2110
  /** Native commands and children can still need an otherwise-idle subscription. */
2095
2111
  function isCodexAppServerLiveThreadProtected(client, threadId) {
2096
- const runtime = configuredClients.get(client);
2097
- return runtime !== void 0 && !runtime.closed && runtime.protectedThreads.has(threadId);
2112
+ return isThreadProtected(configuredClients.get(client), threadId);
2098
2113
  }
2099
2114
  function hasCodexAppServerSiblingThreadWork(client, threadId) {
2100
2115
  return hasSiblingThreadWork(configuredClients.get(client), threadId);
@@ -2444,8 +2459,8 @@ async function prepareCodexInferenceRoute(params) {
2444
2459
  throw new Error("Codex inference route limit reached; start a fresh managed native connection before retrying.");
2445
2460
  }
2446
2461
  pending = Promise.all([
2447
- import("./inference-proxy-CiLbHMLf.mjs"),
2448
- import("./native-subagent-monitor-C3CIIaZG.mjs").then((n) => n.n),
2462
+ import("./inference-proxy-iJoMVyEy.mjs"),
2463
+ import("./native-subagent-monitor-D1pYkirc.mjs").then((n) => n.n),
2449
2464
  import("./inference-dispatch-C2zVSnrr.mjs")
2450
2465
  ]).then(([{ createCodexInferenceProxy }, native, { createCodexInferenceModelBinding }]) => {
2451
2466
  assertClient();
@@ -3378,4 +3393,4 @@ function clearSharedCodexAppServerClientIfCurrentAndUnclaimed(client) {
3378
3393
  };
3379
3394
  }
3380
3395
  //#endregion
3381
- export { resolveBundledComputerUseMarketplacePath as $, hasCodexAppServerLiveThread as A, retainCodexAppServerLiveThread as B, getCodexInferenceThread as C, consumeCodexAppServerLiveThread as D, claimCodexAppServerLiveThread as E, prepareCodexWorkspaceReferences as F, rememberCodexRateLimitsRead as G, unsubscribeCodexAppServerLiveThread as H, protectCodexAppServerLiveThread as I, recordCodexTurnForkSettings as J, createCodexEphemeralThreadPolicy as K, readCodexClientSessionMeta as L, isCodexAppServerClientRuntimeLive as M, isCodexAppServerLiveThreadClaimed as N, ensureCodexAppServerClientRuntime as O, isCodexAppServerLiveThreadProtected as P, resolveCodexAppServerPreparedAuthHandoff as Q, readCodexLiveThreadEphemeralPolicy as R, bindCodexInferenceThread as S, prepareCodexInferenceThreadConfig as T, readCodexRateLimitsRevision as U, revertCodexAppServerLiveThreadInstructions as V, readRecentCodexRateLimits as W, reconcileCodexComputerUseStartArtifacts as X, requireCodexThreadForkSettings as Y, resolveCodexAppServerAuthAccountCacheKey as Z, CodexThreadBindingConflictError as _, createIsolatedCodexAppServerClient as a, assertNotSymlink as at, nativeHookRelayUnregisterQueue as b, readCodexAppServerClientDesktopGeneration as c, TURN_TERMINAL_SETTLEMENT_TIMEOUT_MS as ct, releaseCodexAppServerClientLease as d, resolveCodexStartupTimeoutMs as dt, resolveClientManagedBundledMarketplacePath as et, releaseLeasedSharedCodexAppServerClient as f, withCodexStartupTimeout as ft, CodexAdoptedThreadActiveError as g, withCodexAppServerClientRequestScope as h, clearSharedCodexAppServerClientIfCurrentAndWait as i, ensureCodexComputerUseSharedPluginCache as it, hasCodexAppServerSiblingThreadWork as j, forgetCodexWorkspaceReferences as k, readCodexAppServerClientDesktopGenerationFingerprint as l, isCodexAppServerStartupError as lt, shared_client_exports as m, captureSharedCodexAppServerCatalogLifetime as n, isLegacyCodexComputerUsePluginDisabled as nt, getLeasedSharedCodexAppServerClient as o, CodexAppServerStartupError as ot, retainSharedCodexAppServerClientIfCurrent as p, recordCodexThreadForkSettings as q, clearSharedCodexAppServerClientIfCurrentAndUnclaimed as r, resolveManagedCodexComputerUseConfig as rt, getSharedCodexAppServerClient as s, TURN_FINALIZE_DRAIN_ABORT_GRACE_MS as st, captureCodexAppServerClientLifetime as t, hasLegacyCodexComputerUseMcpPolicy as tt, readCodexAppServerClientProcessIdentity as u, resolveCodexGatewayTimeoutWithGraceMs as ut, CodexThreadClientReplacementError as v, getCodexInferenceThreadQualification as w, assertCodexInferenceRouteConfig as x, CodexThreadStartRequestError as y, releaseCodexAppServerLiveThread as z };
3396
+ export { resolveCodexAppServerAuthAccountCacheKey as $, hasCodexAppServerLiveThread as A, releaseCodexAppServerLiveThread as B, getCodexInferenceThread as C, consumeCodexAppServerLiveThread as D, claimCodexAppServerLiveThread as E, prepareCodexWorkspaceReferences as F, readRecentCodexRateLimits as G, revertCodexAppServerLiveThreadInstructions as H, protectCodexAppServerLiveThread as I, isThreadBackgroundOnly as J, rememberCodexRateLimitsRead as K, readCodexAppServerThreadOwnershipState as L, isCodexAppServerClientRuntimeLive as M, isCodexAppServerLiveThreadClaimed as N, ensureCodexAppServerClientRuntime as O, isCodexAppServerLiveThreadProtected as P, reconcileCodexComputerUseStartArtifacts as Q, readCodexClientSessionMeta as R, bindCodexInferenceThread as S, prepareCodexInferenceThreadConfig as T, unsubscribeCodexAppServerLiveThread as U, retainCodexAppServerLiveThread as V, readCodexRateLimitsRevision as W, recordCodexTurnForkSettings as X, recordCodexThreadForkSettings as Y, requireCodexThreadForkSettings as Z, CodexThreadBindingConflictError as _, createIsolatedCodexAppServerClient as a, resolveManagedCodexComputerUseConfig as at, nativeHookRelayUnregisterQueue as b, readCodexAppServerClientDesktopGeneration as c, CodexAppServerStartupError as ct, releaseCodexAppServerClientLease as d, isCodexAppServerStartupError as dt, resolveCodexAppServerPreparedAuthHandoff as et, releaseLeasedSharedCodexAppServerClient as f, resolveCodexGatewayTimeoutWithGraceMs as ft, CodexAdoptedThreadActiveError as g, withCodexAppServerClientRequestScope as h, clearSharedCodexAppServerClientIfCurrentAndWait as i, isLegacyCodexComputerUsePluginDisabled as it, hasCodexAppServerSiblingThreadWork as j, forgetCodexWorkspaceReferences as k, readCodexAppServerClientDesktopGenerationFingerprint as l, TURN_FINALIZE_DRAIN_ABORT_GRACE_MS as lt, shared_client_exports as m, withCodexStartupTimeout as mt, captureSharedCodexAppServerCatalogLifetime as n, resolveClientManagedBundledMarketplacePath as nt, getLeasedSharedCodexAppServerClient as o, ensureCodexComputerUseSharedPluginCache as ot, retainSharedCodexAppServerClientIfCurrent as p, resolveCodexStartupTimeoutMs as pt, createCodexEphemeralThreadPolicy as q, clearSharedCodexAppServerClientIfCurrentAndUnclaimed as r, hasLegacyCodexComputerUseMcpPolicy as rt, getSharedCodexAppServerClient as s, assertNotSymlink as st, captureCodexAppServerClientLifetime as t, resolveBundledComputerUseMarketplacePath as tt, readCodexAppServerClientProcessIdentity as u, TURN_TERMINAL_SETTLEMENT_TIMEOUT_MS as ut, CodexThreadClientReplacementError as v, getCodexInferenceThreadQualification as w, assertCodexInferenceRouteConfig as x, CodexThreadStartRequestError as y, readCodexLiveThreadEphemeralPolicy as z };
@@ -3,34 +3,34 @@ import { g as sessionBindingIdentity } from "./session-binding-record-C_THntMe.m
3
3
  import { c as withMcpElicitationsApprovalPolicy, d as readCodexRequirementsToml, n as hasCodexMcpToolApprovalOverrides, s as shouldAutoApproveCodexAppServerApprovals } from "./config-security-clxAZYWX.mjs";
4
4
  import { c as isCodexPairedNodeRemoteExecPlacementSandbox, d as readCodexPluginConfig, l as isCodexRemoteExecPlacementSandbox, u as isCodexSandboxExecServerEnabled } from "./config-parsing-DsWSCPHO.mjs";
5
5
  import { i as resolveCodexAppServerHomeScope, l as resolveCodexModelBackedReviewerPolicyContext } from "./config-options-DMFZkd3X.mjs";
6
- import { T as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-BW1YeaIk.mjs";
6
+ import { T as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-aolg0chE.mjs";
7
7
  import { n as formatCodexUsageLimitErrorMessage } from "./rate-limits-BpfURnuy.mjs";
8
8
  import { c as isMissingCodexParentThreadError } from "./rpc-error-DemqqaxE.mjs";
9
9
  import { i as resolveCodexBindingAppServerConnection, r as requireCodexSupervisionModelSelection } from "./binding-connection-GTgUj9pi.mjs";
10
10
  import { n as canUseCodexModelBackedApprovalsReviewerForModel, r as resolveOpenClawExecPolicyForCodexAppServer } from "./config-BfrAlTMT.mjs";
11
- import { C as getCodexInferenceThread, Q as resolveCodexAppServerPreparedAuthHandoff, W as readRecentCodexRateLimits, Y as requireCodexThreadForkSettings, d as releaseCodexAppServerClientLease, h as withCodexAppServerClientRequestScope, o as getLeasedSharedCodexAppServerClient, w as getCodexInferenceThreadQualification } from "./shared-client-CkyTrNB8.mjs";
12
- import { C as createCodexElicitationResponse, D as toCodexDynamicToolProtocolResponse, O as resolveCodexToolAbortTerminalReason, T as resolveDynamicToolCallTimeoutMs, g as assertCodexTurnStartResponse, i as isCodexAppServerIndeterminateRequestCancellationError, p as assertCodexThreadForkResponse, r as isCodexAppServerApprovalRequest, v as readCodexDynamicToolCallParams, w as handleDynamicToolCallWithTimeout } from "./client--P8jwXvA.mjs";
13
- import { d as terminateCodexBackgroundTerminals, f as unsubscribeCodexThreadBestEffort, l as retireUnsafeCodexTurnClientBestEffort, s as interruptCodexTurnAndWaitBestEffort } from "./attempt-client-cleanup-DMJWXGxM.mjs";
14
- import { t as CodexEphemeralTurn } from "./ephemeral-turn-B2z0RIeF.mjs";
11
+ import { C as getCodexInferenceThread, G as readRecentCodexRateLimits, Z as requireCodexThreadForkSettings, d as releaseCodexAppServerClientLease, et as resolveCodexAppServerPreparedAuthHandoff, h as withCodexAppServerClientRequestScope, o as getLeasedSharedCodexAppServerClient, w as getCodexInferenceThreadQualification } from "./shared-client-B8v6e5D0.mjs";
12
+ import { C as createCodexElicitationResponse, D as toCodexDynamicToolProtocolResponse, O as resolveCodexToolAbortTerminalReason, T as resolveDynamicToolCallTimeoutMs, g as assertCodexTurnStartResponse, i as isCodexAppServerIndeterminateRequestCancellationError, p as assertCodexThreadForkResponse, r as isCodexAppServerApprovalRequest, v as readCodexDynamicToolCallParams, w as handleDynamicToolCallWithTimeout } from "./client-CPPD2q0Z.mjs";
13
+ import { d as terminateCodexBackgroundTerminals, f as unsubscribeCodexThreadBestEffort, l as retireUnsafeCodexTurnClientBestEffort, s as interruptCodexTurnAndWaitBestEffort } from "./attempt-client-cleanup-BLp6z_DD.mjs";
14
+ import { t as CodexEphemeralTurn } from "./ephemeral-turn-C9iVxYQi.mjs";
15
15
  import { d as mergeCodexThreadConfigs, f as refreshCodexPluginAppApprovalPolicy } from "./project-doc-thread-config-B0UI3f1D.mjs";
16
16
  import { n as resolveCodexAppServerReasoningEffort, t as readCodexSupportedReasoningEfforts } from "./reasoning-effort-CS9kKWB9.mjs";
17
17
  import { h as resolveCodexWebSearchPlan, r as buildCodexRuntimeThreadConfig, z as resolveCodexDynamicToolsLoading } from "./thread-requests-BjawdIVV.mjs";
18
18
  import { i as resolveCodexSessionBinding } from "./session-binding-BgsWcbdY.mjs";
19
19
  import { i as resolveCodexAppServerThreadModelSelection, t as CODEX_NATIVE_PERSONALITY_NONE } from "./thread-model-selection-DxposL4X.mjs";
20
- import { t as isSameCodexAppServerThreadOwner } from "./thread-ownership-Bmk5a2Gu.mjs";
21
- import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-C3CIIaZG.mjs";
20
+ import { t as isSameCodexAppServerThreadOwner } from "./thread-ownership-DJ8PPxRc.mjs";
21
+ import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-D1pYkirc.mjs";
22
22
  import { r as prepareCodexNativeExecutionPolicyForRun } from "./native-execution-policy-D09tLP-u.mjs";
23
23
  import { i as resolveCodexNativeExecutionBlock } from "./sandbox-guard-DneAfNye.mjs";
24
- import { i as assertCodexSupervisionThreadLineage, n as CodexThreadPolicyHandoffError, o as refreshCodexThreadPolicy } from "./thread-policy-DYtvZ5Ay.mjs";
24
+ import { i as assertCodexSupervisionThreadLineage, n as CodexThreadPolicyHandoffError, o as refreshCodexThreadPolicy } from "./thread-policy-UldER50x.mjs";
25
25
  import { o as runCodexCleanupStep } from "./run-attempt-lifecycle-DN-ATDp9.mjs";
26
26
  import { t as CODEX_INFERENCE_GENERATION_KEY } from "./inference-metadata-CYFWLHVk.mjs";
27
- import "./inference-context-HRw3PDwn.mjs";
28
- import { a as resolveCodexExternalSandboxPolicyForOpenClawSandbox, c as shouldEnableCodexAppServerNativeToolSurface, l as shouldRequireCodexSandboxExecServerEnvironment, o as resolveCodexMessageToolProvider, s as resolveCodexSandboxEnvironmentSelection, t as buildDynamicTools } from "./dynamic-tool-build-DOub3CB5.mjs";
29
- import { a as buildCodexNativeHookRelayDisabledConfig, i as buildCodexNativeHookRelayConfig, l as resolveCodexNativeHookRelayEvents, r as assertCodexNativeHookRelayAllowed, u as resolveCodexNativeHookRelayTtlMs } from "./native-hook-relay-CocOW9YS.mjs";
27
+ import "./inference-context-BPwyk-Op.mjs";
28
+ import { a as resolveCodexExternalSandboxPolicyForOpenClawSandbox, c as shouldEnableCodexAppServerNativeToolSurface, l as shouldRequireCodexSandboxExecServerEnvironment, o as resolveCodexMessageToolProvider, s as resolveCodexSandboxEnvironmentSelection, t as buildDynamicTools } from "./dynamic-tool-build-DkJpWzXt.mjs";
29
+ import { a as buildCodexNativeHookRelayDisabledConfig, i as buildCodexNativeHookRelayConfig, l as resolveCodexNativeHookRelayEvents, r as assertCodexNativeHookRelayAllowed, u as resolveCodexNativeHookRelayTtlMs } from "./native-hook-relay-DbNYjwuC.mjs";
30
30
  import { i as resolveCodexSessionPermissionCwd, n as applyCodexSessionPermissionPolicy, r as resolveCodexEffectiveSessionPermissionPolicy, t as CODEX_SESSION_PERMISSION_EXEC_MODES } from "./session-permission-policy-CD2MAWU8.mjs";
31
- import { a as handleCodexAppServerApprovalRequest, c as createCodexNativePreToolUseFailureBuffer, d as buildCodexTemporalAdditionalContext, g as buildCodexUserInput, i as createCodexDynamicToolDiagnostics, o as ensureCodexSandboxExecServerEnvironment, r as routeCodexAppServerElicitationRequest, s as releaseCodexSandboxExecServerEnvironment, t as createCodexDynamicToolBridge, y as CodexNativeToolLifecycleProjector } from "./dynamic-tools-Us5mvq_N.mjs";
31
+ import { a as handleCodexAppServerApprovalRequest, c as createCodexNativePreToolUseFailureBuffer, d as buildCodexTemporalAdditionalContext, g as buildCodexUserInput, i as createCodexDynamicToolDiagnostics, o as ensureCodexSandboxExecServerEnvironment, r as routeCodexAppServerElicitationRequest, s as releaseCodexSandboxExecServerEnvironment, t as createCodexDynamicToolBridge, y as CodexNativeToolLifecycleProjector } from "./dynamic-tools-UL4DHNTh.mjs";
32
32
  import { t as resolveCodexAppServerForModelProvider } from "./app-server-policy-Cog6mm2i.mjs";
33
- import { n as resolveCodexProviderWebSearchSupportForClient } from "./provider-capabilities-C7pYYpvh.mjs";
33
+ import { n as resolveCodexProviderWebSearchSupportForClient } from "./provider-capabilities-C0laqfjE.mjs";
34
34
  import { readStringField } from "openclaw/plugin-sdk/string-coerce-runtime";
35
35
  import { randomUUID } from "node:crypto";
36
36
  import { isDeepStrictEqual } from "node:util";
@@ -1,5 +1,5 @@
1
1
  import { a as defaultCodexAppInventoryCache, r as buildCodexPluginAppCacheKey } from "./plugin-app-cache-key-DRb-niJc.mjs";
2
- import { a as withCodexAppServerJsonClient } from "./request-C6U8q2uz.mjs";
2
+ import { a as withCodexAppServerJsonClient } from "./request-DbU7VQMs.mjs";
3
3
  import { a as marketplaceRef, o as pluginReadParams, r as isOpenAiCuratedMarketplaceName, u as CODEX_PLUGINS_MARKETPLACE_NAME } from "./plugin-inventory-DE9wcaeH.mjs";
4
4
  import "./config-BfrAlTMT.mjs";
5
5
  import { t as __exportAll } from "./session-binding-sidecars-BNSS6WL4.mjs";