@openclaw/codex 2026.10.1-beta.2 → 2026.10.1

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-DGqFpAud.mjs → account-usage-runtime-B7Vg4rmy.mjs} +1 -1
  2. package/dist/.setup/{apply-CXTudl9p.mjs → apply-BzlIkqSz.mjs} +4 -4
  3. package/dist/.setup/{attempt-client-cleanup-BH0hW2xU.mjs → attempt-client-cleanup-HXQxfMc1.mjs} +4 -4
  4. package/dist/.setup/{attempt-workspace-context-BY0jprWJ.mjs → attempt-workspace-context-BmCutoyg.mjs} +1 -1
  5. package/dist/.setup/{auth-cache-key-CGm0UJOr.mjs → auth-cache-key-BCCQHWdc.mjs} +1 -1
  6. package/dist/.setup/{bounded-turn-pGsfXcmH.mjs → bounded-turn-Cv4uIEzz.mjs} +9 -9
  7. package/dist/.setup/{build-state-CqQnsg7T.mjs → build-state-BwxNfFEB.mjs} +1 -1
  8. package/dist/.setup/{client-C8lgBOoO.mjs → client-BIRVBXXb.mjs} +2 -2
  9. package/dist/.setup/{client-catalog-response-Bqp7WG51.mjs → client-catalog-response-BNFDYAKh.mjs} +1 -1
  10. package/dist/.setup/{command-dispatch-DhBbFIQ5.mjs → command-dispatch-D3_ypl-R.mjs} +1 -1
  11. package/dist/.setup/{command-handlers-ztOOzm6O.mjs → command-handlers-KPit4G0p.mjs} +11 -11
  12. package/dist/.setup/{command-rpc-CuC5fPom.mjs → command-rpc-CmQDOxY9.mjs} +6 -6
  13. package/dist/.setup/{compact-tUb9AYfH.mjs → compact-CLLteFIY.mjs} +9 -9
  14. package/dist/.setup/{computer-use-BBN9y326.mjs → computer-use-BVxocZZc.mjs} +4 -4
  15. package/dist/.setup/{conversation-binding-B3MNMVzb.mjs → conversation-binding-DJ_288rC.mjs} +10 -10
  16. package/dist/.setup/{conversation-control-CYsMlCuE.mjs → conversation-control-CuiZ_pDL.mjs} +2 -2
  17. package/dist/.setup/{dynamic-tool-build-C8xGEXmR.mjs → dynamic-tool-build-DgWZMfAQ.mjs} +2 -2
  18. package/dist/.setup/{dynamic-tools-DyERJnR6.mjs → dynamic-tools-Ct6GKAFr.mjs} +6 -6
  19. package/dist/.setup/{effective-mcp-catalog-C26Mio5l.mjs → effective-mcp-catalog-DmCSc8TS.mjs} +4 -4
  20. package/dist/.setup/{ephemeral-turn-D8VcDTNo.mjs → ephemeral-turn-_cBMKCFb.mjs} +2 -2
  21. package/dist/.setup/{event-projector-assistant-message-BN7CNUB5.mjs → event-projector-assistant-message-C3Tpt370.mjs} +1 -1
  22. package/dist/.setup/{isolated-completion-C0jrcplS.mjs → isolated-completion-CjrQEeke.mjs} +4 -4
  23. package/dist/.setup/{mcp-app-session-preparation-BxN0_CYe.mjs → mcp-app-session-preparation-D0yRoreX.mjs} +5 -5
  24. package/dist/.setup/{model-catalog-DZyNeDKG.mjs → model-catalog--G4arndd.mjs} +3 -3
  25. package/dist/.setup/{models-DSseKSMg.mjs → models-BYbLQPnj.mjs} +3 -3
  26. package/dist/.setup/{native-mcp-app-CqcPVmhH.mjs → native-mcp-app-5i5eRCwO.mjs} +4 -4
  27. package/dist/.setup/{native-subagent-monitor-BUYOUp9X.mjs → native-subagent-monitor-B2C8D_N0.mjs} +6 -6
  28. package/dist/.setup/{plan-BJ37d2Og.mjs → plan-B5bDIEuQ.mjs} +2 -2
  29. package/dist/.setup/{plugin-approval-roundtrip-CuahdPLC.mjs → plugin-approval-roundtrip-C_SGp5YW.mjs} +1 -1
  30. package/dist/.setup/{plugin-thread-config-deadline-B8LGaZNW.mjs → plugin-thread-config-deadline-CsScGgrk.mjs} +3 -3
  31. package/dist/.setup/{provider-BnwHVD_z.mjs → provider-BoIby-eX.mjs} +4 -4
  32. package/dist/.setup/{provider-capabilities-D68Whix6.mjs → provider-capabilities-B4yq6UgQ.mjs} +1 -1
  33. package/dist/.setup/{request-jSbhc1sg.mjs → request-DD3u22uv.mjs} +1 -1
  34. package/dist/.setup/{run-attempt-BLDZeYLD.mjs → run-attempt-DOVF5OON.mjs} +33 -23
  35. package/dist/.setup/{session-catalog-events-Bdjw9HEn.mjs → session-catalog-events-DRaivXvC.mjs} +2 -2
  36. package/dist/.setup/{session-catalog-index-DufISKJ6.mjs → session-catalog-index-qwmgqC4t.mjs} +3 -3
  37. package/dist/.setup/{session-catalog-native-projection-D6IiLtMb.mjs → session-catalog-native-projection-z9Q608QW.mjs} +1 -1
  38. package/dist/.setup/{session-catalog-projection-8aHNwzWD.mjs → session-catalog-projection-Cl0Nc7c6.mjs} +1 -1
  39. package/dist/.setup/{session-retirement-Czbchv_O.mjs → session-retirement-Bt3b0fpe.mjs} +5 -5
  40. package/dist/.setup/{settled-turn-finalizer-DjZsIwbZ.mjs → settled-turn-finalizer-e_24O6HA.mjs} +5 -5
  41. package/dist/.setup/{shared-client-qhyYWbew.mjs → shared-client-DeenOD8U.mjs} +5 -5
  42. package/dist/.setup/{shell-dynamic-tools-D3Brj3g9.mjs → shell-dynamic-tools-BqGszXcq.mjs} +1 -1
  43. package/dist/.setup/{side-question-D3NJlgbl.mjs → side-question-BZHn_1Jm.mjs} +10 -10
  44. package/dist/.setup/{source-BYu0T780.mjs → source-0ClinBHI.mjs} +1 -1
  45. package/dist/.setup/{thread-lifecycle-Cbz_7ySv.mjs → thread-lifecycle-CoqYpbpk.mjs} +9 -9
  46. package/dist/.setup/{thread-ownership-DwuSrt3s.mjs → thread-ownership-CSDZ6mHd.mjs} +3 -3
  47. package/dist/.setup/{thread-policy-DoNxbhqt.mjs → thread-policy-DCC9lQjC.mjs} +3 -3
  48. package/dist/.setup/{thread-requests-CL1e8Wmx.mjs → thread-requests-Dwg2b4Xl.mjs} +4 -4
  49. package/dist/.setup/{thread-resume-BT6NHMkM.mjs → thread-resume--WOKWxZd.mjs} +4 -4
  50. package/dist/.setup/{turn-router-sS69wYnI.mjs → turn-router-BWhX_SBh.mjs} +1 -1
  51. package/dist/.setup/{upstream-session-fork-ChSld66u.mjs → upstream-session-fork-BQvofnk7.mjs} +9 -9
  52. package/dist/.setup/{usage-D8e8Xiqf.mjs → usage-BEHcVwcZ.mjs} +1 -1
  53. package/dist/.setup/{usage-limit-error-GbT-5NcW.mjs → usage-limit-error-D1p3nE6n.mjs} +1 -1
  54. package/dist/.setup/{web-search-provider.runtime-dL2GD1Kl.mjs → web-search-provider.runtime-CV9oiB-v.mjs} +3 -3
  55. package/dist/catalog-page.worker.js +1 -1
  56. package/dist/harness.js +15 -15
  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 +5 -5
@@ -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-BYu0T780.mjs").then((n) => n.a);
14
+ const { discoverCodexSource, hasCodexSource } = await import("./source-0ClinBHI.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-BJ37d2Og.mjs");
32
+ const { buildCodexMigrationPlan } = await import("./plan-B5bDIEuQ.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-CXTudl9p.mjs").then(({ prepareTargetCodexAppServer }) => prepareTargetCodexAppServer(ctx));
38
+ return import("./apply-BzlIkqSz.mjs").then(({ prepareTargetCodexAppServer }) => prepareTargetCodexAppServer(ctx));
39
39
  },
40
40
  async apply(ctx, plan) {
41
- const { applyCodexMigrationPlan } = await import("./apply-CXTudl9p.mjs");
41
+ const { applyCodexMigrationPlan } = await import("./apply-BzlIkqSz.mjs");
42
42
  return await applyCodexMigrationPlan({
43
43
  ctx,
44
44
  plan,
@@ -1,4 +1,4 @@
1
- import { h as releaseLeasedSharedCodexAppServerClient } from "./shared-client-qhyYWbew.mjs";
1
+ import { h as releaseLeasedSharedCodexAppServerClient } from "./shared-client-DeenOD8U.mjs";
2
2
  //#region extensions/codex/src/app-server/provider-capabilities.ts
3
3
  function resolveOverriddenProviderWebSearchSupport(modelProviderOverride) {
4
4
  const provider = modelProviderOverride?.trim().toLowerCase();
@@ -316,7 +316,7 @@ async function withCodexAppServerJsonClient(params, run) {
316
316
  timeoutMessage,
317
317
  promise: (async () => {
318
318
  const { resolveCodexAppServerDirectSandboxBypassBlock } = await import("./sandbox-guard-WqE8yPge.mjs").then((n) => n.r);
319
- const { createIsolatedCodexAppServerClient, getLeasedSharedCodexAppServerClient, isCodexAppServerStartSelectionChangedError, releaseLeasedSharedCodexAppServerClient, retireSharedCodexAppServerClientIfCurrent } = await import("./shared-client-qhyYWbew.mjs").then((n) => n.v);
319
+ const { createIsolatedCodexAppServerClient, getLeasedSharedCodexAppServerClient, isCodexAppServerStartSelectionChangedError, releaseLeasedSharedCodexAppServerClient, retireSharedCodexAppServerClientIfCurrent } = await import("./shared-client-DeenOD8U.mjs").then((n) => n.v);
320
320
  for (let attempt = 0; attempt < 2; attempt += 1) {
321
321
  errorPhase = void 0;
322
322
  setPhase("prepare");
@@ -2,13 +2,13 @@ import { n as readCodexRuntimeModelId } from "./model-runtime-BdqzOMkU.mjs";
2
2
  import { g as createCodexNativeSubagentHistoryOwner } from "./native-subagent-pending-assignments-BDqhOdJp.mjs";
3
3
  import { i as isJsonObject, r as flattenCodexDynamicToolFunctions } from "./protocol-CANUwXJ3.mjs";
4
4
  import { i as matchesCodexNativeSubagentSubmissionBinding, m as sessionBindingIdentity, n as assertCodexBindingMayBeReplaced } from "./session-binding-record-BZB8RgcF.mjs";
5
- import { n as defineCodexBuildState } from "./build-state-CqQnsg7T.mjs";
5
+ import { n as defineCodexBuildState } from "./build-state-BwxNfFEB.mjs";
6
6
  import { c as shouldAutoApproveCodexAppServerApprovals, f as readCodexRequirementsToml, l as withMcpElicitationsApprovalPolicy, n as hasCodexMcpToolApprovalOverrides } from "./config-security-KAPScztc.mjs";
7
7
  import { c as isCodexPairedNodeRemoteExecPlacementSandbox, d as readCodexPluginConfig, f as resolveCodexPluginsPolicy, l as isCodexRemoteExecPlacementSandbox, u as isCodexSandboxExecServerEnabled } from "./config-parsing-BQq-CHTF.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-HG_Rr3W_.mjs";
11
- import { c as resolveCodexAppServerPreparedApiKeyCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey, w as retireSharedCodexAppServerClientIfCurrent } from "./auth-cache-key-CGm0UJOr.mjs";
11
+ import { c as resolveCodexAppServerPreparedApiKeyCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey, w as retireSharedCodexAppServerClientIfCurrent } from "./auth-cache-key-BCCQHWdc.mjs";
12
12
  import { o as formatCodexDisplayText } from "./command-formatters-DV3DHhdr.mjs";
13
13
  import { a as codexPrewriteRejectionCause, i as CodexAppServerScopedRequestRejectedError, r as CodexAppServerRpcError } from "./rpc-error-hmWM21RB.mjs";
14
14
  import { n as waitForPromiseOrAbort } from "./timeout-CXOfNoaX.mjs";
@@ -17,46 +17,46 @@ import { i as readCodexProviderRefusal, n as extractRawAssistantText, o as readI
17
17
  import { r as readMirrorIdentity, t as attachCodexMirrorIdentity } from "./upstream-prompt-provenance-fXkKbPVC.mjs";
18
18
  import { n as buildCodexAppServerRuntimeFingerprint, r as buildCodexPluginAppCacheKey } from "./plugin-app-cache-key-BW8rd98k.mjs";
19
19
  import { i as resolveCodexBindingAppServerConnection, r as requireCodexSupervisionModelSelection, t as assertCodexSessionRuntimeOwnership } from "./binding-connection-C-08ez1w.mjs";
20
- import { n as requestCodexAppServerClientJson } from "./request-jSbhc1sg.mjs";
20
+ import { n as requestCodexAppServerClientJson } from "./request-DD3u22uv.mjs";
21
21
  import { n as canUseCodexModelBackedApprovalsReviewerForModel, r as resolveOpenClawExecPolicyForCodexAppServer } from "./config-0Gxk3_eq.mjs";
22
22
  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-CsgYSQhW.mjs";
23
23
  import { o as hasCodexMirrorOrigin, t as applyCodexTranscriptTaint } from "./transcript-mirror-attestation-YSegaktH.mjs";
24
24
  import { t as readCodexMirroredSessionHistoryMessages } from "./session-history-BogBHKLk.mjs";
25
25
  import { i as resolveCodexAppServerAuthProfileIdForAgent, r as resolveCodexAppServerAuthProfileId } from "./auth-profile-CgHQ8Vot.mjs";
26
- import { E as isCodexContextRestartSelectionChangedError, H as prepareCodexWorkspaceReferences, I as ensureCodexAppServerClientRuntime, M as getCodexInferenceThreadQualification, U as protectCodexAppServerLiveThread, X as readRecentCodexRateLimits, Y as readCodexRateLimitsRevision, _ as retainSharedCodexAppServerClientIfCurrent, a as clearSharedCodexAppServerClientIfCurrentAndUnclaimed, c as getLeasedSharedCodexAppServerClient, dt as TURN_TERMINAL_SETTLEMENT_TIMEOUT_MS, et as resolveCodexAppServerAuthAccountCacheKey, f as readCodexAppServerClientDesktopGenerationFingerprint, h as releaseLeasedSharedCodexAppServerClient, ht as withCodexStartupTimeout, i as clearSharedCodexAppServerClientIfCurrent, j as getCodexInferenceThread, l as getSharedCodexAppServerClient, lt as CodexAppServerStartupError, mt as resolveCodexStartupTimeoutMs, s as createIsolatedCodexAppServerClient, tt as resolveCodexAppServerPreparedAuthHandoff, u as isCodexAppServerStartSelectionChangedError, ut as TURN_FINALIZE_DRAIN_ABORT_GRACE_MS, w as CodexThreadClientReplacementError, x as CODEX_APP_SERVER_CONTEXT_RESTART_SELECTION_CHANGED } from "./shared-client-qhyYWbew.mjs";
26
+ import { E as isCodexContextRestartSelectionChangedError, H as prepareCodexWorkspaceReferences, I as ensureCodexAppServerClientRuntime, M as getCodexInferenceThreadQualification, U as protectCodexAppServerLiveThread, X as readRecentCodexRateLimits, Y as readCodexRateLimitsRevision, _ as retainSharedCodexAppServerClientIfCurrent, a as clearSharedCodexAppServerClientIfCurrentAndUnclaimed, c as getLeasedSharedCodexAppServerClient, dt as TURN_TERMINAL_SETTLEMENT_TIMEOUT_MS, et as resolveCodexAppServerAuthAccountCacheKey, f as readCodexAppServerClientDesktopGenerationFingerprint, h as releaseLeasedSharedCodexAppServerClient, ht as withCodexStartupTimeout, i as clearSharedCodexAppServerClientIfCurrent, j as getCodexInferenceThread, l as getSharedCodexAppServerClient, lt as CodexAppServerStartupError, mt as resolveCodexStartupTimeoutMs, s as createIsolatedCodexAppServerClient, tt as resolveCodexAppServerPreparedAuthHandoff, u as isCodexAppServerStartSelectionChangedError, ut as TURN_FINALIZE_DRAIN_ABORT_GRACE_MS, w as CodexThreadClientReplacementError, x as CODEX_APP_SERVER_CONTEXT_RESTART_SELECTION_CHANGED } from "./shared-client-DeenOD8U.mjs";
27
27
  import { a as isCodexResponsesOAuthRun, r as isCodexResponsesOAuth } from "./responses-oauth-twnuTaAa.mjs";
28
- import { A as resolveTerminalDynamicToolBatchAction, D as isDynamicToolTerminalDiagnosticEvent, E as hasPendingDynamicToolTerminalDiagnostic, H as resolveCodexAppServerClientInstanceId, M as toCodexDynamicToolProgressResponse, N as toCodexDynamicToolProtocolResponse, O as isMatchingDynamicToolTerminalDiagnostic, T as handleDynamicToolCallWithTimeout, _ as assertCodexTurnStartResponse, a as isCodexAppServerIndeterminateRequestCancellationError, i as isCodexAppServerConnectionClosedError, j as shouldReleaseTurnAfterTerminalDynamicTool, k as resolveDynamicToolCallTimeoutMs, l as CodexServerRequestResolvedError, o as isCodexAppServerIndeterminateTransportError, r as isCodexAppServerApprovalRequest, w as createCodexElicitationResponse, x as readCodexTurnCompletedNotification, y as readCodexDynamicToolCallParams, z as CODEX_APP_SERVER_OPT_OUT_NOTIFICATION_METHODS } from "./client-C8lgBOoO.mjs";
28
+ import { A as resolveTerminalDynamicToolBatchAction, D as isDynamicToolTerminalDiagnosticEvent, E as hasPendingDynamicToolTerminalDiagnostic, H as resolveCodexAppServerClientInstanceId, M as toCodexDynamicToolProgressResponse, N as toCodexDynamicToolProtocolResponse, O as isMatchingDynamicToolTerminalDiagnostic, T as handleDynamicToolCallWithTimeout, _ as assertCodexTurnStartResponse, a as isCodexAppServerIndeterminateRequestCancellationError, i as isCodexAppServerConnectionClosedError, j as shouldReleaseTurnAfterTerminalDynamicTool, k as resolveDynamicToolCallTimeoutMs, l as CodexServerRequestResolvedError, o as isCodexAppServerIndeterminateTransportError, r as isCodexAppServerApprovalRequest, w as createCodexElicitationResponse, x as readCodexTurnCompletedNotification, y as readCodexDynamicToolCallParams, z as CODEX_APP_SERVER_OPT_OUT_NOTIFICATION_METHODS } from "./client-BIRVBXXb.mjs";
29
29
  import { n as isCodexWebSocketOpenFailure } from "./transport-websocket-zqJ0Cmtn.mjs";
30
- import { a as isCodexNotificationForTurn, b as shouldClearTerminalPresentationForNativeItem, g as itemName, i as CodexProjectionDiagnostics, n as getCodexAppServerTurnRouter, o as readCodexNotificationThreadId, t as CODEX_APP_SERVER_NATIVE_TURN_WAIT_TIMEOUT_MS, y as matchesCodexSnapshotTurn } from "./turn-router-sS69wYnI.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-BH0hW2xU.mjs";
30
+ import { a as isCodexNotificationForTurn, b as shouldClearTerminalPresentationForNativeItem, g as itemName, i as CodexProjectionDiagnostics, n as getCodexAppServerTurnRouter, o as readCodexNotificationThreadId, t as CODEX_APP_SERVER_NATIVE_TURN_WAIT_TIMEOUT_MS, y as matchesCodexSnapshotTurn } from "./turn-router-BWhX_SBh.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-HXQxfMc1.mjs";
32
32
  import { r as prepareCodexAppServerAuthBinding } from "./auth-binding-BoMwpuPN.mjs";
33
33
  import { a as isRawFunctionToolOutputCompletionNotification, c as readNotificationItemId, i as isPendingOpenClawDynamicToolCompletionNotification, l as readRawResponseToolCallId, o as isTerminalTurnStatus, r as isCodexTurnAbortMarkerNotification, s as readCodexNotificationItem, t as CodexUsageProjection, u as updateActiveTurnItemIds } from "./event-projector-usage-03R0I2dM.mjs";
34
- import { n as listAllCodexAppServerModels } from "./models-DSseKSMg.mjs";
35
- import { B as hasCodexNativeToolCatalog, Ct as mergeCodexThreadConfigs, D as assertCodexNativeHookRelayAllowed, E as CodexManagedHooksOnlyError, F as scheduleCodexNativeHookRelayUnregister, G as areCodexDynamicToolFingerprintsCompatible, J as codexLegacyDynamicToolsFingerprint, N as resolveCodexNativeHookRelayEvents, O as buildCodexNativeHookRelayConfig, P as resolveCodexNativeHookRelayTtlMs, S as joinPresentSections, T as CODEX_NATIVE_HOOK_RELAY_TTL_GRACE_MS, V as loadCodexNativeToolCatalog, Z as fingerprintJsonObject, _t as buildCodexPluginThreadConfigInputFingerprint, b as resolveCodexAppServerThreadModelSelection, dt as isSystemAgentOnlyCodexDynamicToolAllowlist, g as buildDeveloperInstructions, j as createCodexNativeHookRelay, k as buildCodexNativeHookRelayDisabledConfig, l as isCodexNativeDelegationDisabledForRun, m as resolveCodexWebSearchPlan, mt as resolveCodexDynamicToolsLoadingForRuntime, nt as stabilizeJsonValue, q as codexDynamicToolsFingerprint, st as filterCodexDynamicTools } from "./thread-requests-CL1e8Wmx.mjs";
36
- import { _ as buildContextEngineBinding, a as buildTurnStartParams, c as assertScheduledCodexAppAuthorityRuntime, d as buildScheduledCodexAppServerConnectionIdentity, f as captureScheduledCodexAppAuthority, g as isCodexAppServerProfilerEnabled, h as resolveScheduledCodexAppCreatorCaptureDecision, i as buildTurnCollaborationMode, l as buildLegacyScheduledCodexAppRecoveryPrompt, n as buildCodexParentLocalInstructions, o as buildCodexUserInput, s as startOrResumeThread, t as buildCodexHistoryProvenancePrefix, u as buildScheduledCodexAppAuthorityInputFingerprint, v as isContextEngineBindingCompatible } from "./thread-lifecycle-Cbz_7ySv.mjs";
34
+ import { n as listAllCodexAppServerModels } from "./models-BYbLQPnj.mjs";
35
+ import { B as hasCodexNativeToolCatalog, Ct as mergeCodexThreadConfigs, D as assertCodexNativeHookRelayAllowed, E as CodexManagedHooksOnlyError, F as scheduleCodexNativeHookRelayUnregister, G as areCodexDynamicToolFingerprintsCompatible, J as codexLegacyDynamicToolsFingerprint, N as resolveCodexNativeHookRelayEvents, O as buildCodexNativeHookRelayConfig, P as resolveCodexNativeHookRelayTtlMs, S as joinPresentSections, T as CODEX_NATIVE_HOOK_RELAY_TTL_GRACE_MS, V as loadCodexNativeToolCatalog, Z as fingerprintJsonObject, _t as buildCodexPluginThreadConfigInputFingerprint, b as resolveCodexAppServerThreadModelSelection, dt as isSystemAgentOnlyCodexDynamicToolAllowlist, g as buildDeveloperInstructions, j as createCodexNativeHookRelay, k as buildCodexNativeHookRelayDisabledConfig, l as isCodexNativeDelegationDisabledForRun, m as resolveCodexWebSearchPlan, mt as resolveCodexDynamicToolsLoadingForRuntime, nt as stabilizeJsonValue, q as codexDynamicToolsFingerprint, st as filterCodexDynamicTools } from "./thread-requests-Dwg2b4Xl.mjs";
36
+ import { _ as buildContextEngineBinding, a as buildTurnStartParams, c as assertScheduledCodexAppAuthorityRuntime, d as buildScheduledCodexAppServerConnectionIdentity, f as captureScheduledCodexAppAuthority, g as isCodexAppServerProfilerEnabled, h as resolveScheduledCodexAppCreatorCaptureDecision, i as buildTurnCollaborationMode, l as buildLegacyScheduledCodexAppRecoveryPrompt, n as buildCodexParentLocalInstructions, o as buildCodexUserInput, s as startOrResumeThread, t as buildCodexHistoryProvenancePrefix, u as buildScheduledCodexAppAuthorityInputFingerprint, v as isContextEngineBindingCompatible } from "./thread-lifecycle-CoqYpbpk.mjs";
37
37
  import { o as createCodexSessionGenerationSupersededError, r as resolveCodexSessionBinding, s as resolveCodexRunSessionBindingAuthority, t as clearCodexBindingForClient } from "./session-binding-Ce7BqiPN.mjs";
38
- import { a as CodexToolTranscriptProjection, c as shouldEmitTranscriptToolProgress, d as resolveCodexToolProgressDetailMode, f as sanitizeCodexAgentEventRecord, i as emitCodexAgentEvent, p as sanitizeCodexToolArguments, r as CodexEventProjection, s as CodexToolProgressProjection, t as codexNativeSubagentMonitorRuntime, u as isCodexCommandBearingToolCall } from "./native-subagent-monitor-BUYOUp9X.mjs";
39
- import { a as requestPluginApprovalOutcome } from "./plugin-approval-roundtrip-CuahdPLC.mjs";
40
- import { n as CodexThreadPolicyHandoffError, s as restoreCodexThreadInstructionsAfterCompaction } from "./thread-policy-DoNxbhqt.mjs";
41
- import { c as withExclusiveCodexAppServerThread, r as retainCodexAppServerBindingSubscription, t as isSameCodexAppServerThreadOwner } from "./thread-ownership-DwuSrt3s.mjs";
42
- import { a as resolveCodexPromptError, i as refreshCodexUsageLimitPromptError, n as formatCodexTurnStartUsageLimitError, r as markCodexAuthProfileBlockedFromRateLimits, t as CodexUsageLimitPromptError } from "./usage-limit-error-GbT-5NcW.mjs";
38
+ import { a as CodexToolTranscriptProjection, c as shouldEmitTranscriptToolProgress, d as resolveCodexToolProgressDetailMode, f as sanitizeCodexAgentEventRecord, i as emitCodexAgentEvent, p as sanitizeCodexToolArguments, r as CodexEventProjection, s as CodexToolProgressProjection, t as codexNativeSubagentMonitorRuntime, u as isCodexCommandBearingToolCall } from "./native-subagent-monitor-B2C8D_N0.mjs";
39
+ import { a as requestPluginApprovalOutcome } from "./plugin-approval-roundtrip-C_SGp5YW.mjs";
40
+ import { n as CodexThreadPolicyHandoffError, s as restoreCodexThreadInstructionsAfterCompaction } from "./thread-policy-DCC9lQjC.mjs";
41
+ import { c as withExclusiveCodexAppServerThread, r as retainCodexAppServerBindingSubscription, t as isSameCodexAppServerThreadOwner } from "./thread-ownership-CSDZ6mHd.mjs";
42
+ import { a as resolveCodexPromptError, i as refreshCodexUsageLimitPromptError, n as formatCodexTurnStartUsageLimitError, r as markCodexAuthProfileBlockedFromRateLimits, t as CodexUsageLimitPromptError } from "./usage-limit-error-D1p3nE6n.mjs";
43
43
  import { t as persistCodexContextCompactionActivity } from "./context-compaction-activity-CMla5FPJ.mjs";
44
44
  import { t as attemptTerminal } from "./attempt-terminal-gZrxQ35N.mjs";
45
45
  import { a as runCodexAgentEndHook, i as reportCodexBackgroundCleanupFailure, n as ensureCodexWorkspaceDirOnce, o as shouldKeepCodexSharedAbortOpen, r as estimateCodexAppServerProjectedTurnTokens, s as withCodexAppServerFastModeServiceTier, t as emitCodexAppServerEvent } from "./run-attempt-lifecycle-BuZgVbDA.mjs";
46
46
  import { t as CODEX_INFERENCE_GENERATION_KEY } from "./inference-metadata-CgIf7sOx.mjs";
47
47
  import "./inference-context-D-9gWlTR.mjs";
48
- import { i as createAssistantReasoningMessage, n as createAssistantCommentaryMessage, r as createAssistantMessage, t as createAssistantAsyncMessage } from "./event-projector-assistant-message-BN7CNUB5.mjs";
49
- 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-C8xGEXmR.mjs";
50
- import { n as resolveCodexPluginThreadConfigStartupPolicy, t as createCodexPluginThreadConfigStartupProvider } from "./plugin-thread-config-deadline-B8LGaZNW.mjs";
48
+ import { i as createAssistantReasoningMessage, n as createAssistantCommentaryMessage, r as createAssistantMessage, t as createAssistantAsyncMessage } from "./event-projector-assistant-message-C3Tpt370.mjs";
49
+ 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-DgWZMfAQ.mjs";
50
+ import { n as resolveCodexPluginThreadConfigStartupPolicy, t as createCodexPluginThreadConfigStartupProvider } from "./plugin-thread-config-deadline-CsScGgrk.mjs";
51
51
  import { i as resolveCodexSessionPermissionCwd, n as applyCodexSessionPermissionPolicy, r as resolveCodexEffectiveSessionPermissionPolicy } from "./session-permission-policy-BxIUJ0Zd.mjs";
52
- import { r as prepareCodexNativeMcpFormResourceContext, t as createCodexNativeMcpAppResultDetailsPreparer } from "./native-mcp-app-CqcPVmhH.mjs";
53
- import { a as emitDynamicToolStartedDiagnostic, c as ensureCodexSandboxExecServerEnvironment, d as CodexNativeProcessAuthority, f as readCodexRetainedBackgroundCommands, i as emitDynamicToolErrorDiagnostic, l as releaseCodexSandboxExecServerEnvironment, m as CodexNativeToolLifecycleProjector, n as projectCodexExecutableDynamicTools, o as emitDynamicToolTerminalDiagnostic, p as createCodexRemoteWorkspaceFileReader, r as routeCodexAppServerElicitationRequest, s as handleCodexAppServerApprovalRequest, t as createCodexDynamicToolBridge, u as createCodexNativePreToolUseFailureBuffer } from "./dynamic-tools-DyERJnR6.mjs";
52
+ import { r as prepareCodexNativeMcpFormResourceContext, t as createCodexNativeMcpAppResultDetailsPreparer } from "./native-mcp-app-5i5eRCwO.mjs";
53
+ import { a as emitDynamicToolStartedDiagnostic, c as ensureCodexSandboxExecServerEnvironment, d as CodexNativeProcessAuthority, f as readCodexRetainedBackgroundCommands, i as emitDynamicToolErrorDiagnostic, l as releaseCodexSandboxExecServerEnvironment, m as CodexNativeToolLifecycleProjector, n as projectCodexExecutableDynamicTools, o as emitDynamicToolTerminalDiagnostic, p as createCodexRemoteWorkspaceFileReader, r as routeCodexAppServerElicitationRequest, s as handleCodexAppServerApprovalRequest, t as createCodexDynamicToolBridge, u as createCodexNativePreToolUseFailureBuffer } from "./dynamic-tools-Ct6GKAFr.mjs";
54
54
  import { c as promptSnapshot, i as mirrorPromptAtTurnStartBestEffort, n as createCodexAppServerUserMessagePersistenceNotifier, o as buildCodexUserPromptMessage, s as buildResolvedCodexUserPromptMessage, t as codexTranscriptMirrorRuntime } from "./transcript-mirror-BfLRARNL.mjs";
55
55
  import { t as resolveCodexAppServerForModelProvider } from "./app-server-policy-Bg4FZw1f.mjs";
56
- 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-BY0jprWJ.mjs";
56
+ 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-BmCutoyg.mjs";
57
57
  import { n as captureCodexSettledTurnFinalizationContext } from "./settled-turn-context-BZsMjkIO.mjs";
58
- import { t as resolveCodexProviderWebSearchSupport } from "./provider-capabilities-D68Whix6.mjs";
59
- import { a as runCodexComputerUseLiveTest, i as createComputerUseRequest, t as ensureCodexComputerUse } from "./computer-use-BBN9y326.mjs";
58
+ import { t as resolveCodexProviderWebSearchSupport } from "./provider-capabilities-B4yq6UgQ.mjs";
59
+ import { a as runCodexComputerUseLiveTest, i as createComputerUseRequest, t as ensureCodexComputerUse } from "./computer-use-BVxocZZc.mjs";
60
60
  import { asOptionalRecord, normalizeLowercaseStringOrEmpty, readNonBlankString, readStringField } from "openclaw/plugin-sdk/string-coerce-runtime";
61
61
  import { createHash } from "node:crypto";
62
62
  import { isDeepStrictEqual } from "node:util";
@@ -443,6 +443,14 @@ var CodexAssistantProjection = class {
443
443
  delta: item.text
444
444
  });
445
445
  }
446
+ /** Codex deltas are best-effort; completed item text is authoritative (codex-rs TUI agrees). */
447
+ async streamCompletedItemTail(item) {
448
+ const streamed = item?.type === "agentMessage" ? this.assistantTextByItem.get(item.id) : "";
449
+ if (streamed && typeof item?.text === "string" && item.text.startsWith(streamed)) await this.handleAssistantDelta({
450
+ itemId: item.id,
451
+ delta: item.text.slice(streamed.length)
452
+ });
453
+ }
446
454
  recordItemCompleted(item, itemId, activeItemIds) {
447
455
  if (itemId && item?.type === "agentMessage") this.completedAssistantItemIds.add(itemId);
448
456
  this.noteNativeWorkBarrier(item);
@@ -1900,6 +1908,7 @@ var CodexAppServerEventProjector = class extends CodexTurnProjection {
1900
1908
  this.completedCompactionCount += 1;
1901
1909
  }
1902
1910
  if (!this.asyncDeliveryProjection.allows(item, true)) return;
1911
+ await this.assistantProjection.streamCompletedItemTail(item);
1903
1912
  const asyncMessage = this.assistantProjection.recordItemCompleted(item, itemId, this.activeItemIds);
1904
1913
  if (asyncMessage) await this.asyncDeliveryProjection.deliver(asyncMessage);
1905
1914
  if (this.projectionClosed) return;
@@ -1988,6 +1997,7 @@ var CodexAppServerEventProjector = class extends CodexTurnProjection {
1988
1997
  for (const item of turnItems) {
1989
1998
  if (!this.asyncDeliveryProjection.allows(item)) continue;
1990
1999
  this.diagnostics.warnUnknownItemStatus(item);
2000
+ await this.assistantProjection.streamCompletedItemTail(item);
1991
2001
  const asyncMessage = this.assistantProjection.recordSnapshotItem(item);
1992
2002
  if (asyncMessage) await this.asyncDeliveryProjection.deliver(asyncMessage);
1993
2003
  if (this.projectionClosed) return;
@@ -1,10 +1,10 @@
1
1
  import { c as MAX_CWD_LENGTH, d as boundedCatalogString } from "./session-catalog-parsing-B-qWJh2x.mjs";
2
- import { n as defineCodexBuildState } from "./build-state-CqQnsg7T.mjs";
2
+ import { n as defineCodexBuildState } from "./build-state-BwxNfFEB.mjs";
3
3
  import { r as inferCodexAppServerConnectionClass } from "./config-security-KAPScztc.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-BW8rd98k.mjs";
7
- import { d as observeCodexCatalogEphemeralThreads, r as projectCodexCatalogNativeThread, s as codexCatalogSourceForClient } from "./session-catalog-native-projection-D6IiLtMb.mjs";
7
+ import { d as observeCodexCatalogEphemeralThreads, r as projectCodexCatalogNativeThread, s as codexCatalogSourceForClient } from "./session-catalog-native-projection-z9Q608QW.mjs";
8
8
  import { createHash } from "node:crypto";
9
9
  import { embeddedAgentLog } from "openclaw/plugin-sdk/agent-harness-registration";
10
10
  import path from "node:path";
@@ -2,10 +2,10 @@ 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-DEU36Qlo.mjs";
3
3
  import { i as retainCodexCatalogRow, n as codexCatalogRowRecency, r as compareCodexCatalogRows, t as CodexCatalogOrdering } from "./session-catalog-index-order-nhyO0wdW.mjs";
4
4
  import { c as codexCatalogMetadataPage, i as CodexCatalogAvailability, r as withCodexCatalogListRequest, s as CodexCatalogPersistence } from "./session-catalog-list-request-tXephOB4.mjs";
5
- import { l as getCodexCatalogSource, p as setCodexCatalogSource, r as projectCodexCatalogNativeThread, u as hasLiveCodexCatalogSource } from "./session-catalog-native-projection-D6IiLtMb.mjs";
6
- import { i as subscribeCodexCatalogEvents } from "./session-catalog-events-Bdjw9HEn.mjs";
5
+ import { l as getCodexCatalogSource, p as setCodexCatalogSource, r as projectCodexCatalogNativeThread, u as hasLiveCodexCatalogSource } from "./session-catalog-native-projection-z9Q608QW.mjs";
6
+ import { i as subscribeCodexCatalogEvents } from "./session-catalog-events-DRaivXvC.mjs";
7
7
  import { a as reportCodexCatalogSpawnFailure, n as findCodexAppServerSpawnError } from "./spawn-error-CL3n6MAa.mjs";
8
- import { CodexCatalogProjectionCapacityError, CodexCatalogProjections, mergeCodexCatalogRolloutRow, n as readCodexCatalogRollout, projectCodexCatalogThread, r as resolveCodexCatalogRolloutFingerprint, t as codexCatalogRolloutLogicalPath } from "./session-catalog-projection-8aHNwzWD.mjs";
8
+ import { CodexCatalogProjectionCapacityError, CodexCatalogProjections, mergeCodexCatalogRolloutRow, n as readCodexCatalogRollout, projectCodexCatalogThread, r as resolveCodexCatalogRolloutFingerprint, t as codexCatalogRolloutLogicalPath } from "./session-catalog-projection-Cl0Nc7c6.mjs";
9
9
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
10
10
  import { createHash } from "node:crypto";
11
11
  import { isDeepStrictEqual } from "node:util";
@@ -1,6 +1,6 @@
1
1
  import { D as selectCodexCatalogPreviewInput, c as MAX_CWD_LENGTH, d as boundedCatalogString, k as truncateCodexCatalogPreview } from "./session-catalog-parsing-B-qWJh2x.mjs";
2
2
  import { i as isJsonObject } from "./protocol-CANUwXJ3.mjs";
3
- import { n as defineCodexBuildState } from "./build-state-CqQnsg7T.mjs";
3
+ import { n as defineCodexBuildState } from "./build-state-BwxNfFEB.mjs";
4
4
  import { n as detachCodexCatalogString } from "./session-catalog-limits-DEU36Qlo.mjs";
5
5
  import { t as __exportAll } from "./session-binding-sidecars-BrdV95Fg.mjs";
6
6
  import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
@@ -2,7 +2,7 @@ import { D as selectCodexCatalogPreviewInput, O as toCatalogSession, S as readCo
2
2
  import { n as detachCodexCatalogString } from "./session-catalog-limits-DEU36Qlo.mjs";
3
3
  import { n as codexCatalogRowRecency } from "./session-catalog-index-order-nhyO0wdW.mjs";
4
4
  import { t as isOpenClawManagedCodexThread } from "./session-catalog-provenance-CmsOE5mh.mjs";
5
- import { c as copyCodexCatalogSource, l as getCodexCatalogSource, p as setCodexCatalogSource, r as projectCodexCatalogNativeThread } from "./session-catalog-native-projection-D6IiLtMb.mjs";
5
+ import { c as copyCodexCatalogSource, l as getCodexCatalogSource, p as setCodexCatalogSource, r as projectCodexCatalogNativeThread } from "./session-catalog-native-projection-z9Q608QW.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,9 +1,9 @@
1
- import { S as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-CGm0UJOr.mjs";
1
+ import { S as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-BCCQHWdc.mjs";
2
2
  import { t as withCodexAppServerThreadMutation } from "./thread-ownership-queue-Dp24d7-F.mjs";
3
- import { G as releaseCodexAppServerLiveThread, R as hasCodexAppServerLiveThread, V as isCodexAppServerLiveThreadClaimed } from "./shared-client-qhyYWbew.mjs";
4
- import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-BH0hW2xU.mjs";
5
- import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-BUYOUp9X.mjs";
6
- import { t as isSameCodexAppServerThreadOwner } from "./thread-ownership-DwuSrt3s.mjs";
3
+ import { G as releaseCodexAppServerLiveThread, R as hasCodexAppServerLiveThread, V as isCodexAppServerLiveThreadClaimed } from "./shared-client-DeenOD8U.mjs";
4
+ import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-HXQxfMc1.mjs";
5
+ import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-B2C8D_N0.mjs";
6
+ import { t as isSameCodexAppServerThreadOwner } from "./thread-ownership-CSDZ6mHd.mjs";
7
7
  import { t as getCodexSessionInitializationRollback } from "./session-initialization-D6dtFQkE.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,11 +1,11 @@
1
1
  import { r as readMirrorIdentity, t as attachCodexMirrorIdentity } from "./upstream-prompt-provenance-fXkKbPVC.mjs";
2
2
  import { a as fingerprintCodexMirrorSourceMessage, c as readCodexMirrorSourceFingerprint } from "./transcript-mirror-attestation-YSegaktH.mjs";
3
- import { tt as resolveCodexAppServerPreparedAuthHandoff } from "./shared-client-qhyYWbew.mjs";
4
- import { f as assertCodexPassiveTurnItems } from "./client-C8lgBOoO.mjs";
5
- import { o as resolveCodexLocalRuntimeAttribution } from "./native-subagent-monitor-BUYOUp9X.mjs";
6
- import { runBoundedCodexAppServerTurn } from "./bounded-turn-pGsfXcmH.mjs";
3
+ import { tt as resolveCodexAppServerPreparedAuthHandoff } from "./shared-client-DeenOD8U.mjs";
4
+ import { f as assertCodexPassiveTurnItems } from "./client-BIRVBXXb.mjs";
5
+ import { o as resolveCodexLocalRuntimeAttribution } from "./native-subagent-monitor-B2C8D_N0.mjs";
6
+ import { runBoundedCodexAppServerTurn } from "./bounded-turn-Cv4uIEzz.mjs";
7
7
  import { t as resolveCodexBoundedTurnIsolation } from "./bounded-turn-isolation-DklXNk3k.mjs";
8
- import { a as createAttributedCodexAssistantMessage } from "./event-projector-assistant-message-BN7CNUB5.mjs";
8
+ import { a as createAttributedCodexAssistantMessage } from "./event-projector-assistant-message-C3Tpt370.mjs";
9
9
  import { t as codexTranscriptMirrorRuntime } from "./transcript-mirror-BfLRARNL.mjs";
10
10
  import { t as CodexSettledTurnContext } from "./settled-turn-context-BZsMjkIO.mjs";
11
11
  import { isSilentReplyText } from "openclaw/plugin-sdk/reply-runtime";
@@ -1,21 +1,21 @@
1
1
  import { i as isJsonObject } from "./protocol-CANUwXJ3.mjs";
2
- import { n as defineCodexBuildState, t as codexBuildSymbol } from "./build-state-CqQnsg7T.mjs";
2
+ import { n as defineCodexBuildState, t as codexBuildSymbol } from "./build-state-BwxNfFEB.mjs";
3
3
  import { t as CODEX_APP_SERVER_AUTH_PROVIDER } from "./auth-profile-selection-hr8ocLtz.mjs";
4
4
  import { n as isCodexAppServerProxyLaunch } from "./launch-args-DbFCehO7.mjs";
5
5
  import { a as withEphemeralCodexAuthStore, i as withClearedEnvironmentVariables, n as resolveCodexAppServerLocalHomeDir, r as resolveCodexAppServerUserHomeDir, 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-HG_Rr3W_.mjs";
7
7
  import { d as resolveMacOSDesktopCodexBundledMarketplaceCandidates, f as resolveMacOSDesktopCodexComputerUseServiceAppCandidates, i as resolveManagedCodexNativeCommand, l as resolveFirstExistingMacOSDesktopCodexBundledMarketplacePath, r as resolveManagedCodexAppServerStartOptions, t as isManagedCodexDesktopCommand, u as resolveMacOSDesktopCodexAppPathCandidates } from "./managed-binary-C1VFoVPf.mjs";
8
- import { A as waitForCodexDesktopGeneration, C as retirePendingSharedClientEntryIfUnclaimed, D as waitForUnclaimedSharedClientStartup, _ as observeSharedClientAcquire, a as readCodexCliAuthFileApiKey, b as releaseSharedClientEntry, c as resolveCodexAppServerPreparedApiKeyCacheKey, d as getCurrentSharedClientEntry, f as getOrCreateSharedClientEntry, g as observeAcquire, h as notifyDesktopGenerationDrainChecks, i as fingerprintTokenAuthProfileCacheKey, j as readCodexDesktopArtifactTreeFingerprint, k as isCodexDesktopGenerationCurrent, l as closeSharedClientEntryIfUnclaimed, n as CODEX_AUTH_JSON_FILENAME, o as readFirstNonEmptyEnv, p as getSharedCodexAppServerClientState, r as fingerprintApiKeyAuthProfileCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey, t as CODEX_APP_SERVER_API_KEY_ENV_VARS, u as createCodexAppServerStartupLifetime, v as ownCodexStartup, w as retireSharedCodexAppServerClientIfCurrent, x as retainSharedClientEntry, y as recordSharedClientAcquireBoundary } from "./auth-cache-key-CGm0UJOr.mjs";
8
+ import { A as waitForCodexDesktopGeneration, C as retirePendingSharedClientEntryIfUnclaimed, D as waitForUnclaimedSharedClientStartup, _ as observeSharedClientAcquire, a as readCodexCliAuthFileApiKey, b as releaseSharedClientEntry, c as resolveCodexAppServerPreparedApiKeyCacheKey, d as getCurrentSharedClientEntry, f as getOrCreateSharedClientEntry, g as observeAcquire, h as notifyDesktopGenerationDrainChecks, i as fingerprintTokenAuthProfileCacheKey, j as readCodexDesktopArtifactTreeFingerprint, k as isCodexDesktopGenerationCurrent, l as closeSharedClientEntryIfUnclaimed, n as CODEX_AUTH_JSON_FILENAME, o as readFirstNonEmptyEnv, p as getSharedCodexAppServerClientState, r as fingerprintApiKeyAuthProfileCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey, t as CODEX_APP_SERVER_API_KEY_ENV_VARS, u as createCodexAppServerStartupLifetime, v as ownCodexStartup, w as retireSharedCodexAppServerClientIfCurrent, x as retainSharedClientEntry, y as recordSharedClientAcquireBoundary } from "./auth-cache-key-BCCQHWdc.mjs";
9
9
  import { n as resolveCodexAppServerSpawnEnv } from "./transport-stdio-a0HDa2Mj.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-hmWM21RB.mjs";
12
12
  import { i as withTimeout } from "./timeout-CXOfNoaX.mjs";
13
13
  import { n as readCodexSessionMeta } from "./session-catalog-provenance-CmsOE5mh.mjs";
14
- import { n as observeCodexCatalogClient } from "./session-catalog-events-Bdjw9HEn.mjs";
14
+ import { n as observeCodexCatalogClient } from "./session-catalog-events-DRaivXvC.mjs";
15
15
  import { n as resolveCodexAppServerRuntimeOptions } from "./config-runtime-cUYrqu_a.mjs";
16
16
  import { a as resolveCodexAppServerAuthProfileStore, i as resolveCodexAppServerAuthProfileIdForAgent, r as resolveCodexAppServerAuthProfileId, t as isCodexAppServerNativeAuthProfile } from "./auth-profile-CgHQ8Vot.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-twnuTaAa.mjs";
18
- import { R as isUnsupportedCodexAppServerVersionError, t as CodexAppServerClient } from "./client-C8lgBOoO.mjs";
18
+ import { R as isUnsupportedCodexAppServerVersionError, t as CodexAppServerClient } from "./client-BIRVBXXb.mjs";
19
19
  import { n as isCodexWebSocketOpenFailure } from "./transport-websocket-zqJ0Cmtn.mjs";
20
20
  import { t as __exportAll } from "./session-binding-sidecars-BrdV95Fg.mjs";
21
21
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -2529,7 +2529,7 @@ async function prepareCodexInferenceRoute(params) {
2529
2529
  }
2530
2530
  pending = Promise.all([
2531
2531
  import("./inference-proxy-DUO5E2QQ.mjs"),
2532
- import("./native-subagent-monitor-BUYOUp9X.mjs").then((n) => n.n),
2532
+ import("./native-subagent-monitor-B2C8D_N0.mjs").then((n) => n.n),
2533
2533
  import("./inference-dispatch-B5UKEUyC.mjs")
2534
2534
  ]).then(([{ createCodexInferenceProxy }, native, { createCodexInferenceModelBinding }]) => {
2535
2535
  assertClient();
@@ -1,4 +1,4 @@
1
- import { ft as normalizeCodexDynamicToolName } from "./thread-requests-CL1e8Wmx.mjs";
1
+ import { ft as normalizeCodexDynamicToolName } from "./thread-requests-Dwg2b4Xl.mjs";
2
2
  import { pinExecToolTarget } from "openclaw/plugin-sdk/codex-mcp-projection";
3
3
  import { loadNodeExecAvailability } from "openclaw/plugin-sdk/node-selection-runtime";
4
4
  //#region extensions/codex/src/app-server/shell-dynamic-tools.ts
@@ -6,20 +6,20 @@ import { i as resolveCodexAppServerHomeScope, l as resolveCodexModelBackedReview
6
6
  import { n as formatCodexUsageLimitErrorMessage } from "./rate-limits-CMPy24F5.mjs";
7
7
  import { i as resolveCodexBindingAppServerConnection, r as requireCodexSupervisionModelSelection } from "./binding-connection-C-08ez1w.mjs";
8
8
  import { n as canUseCodexModelBackedApprovalsReviewerForModel, r as resolveOpenClawExecPolicyForCodexAppServer } from "./config-0Gxk3_eq.mjs";
9
- import { X as readRecentCodexRateLimits, b as withLeasedCodexAppServerClientStartSelectionRetry, c as getLeasedSharedCodexAppServerClient, m as releaseCodexAppServerClientLease, tt as resolveCodexAppServerPreparedAuthHandoff } from "./shared-client-qhyYWbew.mjs";
10
- import { N as toCodexDynamicToolProtocolResponse, P as resolveCodexToolAbortTerminalReason, T as handleDynamicToolCallWithTimeout, _ as assertCodexTurnStartResponse, a as isCodexAppServerIndeterminateRequestCancellationError, k as resolveDynamicToolCallTimeoutMs, m as assertCodexThreadForkResponse, r as isCodexAppServerApprovalRequest, w as createCodexElicitationResponse, y as readCodexDynamicToolCallParams } from "./client-C8lgBOoO.mjs";
11
- import { d as terminateCodexBackgroundTerminals, f as unsubscribeCodexThreadBestEffort, l as retireUnsafeCodexTurnClientBestEffort, s as interruptCodexTurnAndWaitBestEffort } from "./attempt-client-cleanup-BH0hW2xU.mjs";
12
- import { t as CodexEphemeralTurn } from "./ephemeral-turn-D8VcDTNo.mjs";
13
- import { Ct as mergeCodexThreadConfigs, N as resolveCodexNativeHookRelayEvents, O as buildCodexNativeHookRelayConfig, P as resolveCodexNativeHookRelayTtlMs, _ as CODEX_NATIVE_PERSONALITY_NONE, b as resolveCodexAppServerThreadModelSelection, k as buildCodexNativeHookRelayDisabledConfig, m as resolveCodexWebSearchPlan, pt as resolveCodexDynamicToolsLoading, r as buildCodexRuntimeThreadConfig, wt as refreshCodexPluginAppApprovalPolicy } from "./thread-requests-CL1e8Wmx.mjs";
14
- import { b as resolveCodexAppServerReasoningEffort, o as buildCodexUserInput, r as buildCodexTemporalAdditionalContext, y as readCodexSupportedReasoningEfforts } from "./thread-lifecycle-Cbz_7ySv.mjs";
9
+ import { X as readRecentCodexRateLimits, b as withLeasedCodexAppServerClientStartSelectionRetry, c as getLeasedSharedCodexAppServerClient, m as releaseCodexAppServerClientLease, tt as resolveCodexAppServerPreparedAuthHandoff } from "./shared-client-DeenOD8U.mjs";
10
+ import { N as toCodexDynamicToolProtocolResponse, P as resolveCodexToolAbortTerminalReason, T as handleDynamicToolCallWithTimeout, _ as assertCodexTurnStartResponse, a as isCodexAppServerIndeterminateRequestCancellationError, k as resolveDynamicToolCallTimeoutMs, m as assertCodexThreadForkResponse, r as isCodexAppServerApprovalRequest, w as createCodexElicitationResponse, y as readCodexDynamicToolCallParams } from "./client-BIRVBXXb.mjs";
11
+ import { d as terminateCodexBackgroundTerminals, f as unsubscribeCodexThreadBestEffort, l as retireUnsafeCodexTurnClientBestEffort, s as interruptCodexTurnAndWaitBestEffort } from "./attempt-client-cleanup-HXQxfMc1.mjs";
12
+ import { t as CodexEphemeralTurn } from "./ephemeral-turn-_cBMKCFb.mjs";
13
+ import { Ct as mergeCodexThreadConfigs, N as resolveCodexNativeHookRelayEvents, O as buildCodexNativeHookRelayConfig, P as resolveCodexNativeHookRelayTtlMs, _ as CODEX_NATIVE_PERSONALITY_NONE, b as resolveCodexAppServerThreadModelSelection, k as buildCodexNativeHookRelayDisabledConfig, m as resolveCodexWebSearchPlan, pt as resolveCodexDynamicToolsLoading, r as buildCodexRuntimeThreadConfig, wt as refreshCodexPluginAppApprovalPolicy } from "./thread-requests-Dwg2b4Xl.mjs";
14
+ import { b as resolveCodexAppServerReasoningEffort, o as buildCodexUserInput, r as buildCodexTemporalAdditionalContext, y as readCodexSupportedReasoningEfforts } from "./thread-lifecycle-CoqYpbpk.mjs";
15
15
  import { r as resolveCodexSessionBinding } from "./session-binding-Ce7BqiPN.mjs";
16
- import { i as assertCodexSupervisionThreadLineage, n as CodexThreadPolicyHandoffError, o as refreshCodexThreadPolicy } from "./thread-policy-DoNxbhqt.mjs";
16
+ import { i as assertCodexSupervisionThreadLineage, n as CodexThreadPolicyHandoffError, o as refreshCodexThreadPolicy } from "./thread-policy-DCC9lQjC.mjs";
17
17
  import { t as resolveCodexNativeExecutionBlock } from "./sandbox-guard-WqE8yPge.mjs";
18
- import { a as resolveCodexExternalSandboxPolicyForOpenClawSandbox, c as shouldEnableCodexAppServerNativeToolSurface, l as shouldRequireCodexSandboxExecServerEnvironment, o as resolveCodexMessageToolProvider, s as resolveCodexSandboxEnvironmentSelection, t as buildDynamicTools } from "./dynamic-tool-build-C8xGEXmR.mjs";
18
+ import { a as resolveCodexExternalSandboxPolicyForOpenClawSandbox, c as shouldEnableCodexAppServerNativeToolSurface, l as shouldRequireCodexSandboxExecServerEnvironment, o as resolveCodexMessageToolProvider, s as resolveCodexSandboxEnvironmentSelection, t as buildDynamicTools } from "./dynamic-tool-build-DgWZMfAQ.mjs";
19
19
  import { i as resolveCodexSessionPermissionCwd, n as applyCodexSessionPermissionPolicy, r as resolveCodexEffectiveSessionPermissionPolicy, t as CODEX_SESSION_PERMISSION_EXEC_MODES } from "./session-permission-policy-BxIUJ0Zd.mjs";
20
- import { a as emitDynamicToolStartedDiagnostic, c as ensureCodexSandboxExecServerEnvironment, i as emitDynamicToolErrorDiagnostic, l as releaseCodexSandboxExecServerEnvironment, m as CodexNativeToolLifecycleProjector, o as emitDynamicToolTerminalDiagnostic, r as routeCodexAppServerElicitationRequest, s as handleCodexAppServerApprovalRequest, t as createCodexDynamicToolBridge, u as createCodexNativePreToolUseFailureBuffer } from "./dynamic-tools-DyERJnR6.mjs";
20
+ import { a as emitDynamicToolStartedDiagnostic, c as ensureCodexSandboxExecServerEnvironment, i as emitDynamicToolErrorDiagnostic, l as releaseCodexSandboxExecServerEnvironment, m as CodexNativeToolLifecycleProjector, o as emitDynamicToolTerminalDiagnostic, r as routeCodexAppServerElicitationRequest, s as handleCodexAppServerApprovalRequest, t as createCodexDynamicToolBridge, u as createCodexNativePreToolUseFailureBuffer } from "./dynamic-tools-Ct6GKAFr.mjs";
21
21
  import { t as resolveCodexAppServerForModelProvider } from "./app-server-policy-Bg4FZw1f.mjs";
22
- import { n as resolveCodexProviderWebSearchSupportForClient } from "./provider-capabilities-D68Whix6.mjs";
22
+ import { n as resolveCodexProviderWebSearchSupportForClient } from "./provider-capabilities-B4yq6UgQ.mjs";
23
23
  import { readStringField } from "openclaw/plugin-sdk/string-coerce-runtime";
24
24
  import { randomUUID } from "node:crypto";
25
25
  import { isDeepStrictEqual } from "node:util";
@@ -1,5 +1,5 @@
1
1
  import { a as defaultCodexAppInventoryCache, r as buildCodexPluginAppCacheKey } from "./plugin-app-cache-key-BW8rd98k.mjs";
2
- import { a as withCodexAppServerJsonClient } from "./request-jSbhc1sg.mjs";
2
+ import { a as withCodexAppServerJsonClient } from "./request-DD3u22uv.mjs";
3
3
  import { a as pluginReadParams, i as marketplaceRef, l as CODEX_PLUGINS_MARKETPLACE_NAME, n as isOpenAiCuratedMarketplaceName } from "./plugin-inventory-Bf0_piTw.mjs";
4
4
  import "./config-0Gxk3_eq.mjs";
5
5
  import { t as __exportAll } from "./session-binding-sidecars-BrdV95Fg.mjs";
@@ -4,7 +4,7 @@ import { m as sessionBindingIdentity, n as assertCodexBindingMayBeReplaced } fro
4
4
  import { u as fingerprintCodexPolicy } from "./config-security-KAPScztc.mjs";
5
5
  import { n as resolveCodexAppServerLocalHomeDir, t as resolveCodexAppServerHomeDir } from "./auth-start-options-BPIPeEX8.mjs";
6
6
  import { d as readCodexEffectiveConfig, n as codexSandboxPolicyForTurn, s as assertCodexModelBackedReviewerEffectiveConfig, u as CODEX_SESSION_OVERRIDABLE_LAYER_TYPES } from "./config-options-HG_Rr3W_.mjs";
7
- import { S as retainSharedCodexAppServerClientByInstanceId, d as getCurrentSharedClientEntry } from "./auth-cache-key-CGm0UJOr.mjs";
7
+ import { S as retainSharedCodexAppServerClientByInstanceId, d as getCurrentSharedClientEntry } from "./auth-cache-key-BCCQHWdc.mjs";
8
8
  import { t as withCodexAppServerThreadMutation } from "./thread-ownership-queue-Dp24d7-F.mjs";
9
9
  import { o as isCodexAppServerOverloadError, r as CodexAppServerRpcError, s as isCodexThreadReadMissingError } from "./rpc-error-hmWM21RB.mjs";
10
10
  import { t as codexCatalogHomeId } from "./session-catalog-home-id-vlih0B_g.mjs";
@@ -17,16 +17,16 @@ import "./config-0Gxk3_eq.mjs";
17
17
  import { r as invalidInlineImageText } from "./session-history-read-CNN8zwbD.mjs";
18
18
  import { c as resolveCodexContextEngineProjectionMaxChars, o as neutralizeCodexExplicitMentionSigils } from "./context-engine-projection-CsgYSQhW.mjs";
19
19
  import { n as normalizeCodexAppServerBindingModelProvider } from "./auth-profile-CgHQ8Vot.mjs";
20
- import { A as bindCodexInferenceThread, B as isCodexAppServerClientRuntimeLive, C as CodexThreadBindingConflictError, F as consumeCodexAppServerLiveThread, G as releaseCodexAppServerLiveThread, J as unsubscribeCodexAppServerLiveThread, M as getCodexInferenceThreadQualification, N as prepareCodexInferenceThreadConfig, Q as createCodexEphemeralThreadPolicy, S as CodexAdoptedThreadActiveError, T as CodexThreadStartRequestError, V as isCodexAppServerLiveThreadClaimed, j as getCodexInferenceThread, k as assertCodexInferenceRouteConfig, n as captureCodexAppServerClientLifetime, w as CodexThreadClientReplacementError, z as hasCodexAppServerSiblingThreadWork } from "./shared-client-qhyYWbew.mjs";
21
- import { B as getCodexAppServerClientInstanceId, C as resolveCodexThreadRolloutPath, H as resolveCodexAppServerClientInstanceId, S as readSupervisionResponseThreadId, c as isCodexAppServerRequestTimeoutError, g as assertCodexThreadStartResponse, m as assertCodexThreadForkResponse, p as assertCodexThreadAcceptsDirectInput, v as assertExactSupervisionModelSelection } from "./client-C8lgBOoO.mjs";
22
- import { r as hasCodexAppServerSiblingRouteWork } from "./turn-router-sS69wYnI.mjs";
23
- import { f as unsubscribeCodexThreadBestEffort, l as retireUnsafeCodexTurnClientBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-BH0hW2xU.mjs";
24
- import { $ as legacyFingerprintUserMcpServersConfigPatch, B as hasCodexNativeToolCatalog, Ct as mergeCodexThreadConfigs, D as assertCodexNativeHookRelayAllowed, E as CodexManagedHooksOnlyError, Et as buildCodexAppApprovalOverrides, G as areCodexDynamicToolFingerprintsCompatible, I as attestCodexThreadToolSurface, J as codexLegacyDynamicToolsFingerprint, K as areUserMcpServersFingerprintsCompatible, L as checkCodexThreadAppAvailability, Q as fingerprintUserMcpServersConfigPatch, R as discardUnattestedCodexPluginThread, S as joinPresentSections, St as isCodexPluginThreadBindingStale, U as applyCodexNativeSkillIsolation, V as loadCodexNativeToolCatalog, W as resolveCodexNativeSkillIsolation, X as fingerprintEnvironmentSelection, Y as fingerprintCodexThreadConfig, Z as fingerprintJsonObject, _ as CODEX_NATIVE_PERSONALITY_NONE, at as shouldRotateCodexAppServerBindingForRuntime, b as resolveCodexAppServerThreadModelSelection, bt as buildPluginAppPolicyContext, c as codexThreadSandboxOrPermissions, d as readCodexManagedRequirementsFingerprint, dt as isSystemAgentOnlyCodexDynamicToolAllowlist, et as readActiveCodexTurnIdsFromResume, f as resolveCodexThreadApprovalsReviewer, g as buildDeveloperInstructions, h as mergeCodexNativeShellEnvironment, ht as buildCodexPluginAppsConfigPatchFromPolicyContext, i as buildCodexRuntimeThreadConfigForRun, it as shouldRecheckRecoverablePluginBinding, m as resolveCodexWebSearchPlan, n as buildCodexRingZeroThreadConfigPatch, o as buildThreadResumeParams, ot as shouldRotateCodexGpt56MultiAgentBinding, q as codexDynamicToolsFingerprint, rt as isTransientWebSearchRestriction, s as buildThreadStartParams, t as assertCodexManagedRequirementsDoNotOverrideToolPolicy, tt as shouldStartTransientNoToolThread, u as readCodexInheritedMcpServerNames, ut as isMessageOnlyCodexSourceReply, v as resolveCodexAppServerModelProvider, w as mergeCodexNativeProjectDocThreadConfig, xt as disableUnlistedCodexApps, y as resolveCodexAppServerRequestModelSelection, z as attestCodexRestrictedToolSurfaceMcpServersDisabled } from "./thread-requests-CL1e8Wmx.mjs";
20
+ import { A as bindCodexInferenceThread, B as isCodexAppServerClientRuntimeLive, C as CodexThreadBindingConflictError, F as consumeCodexAppServerLiveThread, G as releaseCodexAppServerLiveThread, J as unsubscribeCodexAppServerLiveThread, M as getCodexInferenceThreadQualification, N as prepareCodexInferenceThreadConfig, Q as createCodexEphemeralThreadPolicy, S as CodexAdoptedThreadActiveError, T as CodexThreadStartRequestError, V as isCodexAppServerLiveThreadClaimed, j as getCodexInferenceThread, k as assertCodexInferenceRouteConfig, n as captureCodexAppServerClientLifetime, w as CodexThreadClientReplacementError, z as hasCodexAppServerSiblingThreadWork } from "./shared-client-DeenOD8U.mjs";
21
+ import { B as getCodexAppServerClientInstanceId, C as resolveCodexThreadRolloutPath, H as resolveCodexAppServerClientInstanceId, S as readSupervisionResponseThreadId, c as isCodexAppServerRequestTimeoutError, g as assertCodexThreadStartResponse, m as assertCodexThreadForkResponse, p as assertCodexThreadAcceptsDirectInput, v as assertExactSupervisionModelSelection } from "./client-BIRVBXXb.mjs";
22
+ import { r as hasCodexAppServerSiblingRouteWork } from "./turn-router-BWhX_SBh.mjs";
23
+ import { f as unsubscribeCodexThreadBestEffort, l as retireUnsafeCodexTurnClientBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-HXQxfMc1.mjs";
24
+ import { $ as legacyFingerprintUserMcpServersConfigPatch, B as hasCodexNativeToolCatalog, Ct as mergeCodexThreadConfigs, D as assertCodexNativeHookRelayAllowed, E as CodexManagedHooksOnlyError, Et as buildCodexAppApprovalOverrides, G as areCodexDynamicToolFingerprintsCompatible, I as attestCodexThreadToolSurface, J as codexLegacyDynamicToolsFingerprint, K as areUserMcpServersFingerprintsCompatible, L as checkCodexThreadAppAvailability, Q as fingerprintUserMcpServersConfigPatch, R as discardUnattestedCodexPluginThread, S as joinPresentSections, St as isCodexPluginThreadBindingStale, U as applyCodexNativeSkillIsolation, V as loadCodexNativeToolCatalog, W as resolveCodexNativeSkillIsolation, X as fingerprintEnvironmentSelection, Y as fingerprintCodexThreadConfig, Z as fingerprintJsonObject, _ as CODEX_NATIVE_PERSONALITY_NONE, at as shouldRotateCodexAppServerBindingForRuntime, b as resolveCodexAppServerThreadModelSelection, bt as buildPluginAppPolicyContext, c as codexThreadSandboxOrPermissions, d as readCodexManagedRequirementsFingerprint, dt as isSystemAgentOnlyCodexDynamicToolAllowlist, et as readActiveCodexTurnIdsFromResume, f as resolveCodexThreadApprovalsReviewer, g as buildDeveloperInstructions, h as mergeCodexNativeShellEnvironment, ht as buildCodexPluginAppsConfigPatchFromPolicyContext, i as buildCodexRuntimeThreadConfigForRun, it as shouldRecheckRecoverablePluginBinding, m as resolveCodexWebSearchPlan, n as buildCodexRingZeroThreadConfigPatch, o as buildThreadResumeParams, ot as shouldRotateCodexGpt56MultiAgentBinding, q as codexDynamicToolsFingerprint, rt as isTransientWebSearchRestriction, s as buildThreadStartParams, t as assertCodexManagedRequirementsDoNotOverrideToolPolicy, tt as shouldStartTransientNoToolThread, u as readCodexInheritedMcpServerNames, ut as isMessageOnlyCodexSourceReply, v as resolveCodexAppServerModelProvider, w as mergeCodexNativeProjectDocThreadConfig, xt as disableUnlistedCodexApps, y as resolveCodexAppServerRequestModelSelection, z as attestCodexRestrictedToolSurfaceMcpServersDisabled } from "./thread-requests-Dwg2b4Xl.mjs";
25
25
  import { a as hashCodexAppServerBindingFingerprint, r as resolveCodexSessionBinding } from "./session-binding-Ce7BqiPN.mjs";
26
26
  import { r as readCodexMcpToolConnectorId } from "./mcp-tool-metadata-j10HhfTC.mjs";
27
- import { a as refreshCodexThreadInstructions, i as assertCodexSupervisionThreadLineage, n as CodexThreadPolicyHandoffError, o as refreshCodexThreadPolicy, r as assertAdoptedCodexThreadResumeAllowed, t as CodexIncognitoPolicyChangeError } from "./thread-policy-DoNxbhqt.mjs";
28
- import { t as resumeCodexAppServerThread } from "./thread-resume-BT6NHMkM.mjs";
29
- import { c as withExclusiveCodexAppServerThread, r as retainCodexAppServerBindingSubscription, t as isSameCodexAppServerThreadOwner } from "./thread-ownership-DwuSrt3s.mjs";
27
+ import { a as refreshCodexThreadInstructions, i as assertCodexSupervisionThreadLineage, n as CodexThreadPolicyHandoffError, o as refreshCodexThreadPolicy, r as assertAdoptedCodexThreadResumeAllowed, t as CodexIncognitoPolicyChangeError } from "./thread-policy-DCC9lQjC.mjs";
28
+ import { t as resumeCodexAppServerThread } from "./thread-resume--WOKWxZd.mjs";
29
+ import { c as withExclusiveCodexAppServerThread, r as retainCodexAppServerBindingSubscription, t as isSameCodexAppServerThreadOwner } from "./thread-ownership-CSDZ6mHd.mjs";
30
30
  import { asOptionalRecord, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
31
31
  import crypto from "node:crypto";
32
32
  import { isDeepStrictEqual } from "node:util";
@@ -1,7 +1,7 @@
1
- import { S as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-CGm0UJOr.mjs";
1
+ import { S as retainSharedCodexAppServerClientByInstanceId } from "./auth-cache-key-BCCQHWdc.mjs";
2
2
  import { t as withCodexAppServerThreadMutation } from "./thread-ownership-queue-Dp24d7-F.mjs";
3
- import { G as releaseCodexAppServerLiveThread, K as retainCodexAppServerLiveThread, V as isCodexAppServerLiveThreadClaimed } from "./shared-client-qhyYWbew.mjs";
4
- import { f as unsubscribeCodexThreadBestEffort, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-BH0hW2xU.mjs";
3
+ import { G as releaseCodexAppServerLiveThread, K as retainCodexAppServerLiveThread, V as isCodexAppServerLiveThreadClaimed } from "./shared-client-DeenOD8U.mjs";
4
+ import { f as unsubscribeCodexThreadBestEffort, o as closeCodexStartupClientBestEffort, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-HXQxfMc1.mjs";
5
5
  import { t as __exportAll } from "./session-binding-sidecars-BrdV95Fg.mjs";
6
6
  import { createDeferred } from "openclaw/plugin-sdk/extension-shared";
7
7
  import { runWithAsyncWorkResources } from "openclaw/plugin-sdk/agent-harness-tool-runtime";
@@ -1,7 +1,7 @@
1
1
  import { i as CodexAppServerScopedRequestRejectedError, o as isCodexAppServerOverloadError } from "./rpc-error-hmWM21RB.mjs";
2
- import { n as requestCodexAppServerClientJson } from "./request-jSbhc1sg.mjs";
3
- import { S as CodexAdoptedThreadActiveError } from "./shared-client-qhyYWbew.mjs";
4
- import { p as assertCodexThreadAcceptsDirectInput, s as isCodexAppServerPrewriteRequestCancellationError } from "./client-C8lgBOoO.mjs";
2
+ import { n as requestCodexAppServerClientJson } from "./request-DD3u22uv.mjs";
3
+ import { S as CodexAdoptedThreadActiveError } from "./shared-client-DeenOD8U.mjs";
4
+ import { p as assertCodexThreadAcceptsDirectInput, s as isCodexAppServerPrewriteRequestCancellationError } from "./client-BIRVBXXb.mjs";
5
5
  import { AgentHarnessPreflightError, embeddedAgentLog, formatErrorMessage } from "openclaw/plugin-sdk/agent-harness-runtime";
6
6
  //#region extensions/codex/src/app-server/thread-policy.ts
7
7
  /** A refusal, not a failed native write: the ephemeral conversation must stay alive. */
@@ -7,13 +7,13 @@ import { a as defaultCodexAppInventoryCache, i as CodexAppInventoryCache, o as s
7
7
  import { c as toCodexPluginOwnedAccountApp, o as readCodexPluginInventory } from "./plugin-inventory-Bf0_piTw.mjs";
8
8
  import "./config-0Gxk3_eq.mjs";
9
9
  import { t as isCodexAppServerNativeAuthProfile } from "./auth-profile-CgHQ8Vot.mjs";
10
- import { D as nativeHookRelayUnregisterQueue, W as readCodexClientSessionMeta } from "./shared-client-qhyYWbew.mjs";
10
+ import { D as nativeHookRelayUnregisterQueue, W as readCodexClientSessionMeta } from "./shared-client-DeenOD8U.mjs";
11
11
  import { a as isCodexResponsesOAuthRun, i as isCodexResponsesOAuthCredential, t as CODEX_RESPONSES_OAUTH_PROVIDER } from "./responses-oauth-twnuTaAa.mjs";
12
- import { P as resolveCodexToolAbortTerminalReason } from "./client-C8lgBOoO.mjs";
13
- import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS } from "./attempt-client-cleanup-BH0hW2xU.mjs";
12
+ import { P as resolveCodexToolAbortTerminalReason } from "./client-BIRVBXXb.mjs";
13
+ import { f as unsubscribeCodexThreadBestEffort, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS } from "./attempt-client-cleanup-HXQxfMc1.mjs";
14
14
  import { t as ensureCodexPluginActivation } from "./plugin-activation-BcyBv8PG.mjs";
15
15
  import { a as hashCodexAppServerBindingFingerprint } from "./session-binding-Ce7BqiPN.mjs";
16
- import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-BUYOUp9X.mjs";
16
+ import { t as codexNativeSubagentMonitorRuntime } from "./native-subagent-monitor-B2C8D_N0.mjs";
17
17
  import { normalizeOptionalString, normalizeUniqueStringEntries, normalizeUniqueTrimmedStringList } from "openclaw/plugin-sdk/string-coerce-runtime";
18
18
  import * as crypto$1 from "node:crypto";
19
19
  import crypto, { createHash } from "node:crypto";
@@ -1,8 +1,8 @@
1
1
  import { i as CodexAppServerScopedRequestRejectedError, o as isCodexAppServerOverloadError, r as CodexAppServerRpcError } from "./rpc-error-hmWM21RB.mjs";
2
- import { r as publishCodexCatalogResume } from "./session-catalog-events-Bdjw9HEn.mjs";
3
- import { L as forgetCodexWorkspaceReferences, ft as isCodexAppServerStartupError, u as isCodexAppServerStartSelectionChangedError } from "./shared-client-qhyYWbew.mjs";
4
- import { h as assertCodexThreadResumeResponse, s as isCodexAppServerPrewriteRequestCancellationError } from "./client-C8lgBOoO.mjs";
5
- import { f as unsubscribeCodexThreadBestEffort, i as assertCodexThreadResumeSubscription, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-BH0hW2xU.mjs";
2
+ import { r as publishCodexCatalogResume } from "./session-catalog-events-DRaivXvC.mjs";
3
+ import { L as forgetCodexWorkspaceReferences, ft as isCodexAppServerStartupError, u as isCodexAppServerStartSelectionChangedError } from "./shared-client-DeenOD8U.mjs";
4
+ import { h as assertCodexThreadResumeResponse, s as isCodexAppServerPrewriteRequestCancellationError } from "./client-BIRVBXXb.mjs";
5
+ import { f as unsubscribeCodexThreadBestEffort, i as assertCodexThreadResumeSubscription, r as CodexAppServerUnsafeSubscriptionError } from "./attempt-client-cleanup-HXQxfMc1.mjs";
6
6
  import { sanitizeTerminalText } from "openclaw/plugin-sdk/text-chunking";
7
7
  //#region extensions/codex/src/app-server/thread-resume.ts
8
8
  /** Owns Codex thread/resume subscription safety. */
@@ -1,6 +1,6 @@
1
1
  import { i as isJsonObject } from "./protocol-CANUwXJ3.mjs";
2
2
  import { n as waitForPromiseOrAbort, t as abortReason } from "./timeout-CXOfNoaX.mjs";
3
- import { x as readCodexTurnCompletedNotification } from "./client-C8lgBOoO.mjs";
3
+ import { x as readCodexTurnCompletedNotification } from "./client-BIRVBXXb.mjs";
4
4
  import { normalizeOptionalString, readStringField } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  import { AsyncResource } from "node:async_hooks";
6
6
  import { createDeferred } from "openclaw/plugin-sdk/extension-shared";
@@ -9,20 +9,20 @@ import { r as projectCodexUserItemText } from "./transcript-history-projection-B
9
9
  import { n as codexUpstreamBaseline, t as codexLastTerminalTurnId } from "./session-upstream-marker-D15C9NHp.mjs";
10
10
  import { r as buildCodexPluginAppCacheKey } from "./plugin-app-cache-key-BW8rd98k.mjs";
11
11
  import { n as readCodexSessionMeta } from "./session-catalog-provenance-CmsOE5mh.mjs";
12
- import "./request-jSbhc1sg.mjs";
12
+ import "./request-DD3u22uv.mjs";
13
13
  import { r as resolveOpenClawExecPolicyForCodexAppServer } from "./config-0Gxk3_eq.mjs";
14
14
  import { r as resolveCodexSupervisionAppServerRuntimeOptions } from "./config-runtime-cUYrqu_a.mjs";
15
15
  import { a as fingerprintCodexMirrorSourceMessage, c as readCodexMirrorSourceFingerprint } from "./transcript-mirror-attestation-YSegaktH.mjs";
16
- import { P as claimCodexAppServerLiveThread, R as hasCodexAppServerLiveThread, f as readCodexAppServerClientDesktopGenerationFingerprint } from "./shared-client-qhyYWbew.mjs";
17
- import { m as assertCodexThreadForkResponse, p as assertCodexThreadAcceptsDirectInput, s as isCodexAppServerPrewriteRequestCancellationError } from "./client-C8lgBOoO.mjs";
18
- import { A as buildCodexNativeHookRelayId, Ct as mergeCodexThreadConfigs, D as assertCodexNativeHookRelayAllowed, H as parseCodexNativeToolCatalog, L as checkCodexThreadAppAvailability, N as resolveCodexNativeHookRelayEvents, O as buildCodexNativeHookRelayConfig, Q as fingerprintUserMcpServersConfigPatch, Tt as shouldBuildCodexPluginThreadConfig, U as applyCodexNativeSkillIsolation, W as resolveCodexNativeSkillIsolation, Z as fingerprintJsonObject, a as buildCodexThreadConfiguration, g as buildDeveloperInstructions, gt as buildCodexPluginThreadConfig, m as resolveCodexWebSearchPlan, q as codexDynamicToolsFingerprint } from "./thread-requests-CL1e8Wmx.mjs";
16
+ import { P as claimCodexAppServerLiveThread, R as hasCodexAppServerLiveThread, f as readCodexAppServerClientDesktopGenerationFingerprint } from "./shared-client-DeenOD8U.mjs";
17
+ import { m as assertCodexThreadForkResponse, p as assertCodexThreadAcceptsDirectInput, s as isCodexAppServerPrewriteRequestCancellationError } from "./client-BIRVBXXb.mjs";
18
+ import { A as buildCodexNativeHookRelayId, Ct as mergeCodexThreadConfigs, D as assertCodexNativeHookRelayAllowed, H as parseCodexNativeToolCatalog, L as checkCodexThreadAppAvailability, N as resolveCodexNativeHookRelayEvents, O as buildCodexNativeHookRelayConfig, Q as fingerprintUserMcpServersConfigPatch, Tt as shouldBuildCodexPluginThreadConfig, U as applyCodexNativeSkillIsolation, W as resolveCodexNativeSkillIsolation, Z as fingerprintJsonObject, a as buildCodexThreadConfiguration, g as buildDeveloperInstructions, gt as buildCodexPluginThreadConfig, m as resolveCodexWebSearchPlan, q as codexDynamicToolsFingerprint } from "./thread-requests-Dwg2b4Xl.mjs";
19
19
  import "./session-binding-Ce7BqiPN.mjs";
20
- import { n as CodexThreadPolicyHandoffError, o as refreshCodexThreadPolicy } from "./thread-policy-DoNxbhqt.mjs";
21
- import "./thread-ownership-DwuSrt3s.mjs";
20
+ import { n as CodexThreadPolicyHandoffError, o as refreshCodexThreadPolicy } from "./thread-policy-DCC9lQjC.mjs";
21
+ import "./thread-ownership-CSDZ6mHd.mjs";
22
22
  import { n as resolveCodexNativeExecutionPolicy } from "./native-execution-policy-ClzpdG3D.mjs";
23
- import { l as isCodexDynamicToolExcluded } from "./shell-dynamic-tools-D3Brj3g9.mjs";
24
- import { c as prepareCodexWorkspaceDeveloperInstructions } from "./attempt-workspace-context-BY0jprWJ.mjs";
25
- import { n as resolveCodexProviderWebSearchSupportForClient } from "./provider-capabilities-D68Whix6.mjs";
23
+ import { l as isCodexDynamicToolExcluded } from "./shell-dynamic-tools-BqGszXcq.mjs";
24
+ import { c as prepareCodexWorkspaceDeveloperInstructions } from "./attempt-workspace-context-BmCutoyg.mjs";
25
+ import { n as resolveCodexProviderWebSearchSupportForClient } from "./provider-capabilities-B4yq6UgQ.mjs";
26
26
  import { n as prepareCodexSessionInitialization } from "./session-initialization-D6dtFQkE.mjs";
27
27
  import { createImportedCodexSession } from "./session-history-import-NWKPa4ZO.mjs";
28
28
  import { isRecord, normalizeOptionalString, readNonBlankString } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -1,5 +1,5 @@
1
1
  import { t as buildCodexAppServerUsageSnapshot } from "./rate-limits-CMPy24F5.mjs";
2
- import { t as readCodexAppServerUsage } from "./request-jSbhc1sg.mjs";
2
+ import { t as readCodexAppServerUsage } from "./request-DD3u22uv.mjs";
3
3
  import "./config-0Gxk3_eq.mjs";
4
4
  import { n as resolveCodexAppServerRuntimeOptions } from "./config-runtime-cUYrqu_a.mjs";
5
5
  import { CODEX_APP_SERVER_AUTH_MARKER } from "openclaw/plugin-sdk/agent-runtime";
@@ -1,7 +1,7 @@
1
1
  import { i as isJsonObject } from "./protocol-CANUwXJ3.mjs";
2
2
  import { a as shouldRefreshCodexRateLimitsForUsageLimitMessage, i as resolveCodexUsageLimitResetAtMs, n as formatCodexUsageLimitErrorMessage } from "./rate-limits-CMPy24F5.mjs";
3
3
  import { t as CODEX_CONTROL_METHODS } from "./capabilities-kQntafj_.mjs";
4
- import { X as readRecentCodexRateLimits, Y as readCodexRateLimitsRevision, Z as rememberCodexRateLimitsRead } from "./shared-client-qhyYWbew.mjs";
4
+ import { X as readRecentCodexRateLimits, Y as readCodexRateLimitsRevision, Z as rememberCodexRateLimitsRead } from "./shared-client-DeenOD8U.mjs";
5
5
  import { readStringField } from "openclaw/plugin-sdk/string-coerce-runtime";
6
6
  import { embeddedAgentLog, formatErrorMessage } from "openclaw/plugin-sdk/agent-harness-runtime";
7
7
  import { markAuthProfileBlockedUntil } from "openclaw/plugin-sdk/agent-runtime";
@@ -1,6 +1,6 @@
1
- import { p as buildCodexNativeWebSearchThreadConfig } from "./thread-requests-CL1e8Wmx.mjs";
2
- import { l as projectCodexWebSearchItem } from "./native-subagent-monitor-BUYOUp9X.mjs";
3
- import { runBoundedCodexAppServerTurn } from "./bounded-turn-pGsfXcmH.mjs";
1
+ import { p as buildCodexNativeWebSearchThreadConfig } from "./thread-requests-Dwg2b4Xl.mjs";
2
+ import { l as projectCodexWebSearchItem } from "./native-subagent-monitor-B2C8D_N0.mjs";
3
+ import { runBoundedCodexAppServerTurn } from "./bounded-turn-Cv4uIEzz.mjs";
4
4
  import { readStringParam, resolveSearchTimeoutSeconds, wrapWebContent } from "openclaw/plugin-sdk/provider-web-search";
5
5
  //#region extensions/codex/src/web-search-provider.runtime.ts
6
6
  async function executeCodexWebSearchProviderTool(ctx, args, executionContext, options) {
@@ -1,4 +1,4 @@
1
- import { t as createCodexCatalogDecoder } from "./.setup/client-catalog-response-Bqp7WG51.mjs";
1
+ import { t as createCodexCatalogDecoder } from "./.setup/client-catalog-response-BNFDYAKh.mjs";
2
2
  import { serveWorkerTasks } from "openclaw/plugin-sdk/worker-task-server";
3
3
  //#region extensions/codex/catalog-page.worker.ts
4
4
  const decode = createCodexCatalogDecoder();