@openclaw/codex 2026.9.34 → 2026.9.35

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 (98) hide show
  1. package/dist/.setup/{account-usage-runtime-CD8HYWaz.mjs → account-usage-runtime-BaJamBiM.mjs} +3 -3
  2. package/dist/.setup/{apply-DN-qPbcH.mjs → apply-CxwOGLd_.mjs} +8 -8
  3. package/dist/.setup/{attempt-client-cleanup-93r-CLTi.mjs → attempt-client-cleanup-BVtNsTOE.mjs} +4 -4
  4. package/dist/.setup/{attempt-workspace-context-ejEuxrY1.mjs → attempt-workspace-context-XRsWP165.mjs} +1 -1
  5. package/dist/.setup/{auth-binding-BLWz7stm.mjs → auth-binding-Bnaj0_iV.mjs} +1 -1
  6. package/dist/.setup/{auth-cache-key-Bs_3kRJD.mjs → auth-cache-key-CskfconU.mjs} +3 -3
  7. package/dist/.setup/{binding-connection-DTtN1KrX.mjs → binding-connection-DRPlnIgg.mjs} +2 -2
  8. package/dist/.setup/{binding-connection.runtime-6TpgD1M6.mjs → binding-connection.runtime-DC3oUqo-.mjs} +1 -1
  9. package/dist/.setup/{bounded-turn-I8Vb-qq3.mjs → bounded-turn-DBwLoFDR.mjs} +11 -11
  10. package/dist/.setup/{bounded-turn-isolation-B8K_ylqk.mjs → bounded-turn-isolation-Ce-oOk-D.mjs} +2 -2
  11. package/dist/.setup/{build-state--SrHyc6r.mjs → build-state-B3lvV1Op.mjs} +1 -1
  12. package/dist/.setup/{client-CyquSiJ2.mjs → client-DcTISXe3.mjs} +7 -7
  13. package/dist/.setup/{client-catalog-response-B9pLl58Y.mjs → client-catalog-response-BcbsrQXY.mjs} +1 -1
  14. package/dist/.setup/{command-dispatch-BPLz7tlx.mjs → command-dispatch-MOoD3rsD.mjs} +1 -1
  15. package/dist/.setup/{command-handlers-95-WVrcl.mjs → command-handlers-Cevt_YwM.mjs} +22 -22
  16. package/dist/.setup/{command-rpc-BDfCWgc_.mjs → command-rpc-kf7Uq4L-.mjs} +11 -11
  17. package/dist/.setup/{compact-5zzFlH-W.mjs → compact-BNKuKa7o.mjs} +12 -12
  18. package/dist/.setup/{config-DKhXquav.mjs → config-DqmrqI23.mjs} +2 -2
  19. package/dist/.setup/{config-runtime-C0NbLms1.mjs → config-runtime-DDhvIeUC.mjs} +1 -1
  20. package/dist/.setup/{conversation-binding-C-0jWdSo.mjs → conversation-binding-CKYGEvcX.mjs} +15 -15
  21. package/dist/.setup/{conversation-binding-data-C746z5Pn.mjs → conversation-binding-data-DlsG-dQu.mjs} +1 -1
  22. package/dist/.setup/{conversation-control-BEotI-gH.mjs → conversation-control-CoWUL35l.mjs} +5 -5
  23. package/dist/.setup/{dynamic-tools-D3NAwGw3.mjs → dynamic-tools-Dr0ye5P3.mjs} +7 -7
  24. package/dist/.setup/{effective-mcp-catalog-C0DfQNYU.mjs → effective-mcp-catalog-BFJCwjSI.mjs} +4 -4
  25. package/dist/.setup/{ephemeral-turn-ksZ9NfsS.mjs → ephemeral-turn-Dj3iTfSP.mjs} +2 -2
  26. package/dist/.setup/{event-projector-assistant-message-BmWQXFLV.mjs → event-projector-assistant-message-DXDX94zH.mjs} +1 -1
  27. package/dist/.setup/{isolated-completion-Ci27cKqA.mjs → isolated-completion-GB52W-qA.mjs} +6 -6
  28. package/dist/.setup/{managed-binary-B6hQ1UKR.mjs → managed-binary-Ckgvm_4V.mjs} +1 -1
  29. package/dist/.setup/{model-catalog-qzAfnHzR.mjs → model-catalog-DxSrOSY0.mjs} +7 -7
  30. package/dist/.setup/{models-BbEE4EWS.mjs → models-BwkZaXXj.mjs} +3 -3
  31. package/dist/.setup/{native-auth-BN-BD2AV.mjs → native-auth-BNGz77PF.mjs} +3 -3
  32. package/dist/.setup/{native-subagent-monitor-B9aAqfnU.mjs → native-subagent-monitor-g-ZDkvCr.mjs} +116 -27
  33. package/dist/.setup/{native-subagent-pending-assignments-DwkCzLvD.mjs → native-subagent-pending-assignments-XHNn4k5q.mjs} +51 -14
  34. package/dist/.setup/{native-task-assignments-DMQ0g3hu.mjs → native-task-assignments-Dna952zv.mjs} +2 -2
  35. package/dist/.setup/{node-cli-sessions-HC4W6FLI.mjs → node-cli-sessions-BwhIYgCZ.mjs} +2 -2
  36. package/dist/.setup/{node-exec-server.runtime-BS7jsvK-.mjs → node-exec-server.runtime-9IZtsOmo.mjs} +2 -2
  37. package/dist/.setup/{plan-DTyFfTkk.mjs → plan-Cwp_21m-.mjs} +5 -5
  38. package/dist/.setup/{plugin-activation-cNHRfaxU.mjs → plugin-activation-BaDnJKJd.mjs} +2 -2
  39. package/dist/.setup/{plugin-inventory-Cky2XJUw.mjs → plugin-inventory-B4uqIw4J.mjs} +1 -1
  40. package/dist/.setup/{plugin-metadata-cache-Q4ZFn6UH.mjs → plugin-metadata-cache-C-LRxilF.mjs} +7 -7
  41. package/dist/.setup/{provider-Cnr_icbk.mjs → provider-DUotqBZ6.mjs} +4 -4
  42. package/dist/.setup/{provider-capabilities-ByhBukaD.mjs → provider-capabilities-DBs9l8oL.mjs} +2 -2
  43. package/dist/.setup/{request-DxKAfWyy.mjs → request-CWERwKIL.mjs} +5 -5
  44. package/dist/.setup/{run-attempt-BZKhzSrb.mjs → run-attempt-ypT0LYSD.mjs} +75 -40
  45. package/dist/.setup/{runtime-artifact-D7lCXdhV.mjs → runtime-artifact-Riq878B2.mjs} +3 -3
  46. package/dist/.setup/{runtime-artifact-connection-D68qQn1m.mjs → runtime-artifact-connection-Bjv8P6Sx.mjs} +2 -2
  47. package/dist/.setup/{sandbox-guard-DjCz2eOw.mjs → sandbox-guard-OIYEmTRF.mjs} +1 -1
  48. package/dist/.setup/{session-binding-DGCYAfvD.mjs → session-binding-Fn7Ekzuv.mjs} +19 -4
  49. package/dist/.setup/{session-binding-record-Oe9L-CNY.mjs → session-binding-record-CUKpUKVm.mjs} +1 -1
  50. package/dist/.setup/{session-binding-sidecars-jo6H8dFr.mjs → session-binding-sidecars-BuEALwJY.mjs} +1 -1
  51. package/dist/.setup/{session-catalog-BaVqm4-Q.mjs → session-catalog-DMagZcW-.mjs} +22 -22
  52. package/dist/.setup/{session-catalog-adoption-BU_pHWG7.mjs → session-catalog-adoption-58bqOngU.mjs} +5 -5
  53. package/dist/.setup/{session-catalog-archive-spHfihri.mjs → session-catalog-archive-BM9gCB82.mjs} +5 -5
  54. package/dist/.setup/{session-catalog-events-D9zC7gRb.mjs → session-catalog-events-r59AxcQ4.mjs} +3 -3
  55. package/dist/.setup/{session-catalog-index-CNKpHanP.mjs → session-catalog-index-CY1lNpxF.mjs} +8 -8
  56. package/dist/.setup/{session-catalog-index-order-BcQpHks3.mjs → session-catalog-index-order-DQhmgM3b.mjs} +1 -1
  57. package/dist/.setup/{session-catalog-index-state-TeO7EyO-.mjs → session-catalog-index-state-DhLoAnfy.mjs} +3 -3
  58. package/dist/.setup/{session-catalog-limits-DDxOsQeC.mjs → session-catalog-limits-bz5ZvjtY.mjs} +1 -1
  59. package/dist/.setup/{session-catalog-list-request-CvtxrYSe.mjs → session-catalog-list-request-A1wN4sKw.mjs} +2 -2
  60. package/dist/.setup/{session-catalog-native-projection-DhId_sl8.mjs → session-catalog-native-projection-CXTe4qQr.mjs} +4 -4
  61. package/dist/.setup/{session-catalog-node-adoption-DgXvSGu0.mjs → session-catalog-node-adoption-BdS7zDuY.mjs} +2 -2
  62. package/dist/.setup/{session-catalog-node-continue-DjKXHBbi.mjs → session-catalog-node-continue-XFJG3JGh.mjs} +5 -5
  63. package/dist/.setup/{session-catalog-node-lookup-CtAXI5W5.mjs → session-catalog-node-lookup-D9AP5D5o.mjs} +2 -2
  64. package/dist/.setup/{session-catalog-parsing-CPGaPYr-.mjs → session-catalog-parsing-CnEH565l.mjs} +1 -1
  65. package/dist/.setup/{session-catalog-projection-DcqN7DuI.mjs → session-catalog-projection-DcDKizZd.mjs} +4 -4
  66. package/dist/.setup/{session-cli-TEVHpWaE.mjs → session-cli-C3GejWcm.mjs} +2 -2
  67. package/dist/.setup/{session-history-import-WhX-X33a.mjs → session-history-import-tquj9DCz.mjs} +4 -4
  68. package/dist/.setup/{session-initialization-6aveB9qb.mjs → session-initialization-DefAI1_5.mjs} +2 -2
  69. package/dist/.setup/{session-permission-policy-Ci_fVX6y.mjs → session-permission-policy-7lM447LW.mjs} +1 -1
  70. package/dist/.setup/{session-retirement-CW0ciVbW.mjs → session-retirement-CQCMiDul.mjs} +6 -6
  71. package/dist/.setup/{settled-turn-finalizer-DlPT87wW.mjs → settled-turn-finalizer-w92T5Rbb.mjs} +7 -7
  72. package/dist/.setup/{shared-client-tOOyadmg.mjs → shared-client-ZXKMsK6f.mjs} +44 -31
  73. package/dist/.setup/{shared-client-lifecycle-CJ0lYVCW.mjs → shared-client-lifecycle-BH_y_i8l.mjs} +24 -2
  74. package/dist/.setup/{side-question-BbnuMFTT.mjs → side-question-BBZJibHK.mjs} +15 -15
  75. package/dist/.setup/{source-Cr8STZpF.mjs → source-Iusn97ly.mjs} +4 -4
  76. package/dist/.setup/{thread-lifecycle-DcNw9n7E.mjs → thread-lifecycle-CzzYMvTL.mjs} +13 -13
  77. package/dist/.setup/{thread-ownership-DDban_4i.mjs → thread-ownership-BT_SeSUp.mjs} +4 -4
  78. package/dist/.setup/{thread-policy-TTAb-1yF.mjs → thread-policy-MM5YD22L.mjs} +3 -3
  79. package/dist/.setup/{thread-requests-DmkmrGIt.mjs → thread-requests-y_MnVuWC.mjs} +8 -8
  80. package/dist/.setup/{thread-resume-eo3IhOhh.mjs → thread-resume-B9clyqXE.mjs} +5 -5
  81. package/dist/.setup/{transcript-mirror-kxmCYsuF.mjs → transcript-mirror-BRNhyb1o.mjs} +1 -1
  82. package/dist/.setup/{transport-stdio-CbutOIEh.mjs → transport-stdio-DU8dIOCj.mjs} +1 -1
  83. package/dist/.setup/{transport-websocket-BTBE-LD9.mjs → transport-websocket-zu3jRPnu.mjs} +1 -1
  84. package/dist/.setup/{upstream-session-fork-BbUNlJPZ.mjs → upstream-session-fork-2ipYynVl.mjs} +14 -14
  85. package/dist/.setup/{usage-CDiI_zkr.mjs → usage-BgB8DOas.mjs} +3 -3
  86. package/dist/.setup/{usage-limit-error-BLnJh1mB.mjs → usage-limit-error-B1FCZdeH.mjs} +1 -1
  87. package/dist/.setup/{web-search-provider.runtime-B_E2kpZN.mjs → web-search-provider.runtime-BWbZnYAL.mjs} +2 -2
  88. package/dist/.source-module-urls/78bb81623f5bb4c04c8cbd3fb1e9f10b4529f4811dc3cd99cedf5880f01c9b28.json +1 -0
  89. package/dist/api.js +3 -3
  90. package/dist/catalog-page.worker.js +1 -1
  91. package/dist/cli-metadata.js +1 -1
  92. package/dist/doctor-contract-api.js +5 -5
  93. package/dist/harness.js +19 -19
  94. package/dist/index.js +52 -42
  95. package/dist/media-understanding-provider.js +2 -2
  96. package/dist/migration-provider-api.js +1 -1
  97. package/dist/provider-discovery.js +1 -1
  98. package/package.json +4 -4
@@ -1,16 +1,16 @@
1
1
  import { n as readCodexRuntimeModelId } from "./model-runtime-BdqzOMkU.mjs";
2
- import { c as resolveRecoverableCodexPluginConfigKeys } from "./plugin-inventory-Cky2XJUw.mjs";
3
- import { g as createCodexNativeSubagentHistoryOwner } from "./native-subagent-pending-assignments-DwkCzLvD.mjs";
2
+ import { c as resolveRecoverableCodexPluginConfigKeys } from "./plugin-inventory-B4uqIw4J.mjs";
3
+ import { g as createCodexNativeSubagentHistoryOwner } from "./native-subagent-pending-assignments-XHNn4k5q.mjs";
4
4
  import { i as isJsonObject, r as flattenCodexDynamicToolFunctions } from "./protocol-CANUwXJ3.mjs";
5
- import { i as matchesCodexNativeSubagentSubmissionBinding, n as assertCodexBindingMayBeReplaced, v as sessionBindingIdentity } from "./session-binding-record-Oe9L-CNY.mjs";
6
- import { n as defineCodexBuildState } from "./build-state--SrHyc6r.mjs";
5
+ import { i as matchesCodexNativeSubagentSubmissionBinding, n as assertCodexBindingMayBeReplaced, v as sessionBindingIdentity } from "./session-binding-record-CUKpUKVm.mjs";
6
+ import { n as defineCodexBuildState } from "./build-state-B3lvV1Op.mjs";
7
7
  import { c as shouldAutoApproveCodexAppServerApprovals, l as withMcpElicitationsApprovalPolicy, m as readCodexRequirementsToml, n as hasCodexMcpToolApprovalOverrides } from "./config-security-CE-FcGw9.mjs";
8
8
  import { c as isCodexPairedNodeRemoteExecPlacementSandbox, d as readCodexPluginConfig, f as resolveCodexPluginsPolicy, l as isCodexRemoteExecPlacementSandbox, u as isCodexSandboxExecServerEnabled } from "./config-parsing-b088LyhT.mjs";
9
9
  import { n as isCodexAppServerProxyLaunch } from "./launch-args-DbFCehO7.mjs";
10
10
  import { t as resolveCodexAppServerHomeDir } from "./auth-start-options-BPIPeEX8.mjs";
11
11
  import { i as resolveCodexAppServerHomeScope, l as resolveCodexModelBackedReviewerPolicyContext, o as resolveCodexComputerUseConfig } from "./config-options-CzyWLTJt.mjs";
12
- import { c as resolveCodexAppServerPreparedApiKeyCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey } from "./auth-cache-key-Bs_3kRJD.mjs";
13
- import { d as retireSharedCodexAppServerClientIfCurrent } from "./shared-client-lifecycle-CJ0lYVCW.mjs";
12
+ import { c as resolveCodexAppServerPreparedApiKeyCacheKey, s as resolveCodexAppServerFallbackApiKeyCacheKey } from "./auth-cache-key-CskfconU.mjs";
13
+ import { f as retireSharedCodexAppServerClientIfCurrent } from "./shared-client-lifecycle-BH_y_i8l.mjs";
14
14
  import { o as formatCodexDisplayText } from "./command-formatters-R3ckE3Co.mjs";
15
15
  import { t as isIncognitoSessionKey } from "./incognito-session-C5ve_-63.mjs";
16
16
  import { n as CodexAppServerRpcError } from "./rpc-error-BlD2vuzn.mjs";
@@ -19,41 +19,41 @@ import { t as readCodexAsyncQuestions } from "./async-questions-DdhOCwGi.mjs";
19
19
  import { a as readCodexProviderRefusal, d as splitPlanText, i as readCodexErrorNotificationMessage, l as readNonNegativeInteger, n as extractRawAssistantText, s as readItem, u as readNullableString } from "./event-projector-values-DJSz8BTk.mjs";
20
20
  import { r as readMirrorIdentity, t as attachCodexMirrorIdentity } from "./upstream-prompt-provenance-fXkKbPVC.mjs";
21
21
  import { a as defaultCodexAppInventoryCache, n as buildCodexAppServerRuntimeFingerprint, r as buildCodexPluginAppCacheKey } from "./plugin-app-cache-key-BL9B5H0L.mjs";
22
- import { i as resolveCodexBindingAppServerConnection, r as requireCodexSupervisionModelSelection, t as assertCodexSessionRuntimeOwnership } from "./binding-connection-DTtN1KrX.mjs";
23
- import { r as requestCodexAppServerClientJson, t as CodexAppServerScopedRequestRejectedError } from "./request-DxKAfWyy.mjs";
24
- import { n as canUseCodexModelBackedApprovalsReviewerForModel, r as resolveOpenClawExecPolicyForCodexAppServer } from "./config-DKhXquav.mjs";
22
+ import { i as resolveCodexBindingAppServerConnection, r as requireCodexSupervisionModelSelection, t as assertCodexSessionRuntimeOwnership } from "./binding-connection-DRPlnIgg.mjs";
23
+ import { r as requestCodexAppServerClientJson, t as CodexAppServerScopedRequestRejectedError } from "./request-CWERwKIL.mjs";
24
+ import { n as canUseCodexModelBackedApprovalsReviewerForModel, r as resolveOpenClawExecPolicyForCodexAppServer } from "./config-DqmrqI23.mjs";
25
25
  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 } from "./context-engine-projection-PezSESth.mjs";
26
26
  import { o as hasCodexMirrorOrigin, t as applyCodexTranscriptTaint } from "./transcript-mirror-attestation-YSegaktH.mjs";
27
27
  import { t as readCodexMirroredSessionHistoryMessages } from "./session-history-D83lJWHG.mjs";
28
28
  import { i as resolveCodexAppServerAuthProfileIdForAgent, r as resolveCodexAppServerAuthProfileId } from "./auth-profile-B0okYl2D.mjs";
29
- import { E as isCodexContextRestartSelectionChangedError, I as ensureCodexAppServerClientRuntime, M as getCodexInferenceThreadQualification, U as prepareCodexWorkspaceReferences, W as protectCodexAppServerLiveThread, X as readCodexRateLimitsRevision, Z as readRecentCodexRateLimits, _ as retainSharedCodexAppServerClientIfCurrent, _t as withCodexStartupTimeout, a as clearSharedCodexAppServerClientIfCurrentAndUnclaimed, c as getLeasedSharedCodexAppServerClient, dt as CodexAppServerStartupError, f as readCodexAppServerClientDesktopGenerationFingerprint, ft as TURN_FINALIZE_DRAIN_ABORT_GRACE_MS, gt as resolveCodexStartupTimeoutMs, h as releaseLeasedSharedCodexAppServerClient, i as clearSharedCodexAppServerClientIfCurrent, j as getCodexInferenceThread, l as getSharedCodexAppServerClient, nt as resolveCodexAppServerAuthAccountCacheKey, pt as TURN_TERMINAL_SETTLEMENT_TIMEOUT_MS, rt as resolveCodexAppServerPreparedAuthHandoff, s as createIsolatedCodexAppServerClient, u as isCodexAppServerStartSelectionChangedError, w as CodexThreadClientReplacementError, x as CODEX_APP_SERVER_CONTEXT_RESTART_SELECTION_CHANGED } from "./shared-client-tOOyadmg.mjs";
29
+ import { E as isCodexContextRestartSelectionChangedError, I as ensureCodexAppServerClientRuntime, M as getCodexInferenceThreadQualification, U as prepareCodexWorkspaceReferences, W as protectCodexAppServerLiveThread, X as readCodexRateLimitsRevision, Z as readRecentCodexRateLimits, _ as retainSharedCodexAppServerClientIfCurrent, _t as withCodexStartupTimeout, a as clearSharedCodexAppServerClientIfCurrentAndUnclaimed, c as getLeasedSharedCodexAppServerClient, dt as CodexAppServerStartupError, f as readCodexAppServerClientDesktopGenerationFingerprint, ft as TURN_FINALIZE_DRAIN_ABORT_GRACE_MS, gt as resolveCodexStartupTimeoutMs, h as releaseLeasedSharedCodexAppServerClient, i as clearSharedCodexAppServerClientIfCurrent, j as getCodexInferenceThread, l as getSharedCodexAppServerClient, nt as resolveCodexAppServerAuthAccountCacheKey, pt as TURN_TERMINAL_SETTLEMENT_TIMEOUT_MS, rt as resolveCodexAppServerPreparedAuthHandoff, s as createIsolatedCodexAppServerClient, u as isCodexAppServerStartSelectionChangedError, w as CodexThreadClientReplacementError, x as CODEX_APP_SERVER_CONTEXT_RESTART_SELECTION_CHANGED } from "./shared-client-ZXKMsK6f.mjs";
30
30
  import { a as isCodexResponsesOAuthRun, r as isCodexResponsesOAuth } from "./responses-oauth-twnuTaAa.mjs";
31
- import { A as handleDynamicToolCallWithTimeout, E as readCodexTurnCompletedNotification, F as resolveTerminalDynamicToolBatchAction, I as shouldBlockTerminalReleaseForNonTerminalDynamicToolResult, L as shouldReleaseTurnAfterTerminalDynamicTool, M as isDynamicToolTerminalDiagnosticEvent, N as isMatchingDynamicToolTerminalDiagnostic, P as resolveDynamicToolCallTimeoutMs, R as toCodexDynamicToolProgressResponse, S as assertCodexTurnStartResponse, U as CODEX_APP_SERVER_OPT_OUT_NOTIFICATION_METHODS, c as isCodexAppServerIndeterminateTransportError, i as isCodexAppServerApprovalRequest, j as hasPendingDynamicToolTerminalDiagnostic, k as createCodexElicitationResponse, m as CodexServerRequestResolvedError, o as isCodexAppServerConnectionClosedError, p as resolveCodexAppServerClientInstanceId, r as getCodexAppServerClientInstanceId, s as isCodexAppServerIndeterminateRequestCancellationError, w as readCodexDynamicToolCallParams, z as toCodexDynamicToolProtocolResponse } from "./client-CyquSiJ2.mjs";
32
- import { n as isCodexWebSocketOpenFailure } from "./transport-websocket-BTBE-LD9.mjs";
33
- import { M as matchesCodexSnapshotTurn, N as shouldClearTerminalPresentationForNativeItem, _ as CodexProjectionDiagnostics, d as shouldRetireCodexStartupClient, f as terminateCodexBackgroundTerminals, h as getCodexAppServerTurnRouter, k as itemName, m as CODEX_APP_SERVER_NATIVE_TURN_WAIT_TIMEOUT_MS, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, p as unsubscribeCodexThreadBestEffort, r as CodexAppServerUnsafeSubscriptionError, s as interruptCodexTurnAndWaitBestEffort, u as retireUnsafeCodexTurnClientBestEffort, v as isCodexNotificationForTurn, y as readCodexNotificationThreadId } from "./attempt-client-cleanup-93r-CLTi.mjs";
34
- import { r as prepareCodexAppServerAuthBinding } from "./auth-binding-BLWz7stm.mjs";
31
+ import { A as handleDynamicToolCallWithTimeout, E as readCodexTurnCompletedNotification, F as resolveTerminalDynamicToolBatchAction, I as shouldBlockTerminalReleaseForNonTerminalDynamicToolResult, L as shouldReleaseTurnAfterTerminalDynamicTool, M as isDynamicToolTerminalDiagnosticEvent, N as isMatchingDynamicToolTerminalDiagnostic, P as resolveDynamicToolCallTimeoutMs, R as toCodexDynamicToolProgressResponse, S as assertCodexTurnStartResponse, U as CODEX_APP_SERVER_OPT_OUT_NOTIFICATION_METHODS, c as isCodexAppServerIndeterminateTransportError, i as isCodexAppServerApprovalRequest, j as hasPendingDynamicToolTerminalDiagnostic, k as createCodexElicitationResponse, m as CodexServerRequestResolvedError, o as isCodexAppServerConnectionClosedError, p as resolveCodexAppServerClientInstanceId, r as getCodexAppServerClientInstanceId, s as isCodexAppServerIndeterminateRequestCancellationError, w as readCodexDynamicToolCallParams, z as toCodexDynamicToolProtocolResponse } from "./client-DcTISXe3.mjs";
32
+ import { n as isCodexWebSocketOpenFailure } from "./transport-websocket-zu3jRPnu.mjs";
33
+ import { M as matchesCodexSnapshotTurn, N as shouldClearTerminalPresentationForNativeItem, _ as CodexProjectionDiagnostics, d as shouldRetireCodexStartupClient, f as terminateCodexBackgroundTerminals, h as getCodexAppServerTurnRouter, k as itemName, m as CODEX_APP_SERVER_NATIVE_TURN_WAIT_TIMEOUT_MS, n as CODEX_APP_SERVER_UNSUBSCRIBE_TIMEOUT_MS, o as closeCodexStartupClientBestEffort, p as unsubscribeCodexThreadBestEffort, r as CodexAppServerUnsafeSubscriptionError, s as interruptCodexTurnAndWaitBestEffort, u as retireUnsafeCodexTurnClientBestEffort, v as isCodexNotificationForTurn, y as readCodexNotificationThreadId } from "./attempt-client-cleanup-BVtNsTOE.mjs";
34
+ import { r as prepareCodexAppServerAuthBinding } from "./auth-binding-Bnaj0_iV.mjs";
35
35
  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";
36
- import { n as listAllCodexAppServerModels } from "./models-BbEE4EWS.mjs";
37
- import { A as createCodexNativeHookRelay, B as loadCodexNativeToolCatalog, D as buildCodexNativeHookRelayConfig, E as assertCodexNativeHookRelayAllowed, K as codexDynamicToolsFingerprint, M as resolveCodexNativeHookRelayEvents, N as resolveCodexNativeHookRelayTtlMs, O as buildCodexNativeHookRelayDisabledConfig, P as scheduleCodexNativeHookRelayUnregister, St as mergeCodexThreadConfigs, T as CodexManagedHooksOnlyError, W as areCodexDynamicToolFingerprintsCompatible, X as fingerprintJsonObject, _t as buildCodexPluginThreadConfigTimeoutFallback, gt as buildCodexPluginThreadConfigInputFingerprint, h as buildDeveloperInstructions, ht as buildCodexPluginThreadConfig, ot as filterCodexDynamicTools, p as resolveCodexWebSearchPlan, pt as resolveCodexDynamicToolsLoadingForRuntime, q as codexLegacyDynamicToolsFingerprint, tt as stabilizeJsonValue, ut as isSystemAgentOnlyCodexDynamicToolAllowlist, w as CODEX_NATIVE_HOOK_RELAY_TTL_GRACE_MS, wt as shouldBuildCodexPluginThreadConfig, x as joinPresentSections, y as resolveCodexAppServerThreadModelSelection, z as hasCodexNativeToolCatalog } from "./thread-requests-DmkmrGIt.mjs";
38
- import { _ as readCodexMcpToolUiVisibility, a as buildTurnStartParams, b as isContextEngineBindingCompatible, c as assertScheduledCodexAppAuthorityRuntime, d as buildScheduledCodexAppServerConnectionIdentity, f as captureScheduledCodexAppAuthority, g as readCodexMcpToolConnectorId, h as resolveScheduledCodexAppCreatorCaptureDecision, i as buildTurnCollaborationMode, l as buildLegacyScheduledCodexAppRecoveryPrompt, m as readCurrentCodexScheduledAppPolicy, n as buildCodexParentLocalInstructions, o as buildCodexUserInput, p as intersectCodexPluginThreadConfigWithScheduledAuthority, s as startOrResumeThread, t as buildCodexHistoryProvenancePrefix, u as buildScheduledCodexAppAuthorityInputFingerprint, v as isCodexAppServerProfilerEnabled, y as buildContextEngineBinding } from "./thread-lifecycle-DcNw9n7E.mjs";
39
- import { a as resolveCodexRunSessionBindingAuthority, n as createCodexSessionGenerationSupersededError, o as resolveCodexSessionBinding } from "./session-binding-DGCYAfvD.mjs";
40
- import { a as CodexToolTranscriptProjection, b as sanitizeCodexAgentEventRecord, c as shouldEmitTranscriptToolProgress, i as emitCodexAgentEvent, p as requestPluginApprovalOutcome, r as CodexEventProjection, s as CodexToolProgressProjection, t as codexNativeSubagentMonitorRuntime, v as isCodexCommandBearingToolCall, x as sanitizeCodexToolArguments, y as resolveCodexToolProgressDetailMode } from "./native-subagent-monitor-B9aAqfnU.mjs";
41
- import { n as CodexThreadPolicyHandoffError, s as restoreCodexThreadSkillsCatalogAfterCompaction } from "./thread-policy-TTAb-1yF.mjs";
42
- import { c as withExclusiveCodexAppServerThread, r as retainCodexAppServerBindingSubscription, t as isSameCodexAppServerThreadOwner } from "./thread-ownership-DDban_4i.mjs";
43
- import { c as promptSnapshot, i as mirrorPromptAtTurnStartBestEffort, n as createCodexAppServerUserMessagePersistenceNotifier, o as buildCodexUserPromptMessage, s as buildResolvedCodexUserPromptMessage, t as codexTranscriptMirrorRuntime } from "./transcript-mirror-kxmCYsuF.mjs";
44
- import { a as resolveCodexPromptError, i as refreshCodexUsageLimitPromptError, n as formatCodexTurnStartUsageLimitError, r as markCodexAuthProfileBlockedFromRateLimits, t as CodexUsageLimitPromptError } from "./usage-limit-error-BLnJh1mB.mjs";
36
+ import { n as listAllCodexAppServerModels } from "./models-BwkZaXXj.mjs";
37
+ import { A as createCodexNativeHookRelay, B as loadCodexNativeToolCatalog, D as buildCodexNativeHookRelayConfig, E as assertCodexNativeHookRelayAllowed, K as codexDynamicToolsFingerprint, M as resolveCodexNativeHookRelayEvents, N as resolveCodexNativeHookRelayTtlMs, O as buildCodexNativeHookRelayDisabledConfig, P as scheduleCodexNativeHookRelayUnregister, St as mergeCodexThreadConfigs, T as CodexManagedHooksOnlyError, W as areCodexDynamicToolFingerprintsCompatible, X as fingerprintJsonObject, _t as buildCodexPluginThreadConfigTimeoutFallback, gt as buildCodexPluginThreadConfigInputFingerprint, h as buildDeveloperInstructions, ht as buildCodexPluginThreadConfig, ot as filterCodexDynamicTools, p as resolveCodexWebSearchPlan, pt as resolveCodexDynamicToolsLoadingForRuntime, q as codexLegacyDynamicToolsFingerprint, tt as stabilizeJsonValue, ut as isSystemAgentOnlyCodexDynamicToolAllowlist, w as CODEX_NATIVE_HOOK_RELAY_TTL_GRACE_MS, wt as shouldBuildCodexPluginThreadConfig, x as joinPresentSections, y as resolveCodexAppServerThreadModelSelection, z as hasCodexNativeToolCatalog } from "./thread-requests-y_MnVuWC.mjs";
38
+ import { _ as readCodexMcpToolUiVisibility, a as buildTurnStartParams, b as isContextEngineBindingCompatible, c as assertScheduledCodexAppAuthorityRuntime, d as buildScheduledCodexAppServerConnectionIdentity, f as captureScheduledCodexAppAuthority, g as readCodexMcpToolConnectorId, h as resolveScheduledCodexAppCreatorCaptureDecision, i as buildTurnCollaborationMode, l as buildLegacyScheduledCodexAppRecoveryPrompt, m as readCurrentCodexScheduledAppPolicy, n as buildCodexParentLocalInstructions, o as buildCodexUserInput, p as intersectCodexPluginThreadConfigWithScheduledAuthority, s as startOrResumeThread, t as buildCodexHistoryProvenancePrefix, u as buildScheduledCodexAppAuthorityInputFingerprint, v as isCodexAppServerProfilerEnabled, y as buildContextEngineBinding } from "./thread-lifecycle-CzzYMvTL.mjs";
39
+ import { a as resolveCodexRunSessionBindingAuthority, n as createCodexSessionGenerationSupersededError, o as resolveCodexSessionBinding } from "./session-binding-Fn7Ekzuv.mjs";
40
+ import { a as CodexToolTranscriptProjection, b as sanitizeCodexAgentEventRecord, c as shouldEmitTranscriptToolProgress, i as emitCodexAgentEvent, p as requestPluginApprovalOutcome, r as CodexEventProjection, s as CodexToolProgressProjection, t as codexNativeSubagentMonitorRuntime, v as isCodexCommandBearingToolCall, x as sanitizeCodexToolArguments, y as resolveCodexToolProgressDetailMode } from "./native-subagent-monitor-g-ZDkvCr.mjs";
41
+ import { n as CodexThreadPolicyHandoffError, s as restoreCodexThreadSkillsCatalogAfterCompaction } from "./thread-policy-MM5YD22L.mjs";
42
+ import { c as withExclusiveCodexAppServerThread, r as retainCodexAppServerBindingSubscription, t as isSameCodexAppServerThreadOwner } from "./thread-ownership-BT_SeSUp.mjs";
43
+ import { c as promptSnapshot, i as mirrorPromptAtTurnStartBestEffort, n as createCodexAppServerUserMessagePersistenceNotifier, o as buildCodexUserPromptMessage, s as buildResolvedCodexUserPromptMessage, t as codexTranscriptMirrorRuntime } from "./transcript-mirror-BRNhyb1o.mjs";
44
+ import { a as resolveCodexPromptError, i as refreshCodexUsageLimitPromptError, n as formatCodexTurnStartUsageLimitError, r as markCodexAuthProfileBlockedFromRateLimits, t as CodexUsageLimitPromptError } from "./usage-limit-error-B1FCZdeH.mjs";
45
45
  import { t as persistCodexContextCompactionActivity } from "./context-compaction-activity-CMla5FPJ.mjs";
46
46
  import { t as attemptTerminal } from "./attempt-terminal-gZrxQ35N.mjs";
47
47
  import { a as shouldKeepCodexSharedAbortOpen, i as runCodexAgentEndHook, n as ensureCodexWorkspaceDirOnce, o as withCodexAppServerFastModeServiceTier, r as estimateCodexAppServerProjectedTurnTokens, t as emitCodexAppServerEvent } from "./run-attempt-lifecycle-C-6O3Exn.mjs";
48
48
  import { t as CODEX_INFERENCE_GENERATION_KEY } from "./inference-metadata-CgIf7sOx.mjs";
49
49
  import "./inference-context-D-9gWlTR.mjs";
50
- import { i as createAssistantReasoningMessage, n as createAssistantCommentaryMessage, r as createAssistantMessage, t as createAssistantAsyncMessage } from "./event-projector-assistant-message-BmWQXFLV.mjs";
51
- import { C as readCodexRetainedBackgroundCommands, E as CodexNativeToolLifecycleProjector, S as hasCodexNativeBackgroundProcesses, T as mapCodexAppServerRemoteWorkspacePath, _ as shouldWarnCodexDynamicToolBuildStageSummary, a as emitDynamicToolStartedDiagnostic, b as createCodexNativePreToolUseFailureBuffer, c as buildDynamicTools, d as resolveCodexAppServerHookChannelId, f as resolveCodexExternalSandboxPolicyForOpenClawSandbox, g as shouldRequireCodexSandboxExecServerEnvironment, h as shouldEnableCodexAppServerNativeToolSurface, i as emitDynamicToolErrorDiagnostic, l as disableCodexPluginThreadConfig, m as resolveCodexSandboxEnvironmentSelection, n as projectCodexExecutableDynamicTools, o as emitDynamicToolTerminalDiagnostic, p as resolveCodexMessageToolProvider, r as routeCodexAppServerElicitationRequest, s as handleCodexAppServerApprovalRequest, t as createCodexDynamicToolBridge, u as resolveCodexAppServerExecutionCwd, v as ensureCodexSandboxExecServerEnvironment, w as readBoundedCodexRemoteWorkspaceFile, x as CodexNativeProcessAuthority, y as releaseCodexSandboxExecServerEnvironment } from "./dynamic-tools-D3NAwGw3.mjs";
52
- import { a as resolveCodexAppServerForModelProvider, i as resolveCodexSessionPermissionCwd, n as applyCodexSessionPermissionPolicy, r as resolveCodexEffectiveSessionPermissionPolicy } from "./session-permission-policy-Ci_fVX6y.mjs";
53
- import { a as getCodexContextFileDisplayBasename, c as normalizeCodexDynamicToolName, i as getCodexContextFileBasename, n as CODEX_NATIVE_PROJECT_DOC_BASENAMES, o as isNonEmptyString, r as buildCodexWorkspaceBootstrapContext, s as normalizeCodexContextFilePath } from "./attempt-workspace-context-ejEuxrY1.mjs";
50
+ import { i as createAssistantReasoningMessage, n as createAssistantCommentaryMessage, r as createAssistantMessage, t as createAssistantAsyncMessage } from "./event-projector-assistant-message-DXDX94zH.mjs";
51
+ import { C as readCodexRetainedBackgroundCommands, E as CodexNativeToolLifecycleProjector, S as hasCodexNativeBackgroundProcesses, T as mapCodexAppServerRemoteWorkspacePath, _ as shouldWarnCodexDynamicToolBuildStageSummary, a as emitDynamicToolStartedDiagnostic, b as createCodexNativePreToolUseFailureBuffer, c as buildDynamicTools, d as resolveCodexAppServerHookChannelId, f as resolveCodexExternalSandboxPolicyForOpenClawSandbox, g as shouldRequireCodexSandboxExecServerEnvironment, h as shouldEnableCodexAppServerNativeToolSurface, i as emitDynamicToolErrorDiagnostic, l as disableCodexPluginThreadConfig, m as resolveCodexSandboxEnvironmentSelection, n as projectCodexExecutableDynamicTools, o as emitDynamicToolTerminalDiagnostic, p as resolveCodexMessageToolProvider, r as routeCodexAppServerElicitationRequest, s as handleCodexAppServerApprovalRequest, t as createCodexDynamicToolBridge, u as resolveCodexAppServerExecutionCwd, v as ensureCodexSandboxExecServerEnvironment, w as readBoundedCodexRemoteWorkspaceFile, x as CodexNativeProcessAuthority, y as releaseCodexSandboxExecServerEnvironment } from "./dynamic-tools-Dr0ye5P3.mjs";
52
+ import { a as resolveCodexAppServerForModelProvider, i as resolveCodexSessionPermissionCwd, n as applyCodexSessionPermissionPolicy, r as resolveCodexEffectiveSessionPermissionPolicy } from "./session-permission-policy-7lM447LW.mjs";
53
+ import { a as getCodexContextFileDisplayBasename, c as normalizeCodexDynamicToolName, i as getCodexContextFileBasename, n as CODEX_NATIVE_PROJECT_DOC_BASENAMES, o as isNonEmptyString, r as buildCodexWorkspaceBootstrapContext, s as normalizeCodexContextFilePath } from "./attempt-workspace-context-XRsWP165.mjs";
54
54
  import { n as captureCodexSettledTurnFinalizationContext } from "./settled-turn-context-D4yj4rxf.mjs";
55
- import { t as resolveCodexProviderWebSearchSupport } from "./provider-capabilities-ByhBukaD.mjs";
56
- import { a as createComputerUseRequest, n as ensureCodexComputerUse, o as runCodexComputerUseLiveTest, t as defaultCodexPluginMetadataCache } from "./plugin-metadata-cache-Q4ZFn6UH.mjs";
55
+ import { t as resolveCodexProviderWebSearchSupport } from "./provider-capabilities-DBs9l8oL.mjs";
56
+ import { a as createComputerUseRequest, n as ensureCodexComputerUse, o as runCodexComputerUseLiveTest, t as defaultCodexPluginMetadataCache } from "./plugin-metadata-cache-C-LRxilF.mjs";
57
57
  import { asOptionalRecord, normalizeOptionalString, readNonBlankString, readStringField } from "openclaw/plugin-sdk/string-coerce-runtime";
58
58
  import { createHash } from "node:crypto";
59
59
  import { isDeepStrictEqual } from "node:util";
@@ -77,7 +77,7 @@ import { getSessionEntry } from "openclaw/plugin-sdk/session-store-runtime";
77
77
  import { acknowledgeInternalToolResult, createAgentHarnessToolExecutionRegistry } from "openclaw/plugin-sdk/agent-harness-tool-runtime";
78
78
  import { sleepWithAbort } from "openclaw/plugin-sdk/runtime-env";
79
79
  import { captureFinalCodexCronCreatorToolAllowlist, formatMcpCodexApprovalRemedy, materializeStaticMcpToolsForHarnessRun, resolveCodexMcpToolOverridesForAgent, resolveCodexTtsProvenanceTransfer } from "openclaw/plugin-sdk/codex-mcp-projection";
80
- import { appendSessionYieldContext, hasPromptImageInput } from "openclaw/plugin-sdk/session-transcript-runtime";
80
+ import { appendSessionTranscriptMessageByIdentityStrict, appendSessionYieldContext, hasPromptImageInput } from "openclaw/plugin-sdk/session-transcript-runtime";
81
81
  import { getAgentScopedMediaLocalRoots } from "openclaw/plugin-sdk/media-local-roots";
82
82
  import { isSilentReplyPayloadText } from "openclaw/plugin-sdk/reply-chunking";
83
83
  import { generatedImageAssetFromBase64 } from "openclaw/plugin-sdk/image-generation";
@@ -2807,7 +2807,7 @@ function activateCodexAttemptTurn(resources, turnRuntime, lifecycle, notificatio
2807
2807
  isStreaming: () => !state.completed && !runAbortController.signal.aborted,
2808
2808
  isAborted: () => runAbortController.signal.aborted,
2809
2809
  isStopped: () => state.completed || runAbortController.signal.aborted,
2810
- ownsLiveness: () => deadlines.ownsExecutionWait() && resourceState.turnRoute?.signal.aborted === false && !state.completed && !state.terminalTurnNotificationQueued && state.activeAppServerTurnRequests === 0 && state.activeLocalProjections === 0,
2810
+ ownsLiveness: () => deadlines.ownsExecutionWait() && resourceState.turnRoute?.signal.aborted === false && !state.completed && !state.terminalTurnNotificationQueued,
2811
2811
  isAbortable: () => !terminalState.terminalOutcomeFrozen || terminalState.sharedAbortAllowedAfterTerminalOutcome,
2812
2812
  isCompacting: () => projectorRef.current?.isCompacting() ?? false,
2813
2813
  supportsTranscriptCommitWait: true,
@@ -5540,14 +5540,49 @@ function createNativeSubagentAssignmentStore(params) {
5540
5540
  assertCurrent();
5541
5541
  assertSourceCurrent();
5542
5542
  }),
5543
- consume: (assignment, assertSourceCurrent) => bindingStore.mutate(identity, {
5544
- kind: "consume-native-subagent-assignment",
5545
- owner,
5546
- assignment
5547
- }, () => {
5548
- assertCurrent();
5549
- assertSourceCurrent();
5550
- })
5543
+ consume: async (assignment, assertSourceCurrent, undelivered) => {
5544
+ const applied = await bindingStore.mutate(identity, {
5545
+ kind: "consume-native-subagent-assignment",
5546
+ owner,
5547
+ assignment,
5548
+ ...undelivered ? { undelivered: true } : {}
5549
+ }, () => {
5550
+ assertCurrent();
5551
+ assertSourceCurrent();
5552
+ });
5553
+ if (applied && undelivered) {
5554
+ embeddedAgentLog.warn("Native subagent completion retired without delivery", {
5555
+ childThreadId: assignment.childThreadId,
5556
+ nativeTurnId: assignment.nativeTurnId,
5557
+ status: undelivered.status,
5558
+ childSessionKey: assignment.runId
5559
+ });
5560
+ try {
5561
+ if (identity.kind !== "session" || !identity.sessionKey) throw new Error("Native completion has no parent transcript target.");
5562
+ const note = await appendSessionTranscriptMessageByIdentityStrict({
5563
+ agentId: identity.agentId,
5564
+ sessionId: owner.sessionId,
5565
+ sessionKey: identity.sessionKey,
5566
+ updateMode: "inline",
5567
+ message: {
5568
+ role: "custom",
5569
+ customType: "openclaw.system-note",
5570
+ display: true,
5571
+ content: `Native subagent ${assignment.childThreadId} finished with status ${undelivered.status}, but its completion could not be delivered. Automatic delivery has stopped. Inspect its native Codex thread history${assignment.nativeTurnId ? ` at turn ${assignment.nativeTurnId}` : ""}; child session key: ${assignment.runId}.`.slice(0, 2048),
5572
+ timestamp: Date.now(),
5573
+ idempotencyKey: `codex-undelivered:${owner.lifecycleRevision ?? owner.sessionId}:${assignment.childThreadId}:${assignment.nativeTurnId ?? "initial"}`
5574
+ }
5575
+ });
5576
+ if (note.kind !== "result") throw new Error(`Native completion note was ${note.kind}.`);
5577
+ } catch (error) {
5578
+ embeddedAgentLog.warn("Could not persist native completion retirement note", {
5579
+ childSessionKey: assignment.runId,
5580
+ error: formatErrorMessage(error)
5581
+ });
5582
+ }
5583
+ }
5584
+ return applied;
5585
+ }
5551
5586
  };
5552
5587
  }
5553
5588
  //#endregion
@@ -6637,7 +6672,7 @@ function createCodexAttemptServerRequestController(resources, turnRuntime, lifec
6637
6672
  //#region extensions/codex/src/app-server/attempt-runtime-artifact.ts
6638
6673
  async function verifyStartupArtifact(params) {
6639
6674
  if (!params.request) return;
6640
- const { readCodexAppServerClientRuntimeArtifact, validateCodexAppServerRuntimeArtifact } = await import("./runtime-artifact-D7lCXdhV.mjs");
6675
+ const { readCodexAppServerClientRuntimeArtifact, validateCodexAppServerRuntimeArtifact } = await import("./runtime-artifact-Riq878B2.mjs");
6641
6676
  const runtimeArtifact = readCodexAppServerClientRuntimeArtifact(params.client);
6642
6677
  const expected = params.request.expected;
6643
6678
  const matchesExpected = !expected || runtimeArtifact?.id === expected.id && runtimeArtifact.fingerprint === expected.fingerprint;
@@ -1,7 +1,7 @@
1
1
  import { n as isCodexAppServerProxyLaunch } from "./launch-args-DbFCehO7.mjs";
2
- import { a as resolvePackagedCodexNativeCommand } from "./managed-binary-B6hQ1UKR.mjs";
3
- import { n as resolveCodexAppServerSpawnEnv, r as resolveCodexAppServerSpawnInvocation } from "./transport-stdio-CbutOIEh.mjs";
4
- import { captureCodexConfiguredConnection, finalizeCodexConfiguredConnection, isCodexConfiguredConnectionArtifact, validateCodexConfiguredConnectionCapture } from "./runtime-artifact-connection-D68qQn1m.mjs";
2
+ import { a as resolvePackagedCodexNativeCommand } from "./managed-binary-Ckgvm_4V.mjs";
3
+ import { n as resolveCodexAppServerSpawnEnv, r as resolveCodexAppServerSpawnInvocation } from "./transport-stdio-DU8dIOCj.mjs";
4
+ import { captureCodexConfiguredConnection, finalizeCodexConfiguredConnection, isCodexConfiguredConnectionArtifact, validateCodexConfiguredConnectionCapture } from "./runtime-artifact-connection-Bjv8P6Sx.mjs";
5
5
  import { createHash } from "node:crypto";
6
6
  import { resolveWindowsExecutablePath } from "openclaw/plugin-sdk/windows-spawn";
7
7
  import { constants } from "node:fs";
@@ -1,6 +1,6 @@
1
1
  import { t as codexAppServerStartOptionsKey } from "./config-options-CzyWLTJt.mjs";
2
- import "./config-runtime-C0NbLms1.mjs";
3
- import { r as resolveCodexAppServerUnixSocketPath } from "./transport-websocket-BTBE-LD9.mjs";
2
+ import "./config-runtime-DDhvIeUC.mjs";
3
+ import { r as resolveCodexAppServerUnixSocketPath } from "./transport-websocket-zu3jRPnu.mjs";
4
4
  import { createHash } from "node:crypto";
5
5
  import path from "node:path";
6
6
  //#region extensions/codex/src/app-server/runtime-artifact-connection.ts
@@ -1,6 +1,6 @@
1
1
  import { l as isCodexRemoteExecPlacementSandbox } from "./config-parsing-b088LyhT.mjs";
2
2
  import { n as resolveCodexNativeExecutionPolicy, t as formatCodexNativeNodeExecBlock } from "./native-execution-policy-BxZJy5mP.mjs";
3
- import { t as __exportAll } from "./session-binding-sidecars-jo6H8dFr.mjs";
3
+ import { t as __exportAll } from "./session-binding-sidecars-BuEALwJY.mjs";
4
4
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  import { tryResolveDefaultAgentId } from "openclaw/plugin-sdk/agent-scope-runtime";
6
6
  import { parseAgentSessionKey } from "openclaw/plugin-sdk/routing";
@@ -1,8 +1,8 @@
1
- import { i as adoptCodexNativeSubagentSubmissions, n as mutateNativePendingAssignments, o as mutateCodexNativeSubagentSubmissions } from "./native-subagent-pending-assignments-DwkCzLvD.mjs";
2
- import { _ as readStoredCodexAppServerBinding, a as matchesPendingSupervisionBranch, b as validateBindingForWrite, c as preserveNativePendingAssignments, d as readCodexBindingTimestamp, f as readCurrentCodexAppServerBinding, g as readPluginAppPolicyContext, h as readCurrentNativePendingAssignments, i as matchesCodexNativeSubagentSubmissionBinding, l as preserveNativeTaskImport, m as readCurrentCodexNativeSubagentSubmissions, n as assertCodexBindingMayBeReplaced, o as ownsStoredSessionGeneration, p as readCurrentCodexAppServerBindings, r as bindingStoreKey, s as preserveCodexNativeSubagentSubmissions, t as CodexSupervisionBindingReplacementError, u as readCodexAppServerThreadBinding, v as sessionBindingIdentity, y as stripUndefinedBinding } from "./session-binding-record-Oe9L-CNY.mjs";
1
+ import { a as matchesCodexNativeSubagentSubmissionOwner, c as codexNativeSubagentRunId, i as adoptCodexNativeSubagentSubmissions, n as mutateNativePendingAssignments, o as mutateCodexNativeSubagentSubmissions, s as readCodexNativeSubagentSubmissions } from "./native-subagent-pending-assignments-XHNn4k5q.mjs";
2
+ import { _ as readStoredCodexAppServerBinding, a as matchesPendingSupervisionBranch, b as validateBindingForWrite, c as preserveNativePendingAssignments, d as readCodexBindingTimestamp, f as readCurrentCodexAppServerBinding, g as readPluginAppPolicyContext, h as readCurrentNativePendingAssignments, i as matchesCodexNativeSubagentSubmissionBinding, l as preserveNativeTaskImport, m as readCurrentCodexNativeSubagentSubmissions, n as assertCodexBindingMayBeReplaced, o as ownsStoredSessionGeneration, p as readCurrentCodexAppServerBindings, r as bindingStoreKey, s as preserveCodexNativeSubagentSubmissions, t as CodexSupervisionBindingReplacementError, u as readCodexAppServerThreadBinding, v as sessionBindingIdentity, y as stripUndefinedBinding } from "./session-binding-record-CUKpUKVm.mjs";
3
3
  import { n as CODEX_APP_SERVER_BINDING_NAMESPACE, t as CODEX_APP_SERVER_BINDING_MAX_ENTRIES } from "./session-binding-meta-B7aEMU7g.mjs";
4
4
  import { n as normalizeCodexAppServerBindingModelProvider } from "./auth-profile-B0okYl2D.mjs";
5
- import { t as __exportAll } from "./session-binding-sidecars-jo6H8dFr.mjs";
5
+ import { t as __exportAll } from "./session-binding-sidecars-BuEALwJY.mjs";
6
6
  import { asOptionalRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
7
7
  import { createHash } from "node:crypto";
8
8
  import { AgentHarnessSessionSupersededError, embeddedAgentLog } from "openclaw/plugin-sdk/agent-harness-runtime";
@@ -20,8 +20,23 @@ function mutateNativeSubagentBinding({ identity, current, mutation, assertCurren
20
20
  assignment: mutation.assignment,
21
21
  consume: mutation.kind === "consume-native-subagent-assignment"
22
22
  });
23
- if (!changed.applied) return { result: false };
23
+ if (!changed.applied) return { result: mutation.kind === "consume-native-subagent-assignment" && mutation.undelivered === true && changed.absent === true };
24
24
  const { nativeSubagentAssignments: _previous, ...bindingOwner } = current;
25
+ const retired = changed.consumed;
26
+ if (retired && mutation.kind === "consume-native-subagent-assignment" && mutation.undelivered) {
27
+ let submissions;
28
+ try {
29
+ submissions = readCodexNativeSubagentSubmissions(bindingOwner.nativeSubagentSubmissions);
30
+ } catch {}
31
+ if (submissions && matchesCodexNativeSubagentSubmissionOwner(submissions.owner, mutation.owner)) {
32
+ const receipts = submissions.receipts.filter((receipt) => receipt.childThreadId !== retired.childThreadId || receipt.submissionId !== retired.nativeTurnId && codexNativeSubagentRunId(receipt.childThreadId, receipt.submissionId) !== retired.runId);
33
+ delete bindingOwner.nativeSubagentSubmissions;
34
+ if (receipts.length) bindingOwner.nativeSubagentSubmissions = {
35
+ ...submissions,
36
+ receipts
37
+ };
38
+ }
39
+ }
25
40
  return {
26
41
  result: true,
27
42
  next: {
@@ -1,5 +1,5 @@
1
1
  import { d as CODEX_PLUGIN_MARKETPLACE_NAME_PATTERN, r as normalizeCodexServiceTier } from "./config-utils-D0CXecki.mjs";
2
- import { a as matchesCodexNativeSubagentSubmissionOwner, h as codexNativeSubagentHistoryConnectionFingerprint, r as readNativePendingAssignments, s as readCodexNativeSubagentSubmissions, t as matchesNativeAssignmentLifecycle } from "./native-subagent-pending-assignments-DwkCzLvD.mjs";
2
+ import { a as matchesCodexNativeSubagentSubmissionOwner, h as codexNativeSubagentHistoryConnectionFingerprint, r as readNativePendingAssignments, s as readCodexNativeSubagentSubmissions, t as matchesNativeAssignmentLifecycle } from "./native-subagent-pending-assignments-XHNn4k5q.mjs";
3
3
  import { asOptionalRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
4
4
  import { createHash } from "node:crypto";
5
5
  import { isDeepStrictEqual } from "node:util";
@@ -478,7 +478,7 @@ async function migrateSource(source, candidates, params, store) {
478
478
  return await withFileLock(source.sidecarPath, LEGACY_BINDING_LOCK_OPTIONS, async () => {
479
479
  const [contents, stat] = await Promise.all([fs.readFile(source.sidecarPath, "utf8"), fs.stat(source.sidecarPath)]);
480
480
  const raw = JSON.parse(contents);
481
- const [{ bindingStoreKey, createStoredCodexAppServerBinding, normalizeStoredCodexAppServerBindingFingerprints, readStoredCodexAppServerBinding }, { legacyCodexConversationBindingId }] = await Promise.all([import("./session-binding-DGCYAfvD.mjs").then((n) => n.s), import("./conversation-binding-data-C746z5Pn.mjs").then((n) => n.t)]);
481
+ const [{ bindingStoreKey, createStoredCodexAppServerBinding, normalizeStoredCodexAppServerBindingFingerprints, readStoredCodexAppServerBinding }, { legacyCodexConversationBindingId }] = await Promise.all([import("./session-binding-Fn7Ekzuv.mjs").then((n) => n.s), import("./conversation-binding-data-DlsG-dQu.mjs").then((n) => n.t)]);
482
482
  const agentId = owner?.agentId ?? (source.agentIds.size === 1 ? [...source.agentIds][0] : void 0);
483
483
  const baseStored = createStoredCodexAppServerBinding(raw, {
484
484
  now: stat.mtime.toISOString(),
@@ -1,21 +1,21 @@
1
- import { A as unwrapNodeInvokePayload, C as readGatewayParams, E as requireOnlyKeys, S as readControlCursor, _ as normalizeLimit, a as CODEX_LOCAL_SESSION_HOST_ID, b as parseTranscriptPage, f as catalogError, g as isInteractiveThreadSource, h as filterCatalogPageByTitle, i as CODEX_CATALOG_TRANSCRIPT_READ_COMMAND, l as MAX_TRANSCRIPT_PAGE_BYTES, n as CODEX_APP_SERVER_THREADS_LIST_COMMAND, o as CatalogParamsError, r as CODEX_APP_SERVER_THREAD_TURNS_LIST_COMMAND, s as MAX_CURSOR_LENGTH, t as CODEX_APP_SERVER_THREADS_CAPABILITY, u as NODE_INVOKE_TIMEOUT_MS, v as parseCatalogPage, w as readPageParams, x as readBoundedOptionalString, y as parseJsonParams } from "./session-catalog-parsing-CPGaPYr-.mjs";
1
+ import { A as unwrapNodeInvokePayload, C as readGatewayParams, E as requireOnlyKeys, S as readControlCursor, _ as normalizeLimit, a as CODEX_LOCAL_SESSION_HOST_ID, b as parseTranscriptPage, f as catalogError, g as isInteractiveThreadSource, h as filterCatalogPageByTitle, i as CODEX_CATALOG_TRANSCRIPT_READ_COMMAND, l as MAX_TRANSCRIPT_PAGE_BYTES, n as CODEX_APP_SERVER_THREADS_LIST_COMMAND, o as CatalogParamsError, r as CODEX_APP_SERVER_THREAD_TURNS_LIST_COMMAND, s as MAX_CURSOR_LENGTH, t as CODEX_APP_SERVER_THREADS_CAPABILITY, u as NODE_INVOKE_TIMEOUT_MS, v as parseCatalogPage, w as readPageParams, x as readBoundedOptionalString, y as parseJsonParams } from "./session-catalog-parsing-CnEH565l.mjs";
2
2
  import { n as assertCodexThreadForkParams } from "./protocol-CANUwXJ3.mjs";
3
- import { v as sessionBindingIdentity } from "./session-binding-record-Oe9L-CNY.mjs";
3
+ import { v as sessionBindingIdentity } from "./session-binding-record-CUKpUKVm.mjs";
4
4
  import { d as readCodexPluginConfig } from "./config-parsing-b088LyhT.mjs";
5
5
  import { n as resolveCodexAppServerLocalHomeDir, r as resolveCodexAppServerUserHomeDir, t as resolveCodexAppServerHomeDir } from "./auth-start-options-BPIPeEX8.mjs";
6
- import { i as hasActiveSharedCodexAppServerWork, r as getSharedCodexAppServerClientState } from "./shared-client-lifecycle-CJ0lYVCW.mjs";
6
+ import { i as hasActiveSharedCodexAppServerWork, r as getSharedCodexAppServerClientState } from "./shared-client-lifecycle-BH_y_i8l.mjs";
7
7
  import { n as CodexAppServerRpcError, r as isCodexThreadReadMissingError } from "./rpc-error-BlD2vuzn.mjs";
8
8
  import { t as CODEX_CONTROL_METHODS } from "./capabilities-B3WEZl4e.mjs";
9
9
  import { n as codexCatalogHomeIdFromCanonicalPath } from "./session-catalog-home-id-vlih0B_g.mjs";
10
10
  import { i as withTimeout } from "./timeout-CXOfNoaX.mjs";
11
- import { a as CodexCatalogLoadingError, n as currentCodexCatalogListRequest, r as withCodexCatalogListRequest, t as CodexCatalogListRequest } from "./session-catalog-list-request-CvtxrYSe.mjs";
12
- import { t as lookupNodeCodexCatalogRecord } from "./session-catalog-node-lookup-CtAXI5W5.mjs";
11
+ import { a as CodexCatalogLoadingError, n as currentCodexCatalogListRequest, r as withCodexCatalogListRequest, t as CodexCatalogListRequest } from "./session-catalog-list-request-A1wN4sKw.mjs";
12
+ import { t as lookupNodeCodexCatalogRecord } from "./session-catalog-node-lookup-D9AP5D5o.mjs";
13
13
  import { r as projectCodexUserItemText } from "./transcript-history-projection-DRSifI-1.mjs";
14
14
  import { r as codexUpstreamContinueResult } from "./session-upstream-marker-D15C9NHp.mjs";
15
15
  import { t as buildCodexAppServerConnectionFingerprint } from "./plugin-app-cache-key-BL9B5H0L.mjs";
16
16
  import { n as readCodexSessionMeta } from "./session-catalog-provenance-DoAvktcj.mjs";
17
- import { t as codexCatalogResidentHomeKey } from "./session-catalog-events-D9zC7gRb.mjs";
18
- import { a as setCodexCatalogConnectionHomeResolver } from "./binding-connection-DTtN1KrX.mjs";
17
+ import { t as codexCatalogResidentHomeKey } from "./session-catalog-events-r59AxcQ4.mjs";
18
+ import { a as setCodexCatalogConnectionHomeResolver } from "./binding-connection-DRPlnIgg.mjs";
19
19
  import { n as findCodexAppServerSpawnError } from "./spawn-error-CL3n6MAa.mjs";
20
20
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
21
21
  import { randomUUID } from "node:crypto";
@@ -702,7 +702,7 @@ function hostFailure(source, error) {
702
702
  }
703
703
  async function projectLocalHost(params, agentId, source, page) {
704
704
  params.signal?.throwIfAborted();
705
- const { listAdoptedSessionEntries } = await import("./session-catalog-adoption-BU_pHWG7.mjs");
705
+ const { listAdoptedSessionEntries } = await import("./session-catalog-adoption-58bqOngU.mjs");
706
706
  const { sessionCatalogAdoptedSourceKey } = await import("openclaw/plugin-sdk/session-catalog");
707
707
  params.signal?.throwIfAborted();
708
708
  const finishTiming = startCodexCatalogListTiming("adoptionSumMs", "adoptionCalls");
@@ -925,8 +925,8 @@ var CodexCatalogListDriver = class {
925
925
  }
926
926
  params.signal?.throwIfAborted();
927
927
  this.nodeSnapshots.observe(this.nodeGeneration, inventory);
928
- const { listNodeAdoptedSessionEntries, nodeAdoptedSourceKey } = await import("./session-catalog-node-adoption-DgXvSGu0.mjs");
929
- const { compareNodeLabels, listPairedNode, nodeLabel } = await import("./session-catalog-node-continue-DjKXHBbi.mjs");
928
+ const { listNodeAdoptedSessionEntries, nodeAdoptedSourceKey } = await import("./session-catalog-node-adoption-BdS7zDuY.mjs");
929
+ const { compareNodeLabels, listPairedNode, nodeLabel } = await import("./session-catalog-node-continue-XFJG3JGh.mjs");
930
930
  params.signal?.throwIfAborted();
931
931
  const adopted = listNodeAdoptedSessionEntries({
932
932
  agentId,
@@ -1397,7 +1397,7 @@ async function readCodexSessionTranscript(params) {
1397
1397
  cursor,
1398
1398
  limit
1399
1399
  });
1400
- const { nodeLabel } = await import("./session-catalog-node-continue-DjKXHBbi.mjs");
1400
+ const { nodeLabel } = await import("./session-catalog-node-continue-XFJG3JGh.mjs");
1401
1401
  return {
1402
1402
  hostId: params.hostId,
1403
1403
  label: nodeLabel(node),
@@ -1561,8 +1561,8 @@ async function requireEligibleCodexThread(params) {
1561
1561
  remaining();
1562
1562
  if (thread.id !== threadId || thread.ephemeral === true || !isInteractiveThreadSource(thread.source)) throw unverified();
1563
1563
  if (!root) {
1564
- const { CODEX_CATALOG_NATIVE_PAGE_LIMIT } = await import("./session-catalog-native-projection-DhId_sl8.mjs").then((n) => n.a);
1565
- const { CODEX_CATALOG_MAX_ROWS } = await import("./session-catalog-limits-DDxOsQeC.mjs").then((n) => n.r);
1564
+ const { CODEX_CATALOG_NATIVE_PAGE_LIMIT } = await import("./session-catalog-native-projection-CXTe4qQr.mjs").then((n) => n.a);
1565
+ const { CODEX_CATALOG_MAX_ROWS } = await import("./session-catalog-limits-bz5ZvjtY.mjs").then((n) => n.r);
1566
1566
  let cursor;
1567
1567
  const seenCursors = /* @__PURE__ */ new Set();
1568
1568
  for (;;) {
@@ -2014,7 +2014,7 @@ function createCodexSessionCatalogControl(params) {
2014
2014
  if (closed || generation !== config || residentEpoch !== epoch) throw new Error("Codex catalog configuration changed");
2015
2015
  let index = indexes.get(homeId);
2016
2016
  if (!index) {
2017
- const [{ CodexCatalogIndex }, { canReuseCodexCatalogPreview, projectCodexCatalogDeltaPage, projectCodexCatalogPage }] = await Promise.all([import("./session-catalog-index-CNKpHanP.mjs"), import("./session-catalog-projection-DcqN7DuI.mjs")]);
2017
+ const [{ CodexCatalogIndex }, { canReuseCodexCatalogPreview, projectCodexCatalogDeltaPage, projectCodexCatalogPage }] = await Promise.all([import("./session-catalog-index-CY1lNpxF.mjs"), import("./session-catalog-projection-DcDKizZd.mjs")]);
2018
2018
  source?.assertCurrent();
2019
2019
  if (closed || generation !== config || residentEpoch !== epoch) throw new Error("Codex catalog configuration changed");
2020
2020
  index = indexes.get(homeId);
@@ -2142,7 +2142,7 @@ function createCodexSessionCatalogControl(params) {
2142
2142
  const runtime = source?.appServer ?? resolveRuntimeOptions({ pluginConfig });
2143
2143
  const requestOptions = resolveRequestOptions(runtime.start, agentId, source);
2144
2144
  return createCodexCatalogRequestSnapshot(runtime.requestTimeoutMs, async (method, requestParams, timeoutMs, assertCurrent, observation) => {
2145
- const { codexControlRequest } = await import("./command-rpc-BDfCWgc_.mjs").then((n) => n.n);
2145
+ const { codexControlRequest } = await import("./command-rpc-kf7Uq4L-.mjs").then((n) => n.n);
2146
2146
  return await codexControlRequest(pluginConfig, method, requestParams, {
2147
2147
  ...requestOptions,
2148
2148
  authProfileId: null,
@@ -2164,9 +2164,9 @@ function createCodexSessionCatalogControl(params) {
2164
2164
  const runtime = source?.appServer ?? resolveRuntimeOptions({ pluginConfig });
2165
2165
  const { agentDir, config: runtimeConfig, startOptions } = resolveRequestOptions(runtime.start, agentId, source);
2166
2166
  let catalogIndex;
2167
- const { getLeasedSharedCodexAppServerClient, releaseLeasedSharedCodexAppServerClient, retireSharedCodexAppServerClientIfCurrent } = await import("./shared-client-tOOyadmg.mjs").then((n) => n.v);
2168
- const { resolveCodexAppServerClientInstanceId } = await import("./client-CyquSiJ2.mjs").then((n) => n.n);
2169
- const { requestCodexAppServerClientJson } = await import("./request-DxKAfWyy.mjs").then((n) => n.a);
2167
+ const { getLeasedSharedCodexAppServerClient, releaseLeasedSharedCodexAppServerClient, retireSharedCodexAppServerClientIfCurrent } = await import("./shared-client-ZXKMsK6f.mjs").then((n) => n.v);
2168
+ const { resolveCodexAppServerClientInstanceId } = await import("./client-DcTISXe3.mjs").then((n) => n.n);
2169
+ const { requestCodexAppServerClientJson } = await import("./request-CWERwKIL.mjs").then((n) => n.a);
2170
2170
  const client = await getLeasedSharedCodexAppServerClient({
2171
2171
  agentDir,
2172
2172
  config: runtimeConfig,
@@ -2235,7 +2235,7 @@ function createCodexSessionCatalogControl(params) {
2235
2235
  await Promise.allSettled(residentRequests);
2236
2236
  const clients = getSharedCodexAppServerClientState();
2237
2237
  if (clients.liveClients.size > 0 || clients.startup.pending.size > 0) {
2238
- const { clearSharedCodexAppServerClientAndWait } = await import("./shared-client-tOOyadmg.mjs").then((n) => n.v);
2238
+ const { clearSharedCodexAppServerClientAndWait } = await import("./shared-client-ZXKMsK6f.mjs").then((n) => n.v);
2239
2239
  await clearSharedCodexAppServerClientAndWait();
2240
2240
  }
2241
2241
  },
@@ -2584,15 +2584,15 @@ const codexSessionCatalogRuntime = {
2584
2584
  archiveLocal: archiveLocalCodexSession
2585
2585
  };
2586
2586
  async function continueLocalCodexSession(...args) {
2587
- const { continueLocalCodexSession: run } = await import("./session-catalog-adoption-BU_pHWG7.mjs");
2587
+ const { continueLocalCodexSession: run } = await import("./session-catalog-adoption-58bqOngU.mjs");
2588
2588
  return run(...args);
2589
2589
  }
2590
2590
  async function archiveLocalCodexSession(...args) {
2591
- const { archiveLocalCodexSession: run } = await import("./session-catalog-archive-spHfihri.mjs");
2591
+ const { archiveLocalCodexSession: run } = await import("./session-catalog-archive-BM9gCB82.mjs");
2592
2592
  return run(...args);
2593
2593
  }
2594
2594
  async function continueNodeCodexSession(...args) {
2595
- const { continueNodeCodexSession: run } = await import("./session-catalog-node-continue-DjKXHBbi.mjs");
2595
+ const { continueNodeCodexSession: run } = await import("./session-catalog-node-continue-XFJG3JGh.mjs");
2596
2596
  return run(...args);
2597
2597
  }
2598
2598
  //#endregion
@@ -1,8 +1,8 @@
1
- import { T as requireBoundThread, d as boundedCatalogString, o as CatalogParamsError } from "./session-catalog-parsing-CPGaPYr-.mjs";
2
- import { v as sessionBindingIdentity } from "./session-binding-record-Oe9L-CNY.mjs";
1
+ import { T as requireBoundThread, d as boundedCatalogString, o as CatalogParamsError } from "./session-catalog-parsing-CnEH565l.mjs";
2
+ import { v as sessionBindingIdentity } from "./session-binding-record-CUKpUKVm.mjs";
3
3
  import { n as codexUpstreamBaseline, t as codexLastTerminalTurnId } from "./session-upstream-marker-D15C9NHp.mjs";
4
- import { i as reclaimCurrentCodexSessionGeneration } from "./session-binding-DGCYAfvD.mjs";
5
- import { adoptionSessionKeyRest, catalogSessionActions } from "./session-catalog-node-adoption-DgXvSGu0.mjs";
4
+ import { i as reclaimCurrentCodexSessionGeneration } from "./session-binding-Fn7Ekzuv.mjs";
5
+ import { adoptionSessionKeyRest, catalogSessionActions } from "./session-catalog-node-adoption-BdS7zDuY.mjs";
6
6
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
7
7
  import { listSessionCatalogEntries, sessionCatalogAdoptedSessionKey, sessionCatalogAdoptedSourceKey } from "openclaw/plugin-sdk/session-catalog";
8
8
  //#region extensions/codex/src/session-catalog-adoption.ts
@@ -152,7 +152,7 @@ async function createOrReuseAdoptedSession(params) {
152
152
  sourceThreadId: params.sourceThread.id,
153
153
  ...params.sourceHomeId ? { sourceHomeId: params.sourceHomeId } : {}
154
154
  };
155
- const { createImportedCodexSession } = await import("./session-history-import-WhX-X33a.mjs");
155
+ const { createImportedCodexSession } = await import("./session-history-import-tquj9DCz.mjs");
156
156
  const created = await createImportedCodexSession({
157
157
  runtime: params.api.runtime,
158
158
  bindingStore: params.bindingStore,
@@ -1,9 +1,9 @@
1
- import { o as CatalogParamsError } from "./session-catalog-parsing-CPGaPYr-.mjs";
2
- import { v as sessionBindingIdentity } from "./session-binding-record-Oe9L-CNY.mjs";
1
+ import { o as CatalogParamsError } from "./session-catalog-parsing-CnEH565l.mjs";
2
+ import { v as sessionBindingIdentity } from "./session-binding-record-CUKpUKVm.mjs";
3
3
  import { t as assertCodexArchiveDescendantsUnowned } from "./thread-archive-guard-C9frICzX.mjs";
4
- import "./session-binding-DGCYAfvD.mjs";
5
- import { catalogSessionActions } from "./session-catalog-node-adoption-DgXvSGu0.mjs";
6
- import { isAdoptionSessionKeyForThread, requireIdleThread } from "./session-catalog-adoption-BU_pHWG7.mjs";
4
+ import "./session-binding-Fn7Ekzuv.mjs";
5
+ import { catalogSessionActions } from "./session-catalog-node-adoption-BdS7zDuY.mjs";
6
+ import { isAdoptionSessionKeyForThread, requireIdleThread } from "./session-catalog-adoption-58bqOngU.mjs";
7
7
  import { listAgentIds } from "openclaw/plugin-sdk/agent-scope-runtime";
8
8
  import { sessionCatalogAdoptedSourceKey } from "openclaw/plugin-sdk/session-catalog";
9
9
  //#region extensions/codex/src/session-catalog-archive.ts
@@ -1,10 +1,10 @@
1
- import { c as MAX_CWD_LENGTH, d as boundedCatalogString } from "./session-catalog-parsing-CPGaPYr-.mjs";
2
- import { n as defineCodexBuildState } from "./build-state--SrHyc6r.mjs";
1
+ import { c as MAX_CWD_LENGTH, d as boundedCatalogString } from "./session-catalog-parsing-CnEH565l.mjs";
2
+ import { n as defineCodexBuildState } from "./build-state-B3lvV1Op.mjs";
3
3
  import { r as inferCodexAppServerConnectionClass } from "./config-security-CE-FcGw9.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-BL9B5H0L.mjs";
7
- import { d as observeCodexCatalogEphemeralThreads, r as projectCodexCatalogNativeThread, s as codexCatalogSourceForClient } from "./session-catalog-native-projection-DhId_sl8.mjs";
7
+ import { d as observeCodexCatalogEphemeralThreads, r as projectCodexCatalogNativeThread, s as codexCatalogSourceForClient } from "./session-catalog-native-projection-CXTe4qQr.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";
@@ -1,12 +1,12 @@
1
- import { S as readControlCursor, _ as normalizeLimit, c as MAX_CWD_LENGTH, d as boundedCatalogString, h as filterCatalogPageByTitle, m as codexCatalogThreadStatus, o as CatalogParamsError, p as codexCatalogThreadName } from "./session-catalog-parsing-CPGaPYr-.mjs";
2
- import { t as CODEX_CATALOG_MAX_ROWS } from "./session-catalog-limits-DDxOsQeC.mjs";
3
- import { i as retainCodexCatalogRow, n as codexCatalogRowRecency, r as compareCodexCatalogRows, t as CodexCatalogOrdering } from "./session-catalog-index-order-BcQpHks3.mjs";
4
- import { n as CodexCatalogPersistence, r as codexCatalogMetadataPage } from "./session-catalog-index-state-TeO7EyO-.mjs";
5
- import { i as CodexCatalogAvailability, r as withCodexCatalogListRequest } from "./session-catalog-list-request-CvtxrYSe.mjs";
6
- import { l as getCodexCatalogSource, p as setCodexCatalogSource, r as projectCodexCatalogNativeThread, u as hasLiveCodexCatalogSource } from "./session-catalog-native-projection-DhId_sl8.mjs";
7
- import { i as subscribeCodexCatalogEvents } from "./session-catalog-events-D9zC7gRb.mjs";
1
+ import { S as readControlCursor, _ as normalizeLimit, c as MAX_CWD_LENGTH, d as boundedCatalogString, h as filterCatalogPageByTitle, m as codexCatalogThreadStatus, o as CatalogParamsError, p as codexCatalogThreadName } from "./session-catalog-parsing-CnEH565l.mjs";
2
+ import { t as CODEX_CATALOG_MAX_ROWS } from "./session-catalog-limits-bz5ZvjtY.mjs";
3
+ import { i as retainCodexCatalogRow, n as codexCatalogRowRecency, r as compareCodexCatalogRows, t as CodexCatalogOrdering } from "./session-catalog-index-order-DQhmgM3b.mjs";
4
+ import { n as CodexCatalogPersistence, r as codexCatalogMetadataPage } from "./session-catalog-index-state-DhLoAnfy.mjs";
5
+ import { i as CodexCatalogAvailability, r as withCodexCatalogListRequest } from "./session-catalog-list-request-A1wN4sKw.mjs";
6
+ import { l as getCodexCatalogSource, p as setCodexCatalogSource, r as projectCodexCatalogNativeThread, u as hasLiveCodexCatalogSource } from "./session-catalog-native-projection-CXTe4qQr.mjs";
7
+ import { i as subscribeCodexCatalogEvents } from "./session-catalog-events-r59AxcQ4.mjs";
8
8
  import { a as reportCodexCatalogSpawnFailure, n as findCodexAppServerSpawnError } from "./spawn-error-CL3n6MAa.mjs";
9
- import { CodexCatalogProjectionCapacityError, CodexCatalogProjections, a as resolveCodexCatalogRolloutFingerprint, i as readCodexCatalogRollout, mergeCodexCatalogRolloutRow, n as indexCodexCatalogRowsByRollout, o as scanCodexCatalogRollouts, projectCodexCatalogThread, r as isCodexCatalogRolloutPathCovered, t as codexCatalogRolloutLogicalPath } from "./session-catalog-projection-DcqN7DuI.mjs";
9
+ import { CodexCatalogProjectionCapacityError, CodexCatalogProjections, a as resolveCodexCatalogRolloutFingerprint, i as readCodexCatalogRollout, mergeCodexCatalogRolloutRow, n as indexCodexCatalogRowsByRollout, o as scanCodexCatalogRollouts, projectCodexCatalogThread, r as isCodexCatalogRolloutPathCovered, t as codexCatalogRolloutLogicalPath } from "./session-catalog-projection-DcDKizZd.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,4 +1,4 @@
1
- import { t as CODEX_CATALOG_MAX_ROWS } from "./session-catalog-limits-DDxOsQeC.mjs";
1
+ import { t as CODEX_CATALOG_MAX_ROWS } from "./session-catalog-limits-bz5ZvjtY.mjs";
2
2
  //#region extensions/codex/src/session-catalog-index-order.ts
3
3
  function codexCatalogRowRecency(row) {
4
4
  return row.recencyAt ?? row.updatedAt ?? 0;
@@ -1,6 +1,6 @@
1
- import { v as parseCatalogPage } from "./session-catalog-parsing-CPGaPYr-.mjs";
2
- import { n as detachCodexCatalogString } from "./session-catalog-limits-DDxOsQeC.mjs";
3
- import { i as retainCodexCatalogRow } from "./session-catalog-index-order-BcQpHks3.mjs";
1
+ import { v as parseCatalogPage } from "./session-catalog-parsing-CnEH565l.mjs";
2
+ import { n as detachCodexCatalogString } from "./session-catalog-limits-bz5ZvjtY.mjs";
3
+ import { i as retainCodexCatalogRow } from "./session-catalog-index-order-DQhmgM3b.mjs";
4
4
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  import { createHash } from "node:crypto";
6
6
  import { setImmediate } from "node:timers/promises";
@@ -1,4 +1,4 @@
1
- import { t as __exportAll } from "./session-binding-sidecars-jo6H8dFr.mjs";
1
+ import { t as __exportAll } from "./session-binding-sidecars-BuEALwJY.mjs";
2
2
  //#region extensions/codex/src/session-catalog-limits.ts
3
3
  var session_catalog_limits_exports = /* @__PURE__ */ __exportAll({
4
4
  CODEX_CATALOG_MAX_ROWS: () => CODEX_CATALOG_MAX_ROWS,
@@ -1,5 +1,5 @@
1
- import { o as CatalogParamsError } from "./session-catalog-parsing-CPGaPYr-.mjs";
2
- import { r as compareCodexCatalogRows } from "./session-catalog-index-order-BcQpHks3.mjs";
1
+ import { o as CatalogParamsError } from "./session-catalog-parsing-CnEH565l.mjs";
2
+ import { r as compareCodexCatalogRows } from "./session-catalog-index-order-DQhmgM3b.mjs";
3
3
  import { i as withTimeout } from "./timeout-CXOfNoaX.mjs";
4
4
  import { AsyncLocalStorage } from "node:async_hooks";
5
5
  import { createDeferred } from "openclaw/plugin-sdk/extension-shared";
@@ -1,8 +1,8 @@
1
- import { D as selectCodexCatalogPreviewInput, c as MAX_CWD_LENGTH, d as boundedCatalogString, k as truncateCodexCatalogPreview } from "./session-catalog-parsing-CPGaPYr-.mjs";
1
+ import { D as selectCodexCatalogPreviewInput, c as MAX_CWD_LENGTH, d as boundedCatalogString, k as truncateCodexCatalogPreview } from "./session-catalog-parsing-CnEH565l.mjs";
2
2
  import { i as isJsonObject } from "./protocol-CANUwXJ3.mjs";
3
- import { n as defineCodexBuildState } from "./build-state--SrHyc6r.mjs";
4
- import { n as detachCodexCatalogString } from "./session-catalog-limits-DDxOsQeC.mjs";
5
- import { t as __exportAll } from "./session-binding-sidecars-jo6H8dFr.mjs";
3
+ import { n as defineCodexBuildState } from "./build-state-B3lvV1Op.mjs";
4
+ import { n as detachCodexCatalogString } from "./session-catalog-limits-bz5ZvjtY.mjs";
5
+ import { t as __exportAll } from "./session-binding-sidecars-BuEALwJY.mjs";
6
6
  //#region extensions/codex/src/session-catalog-source.ts
7
7
  function hasLiveCodexCatalogSource(sources) {
8
8
  for (const source of sources) if (!source.closed) return true;
@@ -1,4 +1,4 @@
1
- import { o as CatalogParamsError } from "./session-catalog-parsing-CPGaPYr-.mjs";
1
+ import { o as CatalogParamsError } from "./session-catalog-parsing-CnEH565l.mjs";
2
2
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  import { KeyedAsyncQueue } from "openclaw/plugin-sdk/keyed-async-queue";
4
4
  import { parseAgentSessionKey } from "openclaw/plugin-sdk/routing";
@@ -146,7 +146,7 @@ async function createOrReuseNodeAdoptedSession(params) {
146
146
  },
147
147
  afterCreate: async (entry) => {
148
148
  const storePath = resolveStorePath(params.config.session?.store, { agentId: entry.agentId });
149
- const { importCodexThreadHistoryToTranscript } = await import("./transcript-mirror-kxmCYsuF.mjs").then((n) => n.a);
149
+ const { importCodexThreadHistoryToTranscript } = await import("./transcript-mirror-BRNhyb1o.mjs").then((n) => n.a);
150
150
  await importCodexThreadHistoryToTranscript({
151
151
  thread: params.history.thread,
152
152
  throughTurnId: params.history.throughTurnId,