openmeld 0.3.213 → 0.3.214

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 (97) hide show
  1. package/dist/{add-me-membership-GbaxKxz-.js → add-me-membership-BaqG9F5c.js} +2 -2
  2. package/dist/{add-me-membership-GbaxKxz-.js.map → add-me-membership-BaqG9F5c.js.map} +1 -1
  3. package/dist/{agents-BNoz9DA5.js → agents-y9C8FCyv.js} +8 -8
  4. package/dist/{agents-BNoz9DA5.js.map → agents-y9C8FCyv.js.map} +1 -1
  5. package/dist/{api-client-foundation-TEBOwWl1.js → api-client-foundation-BYnU1pbS.js} +1 -1
  6. package/dist/{api-client-foundation-km8Ol1P4.js → api-client-foundation-CKRP7Ymg.js} +3 -3
  7. package/dist/{api-client-foundation-km8Ol1P4.js.map → api-client-foundation-CKRP7Ymg.js.map} +1 -1
  8. package/dist/auth-session-BWKfXWxl.js +4 -0
  9. package/dist/{auth-session-DgHvRt5i.js → auth-session-gaLjWIKR.js} +8 -6
  10. package/dist/auth-session-gaLjWIKR.js.map +1 -0
  11. package/dist/{base-url-C6sHRNGu.js → base-url-BczddvzH.js} +2 -2
  12. package/dist/{base-url-C6sHRNGu.js.map → base-url-BczddvzH.js.map} +1 -1
  13. package/dist/{base-url-BE3pFiOZ.js → base-url-CfyKRz89.js} +1 -1
  14. package/dist/{command-Dsa8gaFe.js → command-C72QNhjP.js} +12 -12
  15. package/dist/{command-Dsa8gaFe.js.map → command-C72QNhjP.js.map} +1 -1
  16. package/dist/{computer-connection-D8tX14R_.js → computer-connection-Dv9kex7h.js} +2 -2
  17. package/dist/{computer-connection-D8tX14R_.js.map → computer-connection-Dv9kex7h.js.map} +1 -1
  18. package/dist/{computer-connection-review-CjOXBWiV.js → computer-connection-review-_ZLPsdE_.js} +6 -6
  19. package/dist/{computer-connection-review-CjOXBWiV.js.map → computer-connection-review-_ZLPsdE_.js.map} +1 -1
  20. package/dist/{computer-disconnect-k6UVCsVF.js → computer-disconnect-BJ-Tl-7q.js} +9 -9
  21. package/dist/{computer-disconnect-k6UVCsVF.js.map → computer-disconnect-BJ-Tl-7q.js.map} +1 -1
  22. package/dist/{computer-setup-continuation-DhY_sJis.js → computer-setup-continuation-CN383Vvy.js} +4 -4
  23. package/dist/{computer-setup-continuation-DhY_sJis.js.map → computer-setup-continuation-CN383Vvy.js.map} +1 -1
  24. package/dist/{daemon-runtime-lease-Dd4hdHNo.js → daemon-runtime-lease-CIzOT1zx.js} +2 -2
  25. package/dist/{daemon-runtime-lease-Dd4hdHNo.js.map → daemon-runtime-lease-CIzOT1zx.js.map} +1 -1
  26. package/dist/{daemon-runtime-lease-y3n1K0-C.js → daemon-runtime-lease-_M6hW8Mg.js} +1 -1
  27. package/dist/{daemon-service-manager-GiMCiTmu.js → daemon-service-manager-DxS5eH_N.js} +4 -4
  28. package/dist/{daemon-service-manager-GiMCiTmu.js.map → daemon-service-manager-DxS5eH_N.js.map} +1 -1
  29. package/dist/{daemon-service-manager-Bh0LoLed.js → daemon-service-manager-fPpyIyrU.js} +1 -1
  30. package/dist/{daemon-service-runtime-CY6wdBe1.js → daemon-service-runtime-CGT3yVOs.js} +22 -16
  31. package/dist/{daemon-service-runtime-CY6wdBe1.js.map → daemon-service-runtime-CGT3yVOs.js.map} +1 -1
  32. package/dist/{daemon-service-update-coordinator-BcbbIDzC.js → daemon-service-update-coordinator--xLHNqDT.js} +625 -55
  33. package/dist/daemon-service-update-coordinator--xLHNqDT.js.map +1 -0
  34. package/dist/{daemon-state-C37ZtIZK.js → daemon-state-CoAZLwpi.js} +3 -3
  35. package/dist/{daemon-state-C37ZtIZK.js.map → daemon-state-CoAZLwpi.js.map} +1 -1
  36. package/dist/dist-CABuqfdH.js +4 -0
  37. package/dist/{dist-CAx_kxvt.js → dist-Dj3TOx03.js} +481 -195
  38. package/dist/dist-Dj3TOx03.js.map +1 -0
  39. package/dist/distribution-BDQT2ilb.js +20 -0
  40. package/dist/distribution-BDQT2ilb.js.map +1 -0
  41. package/dist/{elapsed-time-Do3uIV__.js → elapsed-time-CCFWbCC8.js} +5 -5
  42. package/dist/{elapsed-time-Do3uIV__.js.map → elapsed-time-CCFWbCC8.js.map} +1 -1
  43. package/dist/{installation-inventory-C92AkQkA.js → installation-inventory-C4WKcVEj.js} +6 -6
  44. package/dist/{installation-inventory-C92AkQkA.js.map → installation-inventory-C4WKcVEj.js.map} +1 -1
  45. package/dist/{lock-Dxp6o_t_.js → lock-CAt9uTnZ.js} +5 -48
  46. package/dist/lock-CAt9uTnZ.js.map +1 -0
  47. package/dist/{openmeld-I4pLxQsY.js → openmeld-DpV9lAF-.js} +312 -188
  48. package/dist/openmeld-DpV9lAF-.js.map +1 -0
  49. package/dist/openmeld-dev.js +1 -1
  50. package/dist/{openmeld-environment-target-NtJYJe1D.js → openmeld-environment-target-BWI2adGw.js} +3 -3
  51. package/dist/{openmeld-environment-target-NtJYJe1D.js.map → openmeld-environment-target-BWI2adGw.js.map} +1 -1
  52. package/dist/{openmeld-maintenance-worker-D5VAO9GD.js → openmeld-maintenance-worker-Blfu_oOo.js} +9 -9
  53. package/dist/{openmeld-maintenance-worker-D5VAO9GD.js.map → openmeld-maintenance-worker-Blfu_oOo.js.map} +1 -1
  54. package/dist/{openmeld-tools-update-join-DsQdgYNw.js → openmeld-tools-update-join-BpLwmowQ.js} +4 -4
  55. package/dist/{openmeld-tools-update-join-DsQdgYNw.js.map → openmeld-tools-update-join-BpLwmowQ.js.map} +1 -1
  56. package/dist/openmeld.js +3 -3
  57. package/dist/{prepare-session-executor-BEzlM0hJ.js → prepare-session-executor-Cfm3EvXl.js} +16 -16
  58. package/dist/{prepare-session-executor-BEzlM0hJ.js.map → prepare-session-executor-Cfm3EvXl.js.map} +1 -1
  59. package/dist/process-identity-Clby123a.js +145 -0
  60. package/dist/process-identity-Clby123a.js.map +1 -0
  61. package/dist/{runtime-transport-DxISZdzf.js → runtime-transport-D8G8sANa.js} +92 -6
  62. package/dist/runtime-transport-D8G8sANa.js.map +1 -0
  63. package/dist/{service-Cev-7yAJ.js → service-Cl_Ge6oJ.js} +720 -35
  64. package/dist/service-Cl_Ge6oJ.js.map +1 -0
  65. package/dist/{distribution-DY2fBeSW.js → service-account-admission-Dy2W3n3_.js} +9 -19
  66. package/dist/service-account-admission-Dy2W3n3_.js.map +1 -0
  67. package/dist/{service-account-authorization-AbowIr6n.js → service-account-authorization-4oZuo8sT.js} +6 -6
  68. package/dist/{service-account-authorization-AbowIr6n.js.map → service-account-authorization-4oZuo8sT.js.map} +1 -1
  69. package/dist/{service-account-control-BV_tBiio.js → service-account-control-CTXv3924.js} +11 -12
  70. package/dist/service-account-control-CTXv3924.js.map +1 -0
  71. package/dist/{service-control-capabilities-BGXPenm1.js → service-control-capabilities-B-vCQoBV.js} +1 -1
  72. package/dist/service-control-capabilities-ptf0u8n5.js +70 -0
  73. package/dist/service-control-capabilities-ptf0u8n5.js.map +1 -0
  74. package/dist/service-control-carrier-capability-hvpD7hGf.js +24 -0
  75. package/dist/service-control-carrier-capability-hvpD7hGf.js.map +1 -0
  76. package/dist/upgrade-EWdIdoHm.js +4 -0
  77. package/dist/{upgrade-9h70HCQP.js → upgrade-vuPM1iX3.js} +7 -7
  78. package/dist/{upgrade-9h70HCQP.js.map → upgrade-vuPM1iX3.js.map} +1 -1
  79. package/dist/{windows-user-task-DxPN7TzK.js → windows-user-task-FdycoSb4.js} +1 -1
  80. package/dist/{windows-user-task-DqJWtlAm.js → windows-user-task-i0oHCBc0.js} +49 -19
  81. package/dist/windows-user-task-i0oHCBc0.js.map +1 -0
  82. package/package.json +2 -2
  83. package/dist/auth-session-D6UDl3r3.js +0 -4
  84. package/dist/auth-session-DgHvRt5i.js.map +0 -1
  85. package/dist/daemon-service-update-coordinator-BcbbIDzC.js.map +0 -1
  86. package/dist/dist-Bsz_wafH.js +0 -4
  87. package/dist/dist-CAx_kxvt.js.map +0 -1
  88. package/dist/distribution-DY2fBeSW.js.map +0 -1
  89. package/dist/lock-Dxp6o_t_.js.map +0 -1
  90. package/dist/openmeld-I4pLxQsY.js.map +0 -1
  91. package/dist/runtime-transport-DxISZdzf.js.map +0 -1
  92. package/dist/service-Cev-7yAJ.js.map +0 -1
  93. package/dist/service-account-control-BV_tBiio.js.map +0 -1
  94. package/dist/service-control-capabilities-DUudAKoj.js +0 -54
  95. package/dist/service-control-capabilities-DUudAKoj.js.map +0 -1
  96. package/dist/upgrade-CXgHeEKK.js +0 -4
  97. package/dist/windows-user-task-DqJWtlAm.js.map +0 -1
@@ -2,39 +2,41 @@
2
2
 
3
3
  import { n as toDaemonRouteObservationUrl } from "./urls-CY2uzH2-.js";
4
4
  import { t as isLoopbackHostname } from "./loopback-hostname-DHQPKq8N.js";
5
- import { B as deviceOpenClawProfileBootstrapPath, C as isProcessIdentityAlive, H as deviceOpenClawProfileWorkspaceDir, I as accountProfileViewPath, L as accountProfileWorkspacePath, N as OPENMELD_HOME_ENV_KEY, P as accountProfileLocalMetaPath, Q as openMeldBackupsDir, S as CURRENT_PROCESS_START_IDENTITY, V as deviceOpenClawProfileDir, X as normalizeAccountKey, Z as normalizeOpenMeldProfileId, _ as resolveCliContext, a as isOpenMeldOrphanedLockError, d as runWithHeldLock, dt as resolveOpenMeldEnvPreset, ft as resolveOpenMeldRootDir, g as readCliContextState, h as listCliContextStates, ht as runtimeDir, i as isOpenMeldLockError, q as isPublishedOpenMeldHome, rt as openMeldRootDir, t as acquireLock, tt as openMeldManagedVersionBinaryPath, y as writeCliContextState, yt as systemDir } from "./lock-Dxp6o_t_.js";
6
- import { Ar as modelCatalogSchema, Ci as agentControllerCollaborationModeSchema, Gn as OPENMELD_HEADER_PROFILE_ID, Kt as createLocalRuntimeExpectedRoutesApi, Mt as createAgentProfileBindingApi, Si as agentControllerPermissionModeSchema, Xn as toErrorMessage$24, jn as toStructuredApiClientFailure, t as OpenMeldApiClientHttpError, xi as openCodePermissionConfigSchema, zt as createCurrentDeviceApi } from "./dist-CAx_kxvt.js";
5
+ import { A as OPENMELD_HOME_ENV_KEY, J as normalizeOpenMeldProfileId, L as deviceOpenClawProfileBootstrapPath, N as accountProfileViewPath, P as accountProfileWorkspacePath, Q as openMeldManagedVersionBinaryPath, R as deviceOpenClawProfileDir, W as isPublishedOpenMeldHome, Y as openMeldBackupsDir, _ as resolveCliContext, a as isOpenMeldOrphanedLockError, ct as resolveOpenMeldEnvPreset, d as runWithHeldLock, et as openMeldRootDir, ft as runtimeDir, g as readCliContextState, gt as systemDir, h as listCliContextStates, i as isOpenMeldLockError, j as accountProfileLocalMetaPath, lt as resolveOpenMeldRootDir, q as normalizeAccountKey, t as acquireLock, y as writeCliContextState, z as deviceOpenClawProfileWorkspaceDir } from "./lock-CAt9uTnZ.js";
6
+ import { Ci as openCodePermissionConfigSchema, Kt as createLocalRuntimeExpectedRoutesApi, Mr as modelCatalogSchema, Mt as createAgentProfileBindingApi, Nn as toStructuredApiClientFailure, Qn as toErrorMessage$24, Ti as agentControllerCollaborationModeSchema, qn as OPENMELD_HEADER_PROFILE_ID, t as OpenMeldApiClientHttpError, wi as agentControllerPermissionModeSchema, zt as createCurrentDeviceApi } from "./dist-Dj3TOx03.js";
7
7
  import { _ as canonicalizeAgentControllerRef, b as normalizeKnownBuiltinAgentControllerId, d as resolveBuiltinAgentControllerConversationKind, f as HOSTED_CENTER_AGENT_CONTROLLER_REF, g as buildAgentControllerRoutingKey, l as buildAgentControllerConversationRef, m as HOSTED_REMOTE_AGENT_CONTROLLER_REF, n as runtimeAgentControllerConversationIdMappingSpecSchema, o as runtimeStreamingModeSchema, p as HOSTED_CENTER_AGENT_CONTROLLER_REF_ID, r as runtimeAgentControllerLaunchContractSchema, s as runtimeTransportModeSchema, u as conversationPolicySchema, v as canonicalizeBuiltinAgentControllerRef, x as parseAgentControllerRef$1 } from "./controller-contract-pe3_Re-c.js";
8
- import { An as normalizeMessageEnvelope, B as isOriginalErrorSafeForMessageDetails, Br as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, Dn as formatCanonicalMentionLiteral, G as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, Gr as profileErrorResponseSchema, Hr as authProfileManagedRoleSchema, Jn as agentInteractionResolutionSchema, Lr as localAgentCatalogSchema, N as runtimeTransportRejectedProfileRegistrationSchema, O as runtimeTransportLookupRouteOwnerServiceEvidenceSchema, Qr as resolveCommandAgentWorkActivity, U as openMeldDaemonProviderAccessEvidenceSchema, W as openMeldDaemonTaskResultEnvelopeWriteSchema, Wr as profileCapabilitiesResponseSchema, X as resolvePublicAgentAvailabilityCopy, Yr as openMeldProfileIdSchema, Z as resolvePublicAgentFailureRecovery, _ as runtimeTransportErrorCodeSchema, i as localWakeRouteReportSchema, n as daemonExecutionCompatibilitySchema, o as runtimeTransportCapabilitiesSchema, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, z as OPENMELD_ORIGINAL_ERROR_MAX_LENGTH, zr as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE } from "./runtime-transport-DxISZdzf.js";
9
- import { $ as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, B as DEFAULT_HEARTBEAT_INTERVAL_MS$1, F as DAEMON_RUNTIME_CONTRACT_EPOCH$1, G as MIN_HEARTBEAT_INTERVAL_MS$2, H as HEARTBEAT_RESPONSE_TIMEOUT_MS$1, I as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, J as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, L as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, N as CATALOG_SYNC_RETRY_INTERVAL_MS$1, P as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, Q as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, R as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, U as MAX_HEARTBEAT_INTERVAL_MS$2, X as REGISTER_RESPONSE_TIMEOUT_MS$1, Y as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1, d as getAuthSessionState, et as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, m as hasPendingComputerSetupContinuation, q as OPENCLAW_CLI_TIMEOUT_MS$1, z as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1 } from "./auth-session-DgHvRt5i.js";
8
+ import { B as isOriginalErrorSafeForMessageDetails, G as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, Kr as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE, Ln as normalizeMessageEnvelope, N as runtimeTransportRejectedProfileRegistrationSchema, O as runtimeTransportLookupRouteOwnerServiceEvidenceSchema, Pn as formatCanonicalMentionLiteral, Qr as profileErrorResponseSchema, U as openMeldDaemonProviderAccessEvidenceSchema, W as openMeldDaemonTaskResultEnvelopeWriteSchema, Wr as localAgentCatalogSchema, X as resolvePublicAgentAvailabilityCopy, Yr as authProfileManagedRoleSchema, Z as resolvePublicAgentFailureRecovery, Zr as profileCapabilitiesResponseSchema, _ as runtimeTransportErrorCodeSchema, ai as resolveCommandAgentWorkActivity, i as localWakeRouteReportSchema, n as daemonExecutionCompatibilitySchema, ni as openMeldProfileIdSchema, o as runtimeTransportCapabilitiesSchema, qr as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, tr as agentInteractionResolutionSchema, z as OPENMELD_ORIGINAL_ERROR_MAX_LENGTH } from "./runtime-transport-D8G8sANa.js";
9
+ import { $ as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, B as DEFAULT_HEARTBEAT_INTERVAL_MS$1, F as DAEMON_RUNTIME_CONTRACT_EPOCH$1, G as MIN_HEARTBEAT_INTERVAL_MS$2, H as HEARTBEAT_RESPONSE_TIMEOUT_MS$1, I as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, J as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, L as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, N as CATALOG_SYNC_RETRY_INTERVAL_MS$1, P as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, Q as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, R as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, U as MAX_HEARTBEAT_INTERVAL_MS$2, X as REGISTER_RESPONSE_TIMEOUT_MS$1, Y as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1, d as getAuthSessionState, et as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, m as hasPendingComputerSetupContinuation, q as OPENCLAW_CLI_TIMEOUT_MS$1, z as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1 } from "./auth-session-gaLjWIKR.js";
10
10
  import { A as profileWorkspaceModeSchema, C as normalizeOptionalWorkingDirectory, S as agentProfileIdSchema, _ as providerDispatchRuntimeContextSchema, a as openMeldDaemonControlPlaneResponseSchema, g as skippedDaemonProfileSchema, i as openMeldDaemonControlPlaneRequestSchema, x as MAX_PROFILE_WORKING_DIRECTORY_LENGTH, y as conversationExecutionStateSchema } from "./control-plane-Bpu7g9Av.js";
11
11
  import { v as openMeldToolsUpdateAttemptSchema, w as openMeldToolsUpdateRequestSourceSchema } from "./local-components-B6SCXZf9.js";
12
12
  import { r as daemonServiceLaneSchema } from "./service-contract-CRyDcIIf.js";
13
- import { n as resolveOpenMeldDistribution, t as isBinaryDistribution } from "./distribution-DY2fBeSW.js";
14
- import { r as readDaemonRuntimeLease } from "./daemon-runtime-lease-Dd4hdHNo.js";
15
- import { $ as readManagedCliInstallation, A as prepareDaemonServiceBundle, B as resolveDaemonServiceArtifact, Bt as isUnsafeProductionDeviceId, C as daemonServiceExecutableWrapperPath, Ct as resolveDaemonServiceUpdateWorkerLaunchdPlistPath, D as ensureDaemonServiceStableBinaryExecutable, Dt as resolveDaemonServiceUpdateWorkerWindowsScriptPath, E as discardPreparedDaemonServiceBundle, Et as resolveDaemonServiceUpdateWorkerSystemdUnitPath, F as restoreDaemonActiveBundleStateSnapshot, Ft as requestLocalDaemonShutdown, Ht as upsertDaemonServiceContract, I as runAuditedServiceManagerCarrierMutation, It as requestLocalSyncRouteCatalog, L as verifyDaemonActiveBundleIntegrity, Mt as LocalDaemonControlPlaneClientError, N as resolveDaemonBundleEntryPathFromState, O as ensureDaemonServiceUpdateWorkerBinaryExecutable, P as resolveInstalledDaemonBundleFingerprint, Pt as requestLocalDaemonServiceUpdateReadiness, Q as pruneManagedInstallVersions, R as writeDaemonServiceExecutableWrapper, Rt as clearDaemonServiceContract, S as daemonServiceBinaryExecutablePath, St as resolveDaemonServiceUpdateWorkerIdentity, T as daemonServiceUpdateWorkerBinaryPath, Tt as resolveDaemonServiceUpdateWorkerSystemdTimerUnitPath, U as readLatestDaemonLifecycleConnectionStateEvent, V as emitDaemonLifecycleEvent, Vt as readDaemonServiceContract, W as readLatestDaemonLifecycleOriginEvent, _ as matchesExpectedDaemonServiceManagerDefinition, a as resolveDaemonRuntimeState, at as persistPendingDaemonServiceUpdate, bt as daemonServiceUpdateWorkerNpmEntryPath, c as resolveObservedDaemonRuntimeStatus, ct as buildNextVersionState, d as inspectLegacySharedDaemonService, et as resolveCliSelfVersion, f as listDaemonOwnedProcesses, ft as fetchLatestPackageInfo, g as assertDaemonMaintenanceInstallationOwnership, gt as resolveBundledServiceRelease, ht as writeVersionState, i as readCurrentObservedDaemonRuntimeStatus, it as completePendingDaemonServiceUpdate, j as readDaemonActiveBundleState, k as isDaemonBundleSourceAllowedForLane, l as resolveObservedRuntimeCommandEntryPath, lt as compareSemver, m as normalizeDaemonCommandPath, mt as readVersionState, n as getEffectiveDaemonRuntimeStatus, nt as OPENMELD_VERSION, o as resolveDaemonServiceManagerForRuntimeState, pt as isPlainReleaseVersion, q as runDaemonServiceManagerAction, r as readCurrentDaemonRuntimeContext, rt as DAEMON_SERVICE_UPDATE_JOB_SCHEMA, s as waitForDaemonSystemServiceToStop, st as readPendingDaemonServiceUpdate, t as clearDaemonRuntimeStateIfDefinitelyStopped, tt as withManagedInstallTransaction, u as cleanupLegacySharedDaemonServiceState, vt as INDEPENDENT_MAINTENANCE_REGISTRATION, w as daemonServiceLauncherPath, wt as resolveDaemonServiceUpdateWorkerSystemdPathUnitPath, x as clearDaemonServiceUpdateWorkerBinaryExecutable, xt as hasIndependentMaintenanceRegistration, y as activateDaemonServiceBundle, yt as configureDaemonMaintenanceEnvironment, z as writeDaemonServiceLauncher, zt as isDaemonServiceContractIdentityReusable } from "./daemon-service-runtime-CY6wdBe1.js";
16
- import { i as windowsTaskActionArguments, n as runWindowsUserTask, r as windowsPowerShellPath } from "./windows-user-task-DqJWtlAm.js";
17
- import { C as updateConfiguredDeviceRuntimeState, T as updateConfiguredSkillsConfig, _ as getConfiguredViewCustomization, a as resolveBaseUrl, c as resolveExplicitGatewayUrlOrThrow, d as createDefaultRuntimeAgentControllerSettings, g as getConfiguredSkillsConfig, h as getConfiguredOpenMeldToolsMaintenance, i as normalizeGatewayBaseUrlOrNull, o as resolveBaseUrlOrNull, p as getConfiguredDeviceRuntimeState, v as getRuntimeConfigReadHealth, x as setConfiguredOpenMeldToolsMaintenance, y as resolveRuntimeSkillsCustomTargetId } from "./base-url-C6sHRNGu.js";
13
+ import { r as readDaemonRuntimeLease } from "./daemon-runtime-lease-CIzOT1zx.js";
14
+ import { $ as readManagedCliInstallation, A as prepareDaemonServiceBundle, B as resolveDaemonServiceArtifact, Bt as isUnsafeProductionDeviceId, C as daemonServiceExecutableWrapperPath, Ct as resolveDaemonServiceUpdateWorkerLaunchdPlistPath, D as ensureDaemonServiceStableBinaryExecutable, Dt as resolveDaemonServiceUpdateWorkerWindowsScriptPath, E as discardPreparedDaemonServiceBundle, Et as resolveDaemonServiceUpdateWorkerSystemdUnitPath, F as restoreDaemonActiveBundleStateSnapshot, Ft as requestLocalDaemonShutdown, Ht as upsertDaemonServiceContract, I as runAuditedServiceManagerCarrierMutation, It as requestLocalSyncRouteCatalog, L as verifyDaemonActiveBundleIntegrity, Mt as LocalDaemonControlPlaneClientError, N as resolveDaemonBundleEntryPathFromState, O as ensureDaemonServiceUpdateWorkerBinaryExecutable, P as resolveInstalledDaemonBundleFingerprint, Pt as requestLocalDaemonServiceUpdateReadiness, Q as pruneManagedInstallVersions, R as writeDaemonServiceExecutableWrapper, Rt as clearDaemonServiceContract, S as daemonServiceBinaryExecutablePath, St as resolveDaemonServiceUpdateWorkerIdentity, T as daemonServiceUpdateWorkerBinaryPath, Tt as resolveDaemonServiceUpdateWorkerSystemdTimerUnitPath, U as readLatestDaemonLifecycleConnectionStateEvent, V as emitDaemonLifecycleEvent, Vt as readDaemonServiceContract, W as readLatestDaemonLifecycleOriginEvent, _ as matchesExpectedDaemonServiceManagerDefinition, a as resolveDaemonRuntimeState, at as persistPendingDaemonServiceUpdate, bt as daemonServiceUpdateWorkerNpmEntryPath, c as resolveObservedDaemonRuntimeStatus, ct as buildNextVersionState, d as inspectLegacySharedDaemonService, et as resolveCliSelfVersion, f as listDaemonOwnedProcesses, ft as fetchLatestPackageInfo, g as assertDaemonMaintenanceInstallationOwnership, gt as resolveBundledServiceRelease, ht as writeVersionState, i as readCurrentObservedDaemonRuntimeStatus, it as completePendingDaemonServiceUpdate, j as readDaemonActiveBundleState, k as isDaemonBundleSourceAllowedForLane, l as resolveObservedRuntimeCommandEntryPath, lt as compareSemver, m as normalizeDaemonCommandPath, mt as readVersionState, n as getEffectiveDaemonRuntimeStatus, nt as OPENMELD_VERSION, o as resolveDaemonServiceManagerForRuntimeState, pt as isPlainReleaseVersion, q as runDaemonServiceManagerAction, r as readCurrentDaemonRuntimeContext, rt as DAEMON_SERVICE_UPDATE_JOB_SCHEMA, s as waitForDaemonSystemServiceToStop, st as readPendingDaemonServiceUpdate, t as clearDaemonRuntimeStateIfDefinitelyStopped, tt as withManagedInstallTransaction, u as cleanupLegacySharedDaemonServiceState, vt as INDEPENDENT_MAINTENANCE_REGISTRATION, w as daemonServiceLauncherPath, wt as resolveDaemonServiceUpdateWorkerSystemdPathUnitPath, x as clearDaemonServiceUpdateWorkerBinaryExecutable, xt as hasIndependentMaintenanceRegistration, y as activateDaemonServiceBundle, yt as configureDaemonMaintenanceEnvironment, z as writeDaemonServiceLauncher, zt as isDaemonServiceContractIdentityReusable } from "./daemon-service-runtime-CGT3yVOs.js";
15
+ import { i as windowsTaskActionArguments, n as runWindowsUserTask, r as windowsPowerShellPath } from "./windows-user-task-i0oHCBc0.js";
16
+ import { C as updateConfiguredDeviceRuntimeState, T as updateConfiguredSkillsConfig, _ as getConfiguredViewCustomization, a as resolveBaseUrl, c as resolveExplicitGatewayUrlOrThrow, d as createDefaultRuntimeAgentControllerSettings, g as getConfiguredSkillsConfig, h as getConfiguredOpenMeldToolsMaintenance, i as normalizeGatewayBaseUrlOrNull, o as resolveBaseUrlOrNull, p as getConfiguredDeviceRuntimeState, v as getRuntimeConfigReadHealth, x as setConfiguredOpenMeldToolsMaintenance, y as resolveRuntimeSkillsCustomTargetId } from "./base-url-BczddvzH.js";
17
+ import { a as powerShellEncodedArguments, c as WINDOWS_RUNTIME_ENV_KEYS, l as normalizeCommandEnvironment, o as readWindowsProcessStartFileTime, r as isProcessIdentityAlive, s as resolveWindowsPowerShellPath, t as CURRENT_PROCESS_START_IDENTITY } from "./process-identity-Clby123a.js";
18
18
  import { n as writeDaemonLocalStateFile, t as readDaemonLocalStateFile } from "./daemon-local-state-file-jOXuXrky.js";
19
- import { A as getDaemonStatus, B as restoreDaemonInstallStateSnapshot, F as readDaemonServiceLifecycleLockMetaWithCleanup, I as readDaemonServiceRuntimeSnapshot, V as rotateDaemonControlPlaneTokenIfExpired, W as withDaemonServiceReconcileLock, _ as daemonRuntimeStateRootPath, a as DAEMON_SERVICE_RUNTIME_MODE_ENV, f as daemonLifecycleJournalPath, h as daemonRuntimeRootPath, i as DAEMON_SERVICE_RUNTIME_DETACHED_ENV, j as installDaemon, m as daemonRuntimeDataPath, n as DAEMON_SERVICE_RUNTIME_AUTO_START_ENV, r as DAEMON_SERVICE_RUNTIME_CONTROLLER_ENV, s as DAEMON_SERVICE_RUNTIME_SYSTEM_SERVICE_ENV } from "./daemon-state-C37ZtIZK.js";
20
- import { O as assertSafePublishedProductionServiceRegistrationMutation, S as resolveDaemonServiceManager, T as waitForLaunchdJobUnloaded, a as disableDaemonServiceAutostartIfConfigured, c as getDaemonSystemServiceLogPath, o as formatDaemonServiceJobDiagnosticsEvidence, s as getDaemonServiceLaunchdLabel, v as readDaemonServiceStartupPolicyCurrent, w as startLaunchdService } from "./daemon-service-manager-GiMCiTmu.js";
21
- import { a as formatOpenMeldCliCommand, c as formatOpenMeldCliTextBlock, i as formatInlineOpenMeldCliCommands, n as resolveOpenMeldEnvironmentTargetFromEnv, o as formatOpenMeldCliCommands, r as resolveAuthBaseUrl, t as resolveOpenMeldEnvironmentTarget } from "./openmeld-environment-target-NtJYJe1D.js";
19
+ import { n as resolveOpenMeldDistribution, t as isBinaryDistribution } from "./distribution-BDQT2ilb.js";
20
+ import { A as getDaemonStatus, B as restoreDaemonInstallStateSnapshot, F as readDaemonServiceLifecycleLockMetaWithCleanup, I as readDaemonServiceRuntimeSnapshot, V as rotateDaemonControlPlaneTokenIfExpired, W as withDaemonServiceReconcileLock, _ as daemonRuntimeStateRootPath, a as DAEMON_SERVICE_RUNTIME_MODE_ENV, f as daemonLifecycleJournalPath, h as daemonRuntimeRootPath, i as DAEMON_SERVICE_RUNTIME_DETACHED_ENV, j as installDaemon, m as daemonRuntimeDataPath, n as DAEMON_SERVICE_RUNTIME_AUTO_START_ENV, r as DAEMON_SERVICE_RUNTIME_CONTROLLER_ENV, s as DAEMON_SERVICE_RUNTIME_SYSTEM_SERVICE_ENV } from "./daemon-state-CoAZLwpi.js";
21
+ import { O as assertSafePublishedProductionServiceRegistrationMutation, S as resolveDaemonServiceManager, T as waitForLaunchdJobUnloaded, a as disableDaemonServiceAutostartIfConfigured, c as getDaemonSystemServiceLogPath, o as formatDaemonServiceJobDiagnosticsEvidence, s as getDaemonServiceLaunchdLabel, v as readDaemonServiceStartupPolicyCurrent, w as startLaunchdService } from "./daemon-service-manager-DxS5eH_N.js";
22
+ import { a as formatOpenMeldCliCommand, c as formatOpenMeldCliTextBlock, i as formatInlineOpenMeldCliCommands, n as resolveOpenMeldEnvironmentTargetFromEnv, o as formatOpenMeldCliCommands, r as resolveAuthBaseUrl, t as resolveOpenMeldEnvironmentTarget } from "./openmeld-environment-target-BWI2adGw.js";
22
23
  import { n as toErrorMessage$25, t as sleep } from "./dist-o3UL1EGQ.js";
23
- import { c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfile, n as fetchSpaceRequestWithTimeout, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation } from "./api-client-foundation-km8Ol1P4.js";
24
+ import { c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfile, n as fetchSpaceRequestWithTimeout, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation } from "./api-client-foundation-CKRP7Ymg.js";
24
25
  import { a as encodePersistedOpenMeldToolsUpdateFailure, i as OpenMeldToolsUpdateFailureError, o as resolveOpenMeldToolsUpdateFailure, r as parseOpenMeldToolsUpdateFailureFrame, t as appendBoundedOpenMeldToolsUpdateProcessOutput } from "./openmeld-tools-update-process-frame-0X-t0Kjv.js";
25
26
  import { createRequire } from "node:module";
26
27
  import { createHash, randomUUID } from "node:crypto";
27
28
  import { homedir, loadavg, tmpdir, userInfo } from "node:os";
28
- import { basename, delimiter, dirname, extname, isAbsolute, join, normalize, parse, relative, resolve, sep } from "node:path";
29
+ import { basename, delimiter, dirname, extname, isAbsolute, join, normalize, parse, relative, resolve, sep, win32 } from "node:path";
29
30
  import { access, chmod, copyFile, cp, mkdir, mkdtemp, open, readFile, readdir, realpath, rename, rm, stat, writeFile } from "node:fs/promises";
30
31
  import * as z$1 from "zod/v4";
31
- import { accessSync, constants, existsSync, readFileSync, realpathSync, statSync, watch, write } from "node:fs";
32
+ import { accessSync, closeSync, constants, existsSync, openSync, readFileSync, readSync, realpathSync, statSync, watch, write } from "node:fs";
32
33
  import process$1 from "node:process";
33
34
  import { execFile, spawn } from "node:child_process";
34
35
  import { setTimeout as setTimeout$1 } from "node:timers/promises";
35
36
  import { fileURLToPath, pathToFileURL } from "node:url";
36
37
  import { promisify } from "node:util";
37
38
  import { connect, createServer } from "node:net";
39
+ import { gzipSync } from "node:zlib";
38
40
  import { query } from "@anthropic-ai/claude-agent-sdk";
39
41
  import { createOpencodeClient } from "@opencode-ai/sdk/v2";
40
42
  //#region ../../packages/schemas/dist/agent-controller-brand.js
@@ -177,6 +179,22 @@ const daemonRouteCatalogCacheSchema = z$1.discriminatedUnion("v", [
177
179
  });
178
180
  });
179
181
  //#endregion
182
+ //#region ../../packages/schemas/dist/schemas/daemon/windows-process-job.js
183
+ const jobName = z$1.string().regex(/^Local\\OpenMeld-Process-[a-f0-9-]{36}$/u);
184
+ const text = z$1.string().min(1).refine((value) => !value.includes("\0"));
185
+ const windowsProcessJobRequestSchema = z$1.discriminatedUnion("operation", [z$1.strictObject({
186
+ operation: z$1.literal("launch"),
187
+ jobName,
188
+ executable: text,
189
+ commandLine: text.max(32766),
190
+ workingDirectory: text,
191
+ ownerPid: z$1.number().int().positive(),
192
+ ownerStartedAt: z$1.string().regex(/^\d{10,20}$/u)
193
+ }), z$1.strictObject({
194
+ operation: z$1.literal("drain"),
195
+ jobName
196
+ })]);
197
+ //#endregion
180
198
  //#region ../../packages/schemas/dist/schemas/http/daemon-route-observation.js
181
199
  const daemonRouteObservationRouteSchema = z$1.discriminatedUnion("online", [z$1.strictObject({
182
200
  online: z$1.literal(true),
@@ -231,7 +249,7 @@ function resolveOpenMeldAccountContext(input) {
231
249
  };
232
250
  }
233
251
  async function resolveCurrentOpenMeldAccountContext() {
234
- const { getAuthSessionMetadata } = await import("./auth-session-D6UDl3r3.js");
252
+ const { getAuthSessionMetadata } = await import("./auth-session-BWKfXWxl.js");
235
253
  return resolveOpenMeldAccountContext({ session: await getAuthSessionMetadata().catch(() => null) });
236
254
  }
237
255
  function resolveHostKey(baseUrl) {
@@ -1511,7 +1529,7 @@ async function ensureDaemonSystemServiceCommandFiles(input) {
1511
1529
  function buildSystemServiceEnvironment() {
1512
1530
  const env = {};
1513
1531
  const runtimeUser = userInfo().username;
1514
- for (const [key, value] of Object.entries(process$1.env)) {
1532
+ for (const [key, value] of Object.entries(normalizeCommandEnvironment(process$1.env))) {
1515
1533
  if (typeof value !== "string" || value.length === 0 || !isDaemonServiceEnvironmentKey(key)) continue;
1516
1534
  env[key] = sanitizeDaemonServiceEnvironmentValue(value);
1517
1535
  }
@@ -1522,7 +1540,7 @@ function buildSystemServiceEnvironment() {
1522
1540
  return env;
1523
1541
  }
1524
1542
  function isDaemonServiceEnvironmentKey(key) {
1525
- return DAEMON_SERVICE_ENV_KEY_WHITELIST.has(key);
1543
+ return DAEMON_SERVICE_ENV_KEY_WHITELIST.has(key) || process$1.platform === "win32" && WINDOWS_RUNTIME_ENV_KEYS.some((candidate) => candidate === key);
1526
1544
  }
1527
1545
  function sanitizeDaemonServiceEnvironmentValue(value) {
1528
1546
  let sanitized = "";
@@ -1947,6 +1965,460 @@ function createProviderOriginalError(value) {
1947
1965
  return normalized.slice(0, OPENMELD_ORIGINAL_ERROR_MAX_LENGTH);
1948
1966
  }
1949
1967
  //#endregion
1968
+ //#region ../../runtime/adapters/core/dist/process-launch.js
1969
+ const CMD_META_CHARACTERS = /* @__PURE__ */ new Set("()[]%!^\"`<>&|;, *?");
1970
+ const BATCH_PATH_PATTERN = /\.(?:cmd|bat)$/iu;
1971
+ const NODE_SCRIPT_PATTERN = /\.(?:cjs|mjs|js)$/iu;
1972
+ const INVALID_BATCH_TEXT = /[\r\n\0]/u;
1973
+ const SCRIPT_LINES = /\r?\n/u;
1974
+ const NPM_NODE_SHIM_PREFIX = [
1975
+ "@echo off",
1976
+ "goto start",
1977
+ ":find_dp0",
1978
+ "set dp0=%~dp0",
1979
+ "exit /b",
1980
+ ":start",
1981
+ "setlocal",
1982
+ "call :find_dp0",
1983
+ "if exist \"%dp0%\\node.exe\" (",
1984
+ "set \"_prog=%dp0%\\node.exe\"",
1985
+ ") else (",
1986
+ "set \"_prog=node\"",
1987
+ "set pathext=%pathext:;.js;=;%",
1988
+ ")"
1989
+ ];
1990
+ const NPM_NODE_SHIM_LAUNCH = /^endlocal & goto #_undefined_# 2>nul \|\| title %comspec% & "%_prog%"\s+"%dp0%[\\/]([^"\r\n]+)" %\*$/iu;
1991
+ /** Native argv at the process boundary; callers never interpolate args into a shell. */
1992
+ function resolvePlatformCommand(file, args, source = process.env, platform = process.platform) {
1993
+ if (platform !== "win32") return {
1994
+ bin: file,
1995
+ args: [...args]
1996
+ };
1997
+ const env = normalizeCommandEnvironment(source, platform);
1998
+ const command = resolveWindowsCommandPath(file, env);
1999
+ const nodeScript = NODE_SCRIPT_PATTERN.test(command) ? command : readNpmNodeShimTarget(command);
2000
+ if (nodeScript) return {
2001
+ bin: resolveWindowsNodeExecutable(dirname(command), env),
2002
+ args: [nodeScript, ...args]
2003
+ };
2004
+ if (!BATCH_PATH_PATTERN.test(command)) return {
2005
+ bin: command,
2006
+ args: [...args]
2007
+ };
2008
+ if ([command, ...args].some((value) => INVALID_BATCH_TEXT.test(value))) throw Object.assign(/* @__PURE__ */ new Error("This Windows batch wrapper cannot preserve multiline arguments. Select the native executable or Node script for this command."), { code: "WINDOWS_BATCH_ARGUMENT_UNSUPPORTED" });
2009
+ const escapedArgs = args.map((value) => {
2010
+ return escapeCmdText(escapeCmdText(quoteWindowsProcessArgument(value)));
2011
+ });
2012
+ const statement = [escapeCmdText(win32.normalize(command)), ...escapedArgs].join(" ");
2013
+ if (statement.length > 8e3) throw Object.assign(/* @__PURE__ */ new Error("This Windows batch command is too long. Select its native executable or Node script instead."), { code: "WINDOWS_BATCH_ARGUMENT_UNSUPPORTED" });
2014
+ const root = env.SystemRoot ?? env.WINDIR;
2015
+ if (!(root && win32.isAbsolute(root))) throw new Error("Windows system directory is unavailable.");
2016
+ return {
2017
+ bin: win32.join(root, "System32", "cmd.exe"),
2018
+ args: [
2019
+ "/d",
2020
+ "/v:off",
2021
+ "/s",
2022
+ "/c",
2023
+ `"${statement}"`
2024
+ ],
2025
+ windowsVerbatimArguments: true
2026
+ };
2027
+ }
2028
+ /** Windows CRT argv quoting, also used when CreateProcessW receives native argv. */
2029
+ function quoteWindowsProcessArgument(value) {
2030
+ if (value.includes("\0")) throw new Error("Process arguments must not contain a null byte.");
2031
+ let quoted = "\"";
2032
+ let slashes = 0;
2033
+ for (const char of value) {
2034
+ if (char === "\\") {
2035
+ slashes += 1;
2036
+ continue;
2037
+ }
2038
+ quoted += "\\".repeat(char === "\"" ? slashes * 2 + 1 : slashes) + char;
2039
+ slashes = 0;
2040
+ }
2041
+ return `${quoted}${"\\".repeat(slashes * 2)}"`;
2042
+ }
2043
+ function escapeCmdText(value) {
2044
+ return [...value].map((char) => CMD_META_CHARACTERS.has(char) ? `^${char}` : char).join("");
2045
+ }
2046
+ function isFile(path) {
2047
+ try {
2048
+ return statSync(path).isFile();
2049
+ } catch {
2050
+ return false;
2051
+ }
2052
+ }
2053
+ function resolveWindowsCommandPath(file, source = process.env) {
2054
+ if (file.includes("/") || file.includes("\\") || win32.isAbsolute(file)) return file;
2055
+ const env = normalizeCommandEnvironment(source, "win32");
2056
+ const extensions = (env.PATHEXT ?? ".COM;.EXE;.BAT;.CMD").split(";").filter(Boolean).map((item) => item.toLowerCase());
2057
+ const names = extname(file) ? [file] : [...extensions.map((extension) => `${file}${extension}`), file];
2058
+ for (const directory of (env.PATH ?? "").split(";").filter(Boolean)) for (const name of names) {
2059
+ const candidate = join(directory, name);
2060
+ if (isFile(candidate)) return candidate;
2061
+ }
2062
+ return file;
2063
+ }
2064
+ function resolveWindowsNodeExecutable(directory, env) {
2065
+ const sibling = join(directory, "node.exe");
2066
+ if (isFile(sibling)) return sibling;
2067
+ const onPath = resolveWindowsCommandPath("node.exe", env);
2068
+ if (onPath !== "node.exe" && isFile(onPath)) return onPath;
2069
+ if (!process.versions.electron && basename(process.execPath).toLowerCase() === "node.exe") return process.execPath;
2070
+ throw Object.assign(/* @__PURE__ */ new Error("Node.js is required to run this Windows CLI. Install the supported Node.js release, then try again."), { code: "NODE_RUNTIME_NOT_FOUND" });
2071
+ }
2072
+ function readNpmNodeShimTarget(file) {
2073
+ if (!BATCH_PATH_PATTERN.test(file)) return null;
2074
+ let descriptor;
2075
+ try {
2076
+ descriptor = openSync(file, "r");
2077
+ const buffer = Buffer.alloc(65537);
2078
+ const size = readSync(descriptor, buffer, 0, buffer.length, 0);
2079
+ if (size > 65536) return null;
2080
+ const lines = buffer.subarray(0, size).toString("utf8").split(SCRIPT_LINES).map((line) => line.trim()).filter(Boolean);
2081
+ if (lines.length !== NPM_NODE_SHIM_PREFIX.length + 1 || !NPM_NODE_SHIM_PREFIX.every((line, index) => lines[index]?.toLowerCase() === line)) return null;
2082
+ const target = lines.at(-1)?.match(NPM_NODE_SHIM_LAUNCH)?.[1];
2083
+ if (!(target && NODE_SCRIPT_PATTERN.test(target)) || target.includes("%")) return null;
2084
+ return resolve(dirname(file), target.replaceAll("\\", sep));
2085
+ } catch {
2086
+ return null;
2087
+ } finally {
2088
+ if (descriptor !== void 0) closeSync(descriptor);
2089
+ }
2090
+ }
2091
+ function executePlatformFile(file, args, options, callback) {
2092
+ try {
2093
+ const env = normalizeCommandEnvironment(options.env ?? process.env);
2094
+ const invocation = resolvePlatformCommand(file, args, env);
2095
+ return execFile(invocation.bin, invocation.args, {
2096
+ ...options,
2097
+ encoding: "utf8",
2098
+ env,
2099
+ ...process.platform === "win32" ? {
2100
+ shell: false,
2101
+ windowsHide: true,
2102
+ windowsVerbatimArguments: invocation.windowsVerbatimArguments ?? false
2103
+ } : {}
2104
+ }, callback);
2105
+ } catch (error) {
2106
+ const failure = error instanceof Error ? error : /* @__PURE__ */ new Error("The native command could not be prepared.");
2107
+ queueMicrotask(() => callback(failure, "", ""));
2108
+ return;
2109
+ }
2110
+ }
2111
+ function executePlatformFileAsync(file, args, options = {}) {
2112
+ if (process.platform !== "win32") return promisify(execFile)(file, [...args], {
2113
+ ...options,
2114
+ encoding: "utf8"
2115
+ });
2116
+ return new Promise((resolveResult, reject) => {
2117
+ executePlatformFile(file, args, options, (error, stdout, stderr) => {
2118
+ if (error) reject(Object.assign(error, {
2119
+ stdout,
2120
+ stderr
2121
+ }));
2122
+ else resolveResult({
2123
+ stdout,
2124
+ stderr
2125
+ });
2126
+ });
2127
+ });
2128
+ }
2129
+ const execPlatformFile = Object.assign(executePlatformFile, { [promisify.custom]: executePlatformFileAsync });
2130
+ //#endregion
2131
+ //#region ../../runtime/adapters/core/dist/windows-process-job-native.js
2132
+ const WINDOWS_PROCESS_JOB_NATIVE_SOURCE = `
2133
+ using System;
2134
+ using System.ComponentModel;
2135
+ using System.Diagnostics;
2136
+ using System.Globalization;
2137
+ using System.Runtime.InteropServices;
2138
+ using System.Text;
2139
+ using System.Threading;
2140
+
2141
+ public static class OpenMeldProcessJobV1 {
2142
+ const uint WaitTimeout = 258;
2143
+ const uint WaitFailed = 0xffffffff;
2144
+ const uint KillOnClose = 0x2000;
2145
+ const uint ExtendedStartup = 0x00080000;
2146
+ const uint NoWindow = 0x08000000;
2147
+ const uint UnicodeEnvironment = 0x00000400;
2148
+
2149
+ [StructLayout(LayoutKind.Sequential)] struct BasicLimits {
2150
+ public long ProcessTime, JobTime;
2151
+ public uint Flags;
2152
+ public UIntPtr MinWorkingSet, MaxWorkingSet;
2153
+ public uint ActiveProcessLimit;
2154
+ public UIntPtr Affinity;
2155
+ public uint PriorityClass, SchedulingClass;
2156
+ }
2157
+ [StructLayout(LayoutKind.Sequential)] struct IoCounters {
2158
+ public ulong ReadOperations, WriteOperations, OtherOperations;
2159
+ public ulong ReadBytes, WriteBytes, OtherBytes;
2160
+ }
2161
+ [StructLayout(LayoutKind.Sequential)] struct ExtendedLimits {
2162
+ public BasicLimits Basic;
2163
+ public IoCounters Io;
2164
+ public UIntPtr ProcessMemory, JobMemory, PeakProcessMemory, PeakJobMemory;
2165
+ }
2166
+ [StructLayout(LayoutKind.Sequential)] struct Accounting {
2167
+ public long UserTime, KernelTime, PeriodUserTime, PeriodKernelTime;
2168
+ public uint PageFaults, TotalProcesses, ActiveProcesses, TerminatedProcesses;
2169
+ }
2170
+ [StructLayout(LayoutKind.Sequential, CharSet=CharSet.Unicode)] struct StartupInfo {
2171
+ public uint Size;
2172
+ public string Reserved, Desktop, Title;
2173
+ public uint X, Y, XSize, YSize, XCountChars, YCountChars, FillAttribute, Flags;
2174
+ public ushort ShowWindow, ReservedBytes;
2175
+ public IntPtr ReservedPointer, StandardInput, StandardOutput, StandardError;
2176
+ }
2177
+ [StructLayout(LayoutKind.Sequential)] struct StartupInfoEx {
2178
+ public StartupInfo Startup;
2179
+ public IntPtr Attributes;
2180
+ }
2181
+ [StructLayout(LayoutKind.Sequential)] struct ProcessInfo {
2182
+ public IntPtr Process, Thread;
2183
+ public uint ProcessId, ThreadId;
2184
+ }
2185
+
2186
+ [DllImport("kernel32.dll", CharSet=CharSet.Unicode, SetLastError=true)] static extern IntPtr CreateJobObjectW(IntPtr attributes, string name);
2187
+ [DllImport("kernel32.dll", CharSet=CharSet.Unicode, SetLastError=true)] static extern IntPtr OpenJobObjectW(uint access, bool inherit, string name);
2188
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool SetInformationJobObject(IntPtr job, int kind, ref ExtendedLimits limits, uint size);
2189
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool QueryInformationJobObject(IntPtr job, int kind, out Accounting info, uint size, IntPtr length);
2190
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool TerminateJobObject(IntPtr job, uint code);
2191
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool InitializeProcThreadAttributeList(IntPtr list, int count, uint flags, ref IntPtr size);
2192
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool UpdateProcThreadAttribute(IntPtr list, uint flags, IntPtr attribute, IntPtr value, IntPtr size, IntPtr previous, IntPtr returnedSize);
2193
+ [DllImport("kernel32.dll")] static extern void DeleteProcThreadAttributeList(IntPtr list);
2194
+ [DllImport("kernel32.dll", CharSet=CharSet.Unicode, SetLastError=true)] static extern bool CreateProcessW(string application, StringBuilder command, IntPtr processAttributes, IntPtr threadAttributes, bool inherit, uint flags, IntPtr environment, string cwd, ref StartupInfoEx startup, out ProcessInfo process);
2195
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool GetExitCodeProcess(IntPtr process, out uint code);
2196
+ [DllImport("kernel32.dll", SetLastError=true)] static extern IntPtr OpenProcess(uint access, bool inherit, int pid);
2197
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool GetProcessTimes(IntPtr process, out long created, out long exited, out long kernel, out long user);
2198
+ [DllImport("kernel32.dll", SetLastError=true)] static extern uint WaitForSingleObject(IntPtr handle, uint timeout);
2199
+ [DllImport("kernel32.dll")] static extern IntPtr GetCurrentProcess();
2200
+ [DllImport("kernel32.dll", SetLastError=true)] static extern IntPtr GetStdHandle(int kind);
2201
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool DuplicateHandle(IntPtr sourceProcess, IntPtr source, IntPtr targetProcess, out IntPtr target, uint access, bool inherit, uint options);
2202
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool CloseHandle(IntPtr handle);
2203
+
2204
+ static void Check(bool ok, string operation) {
2205
+ if (!ok) throw new Win32Exception(Marshal.GetLastWin32Error(), operation);
2206
+ }
2207
+ static IntPtr DuplicateStandard(int kind) {
2208
+ IntPtr original = GetStdHandle(kind), copied;
2209
+ if (original == IntPtr.Zero || original == new IntPtr(-1)) throw new InvalidOperationException("Standard stream unavailable");
2210
+ Check(DuplicateHandle(GetCurrentProcess(), original, GetCurrentProcess(), out copied, 0, true, 2), "DuplicateHandle");
2211
+ return copied;
2212
+ }
2213
+ static void WaitUntilEmpty(IntPtr job, bool terminate) {
2214
+ if (terminate) Check(TerminateJobObject(job, 1223), "TerminateJobObject");
2215
+ Stopwatch clock = Stopwatch.StartNew();
2216
+ while (true) {
2217
+ Accounting state;
2218
+ Check(QueryInformationJobObject(job, 1, out state, (uint)Marshal.SizeOf(typeof(Accounting)), IntPtr.Zero), "QueryInformationJobObject");
2219
+ if (state.ActiveProcesses == 0) return;
2220
+ if (clock.ElapsedMilliseconds > 10000) throw new TimeoutException("Windows process cleanup was not confirmed");
2221
+ Thread.Sleep(25);
2222
+ }
2223
+ }
2224
+ public static void VerifyDrained(string name) {
2225
+ IntPtr job = OpenJobObjectW(4, false, name);
2226
+ if (job == IntPtr.Zero) {
2227
+ int error = Marshal.GetLastWin32Error();
2228
+ // After the supervisor exits, absence means no owner or associated process
2229
+ // remains. No delayed launcher can subsequently create this Job.
2230
+ if (error == 2) return;
2231
+ throw new Win32Exception(error, "OpenJobObjectW");
2232
+ }
2233
+ try { WaitUntilEmpty(job, false); } finally { CloseHandle(job); }
2234
+ }
2235
+ public static int Run(string name, string executable, string command, string cwd, int ownerPid, string ownerStartedAt) {
2236
+ IntPtr owner = IntPtr.Zero, job = IntPtr.Zero, attributes = IntPtr.Zero;
2237
+ IntPtr jobs = IntPtr.Zero, handles = IntPtr.Zero;
2238
+ IntPtr input = IntPtr.Zero, output = IntPtr.Zero, errorOutput = IntPtr.Zero;
2239
+ ProcessInfo child = new ProcessInfo();
2240
+ bool attributesInitialized = false;
2241
+ try {
2242
+ owner = OpenProcess(0x00101000, false, ownerPid);
2243
+ Check(owner != IntPtr.Zero, "Open owner process");
2244
+ long started, exited, kernel, user;
2245
+ Check(GetProcessTimes(owner, out started, out exited, out kernel, out user), "GetProcessTimes");
2246
+ if (started.ToString(CultureInfo.InvariantCulture) != ownerStartedAt || WaitForSingleObject(owner, 0) != WaitTimeout)
2247
+ throw new InvalidOperationException("The launch owner is no longer alive");
2248
+ job = CreateJobObjectW(IntPtr.Zero, name);
2249
+ int createError = Marshal.GetLastWin32Error();
2250
+ Check(job != IntPtr.Zero, "CreateJobObjectW");
2251
+ if (createError == 183) throw new InvalidOperationException("Job identity collision");
2252
+ ExtendedLimits limits = new ExtendedLimits();
2253
+ limits.Basic.Flags = KillOnClose;
2254
+ Check(SetInformationJobObject(job, 9, ref limits, (uint)Marshal.SizeOf(typeof(ExtendedLimits))), "SetInformationJobObject");
2255
+
2256
+ IntPtr size = IntPtr.Zero;
2257
+ InitializeProcThreadAttributeList(IntPtr.Zero, 2, 0, ref size);
2258
+ if (size == IntPtr.Zero) throw new Win32Exception(Marshal.GetLastWin32Error(), "Attribute list size");
2259
+ attributes = Marshal.AllocHGlobal(size);
2260
+ Check(InitializeProcThreadAttributeList(attributes, 2, 0, ref size), "InitializeProcThreadAttributeList");
2261
+ attributesInitialized = true;
2262
+ jobs = Marshal.AllocHGlobal(IntPtr.Size);
2263
+ Marshal.WriteIntPtr(jobs, job);
2264
+ // PROC_THREAD_ATTRIBUTE_JOB_LIST: no attach-after-spawn race, no breakaway.
2265
+ Check(UpdateProcThreadAttribute(attributes, 0, new IntPtr(0x0002000d), jobs, new IntPtr(IntPtr.Size), IntPtr.Zero, IntPtr.Zero), "Set atomic Job assignment");
2266
+ input = DuplicateStandard(-10); output = DuplicateStandard(-11); errorOutput = DuplicateStandard(-12);
2267
+ handles = Marshal.AllocHGlobal(IntPtr.Size * 3);
2268
+ Marshal.WriteIntPtr(handles, 0, input); Marshal.WriteIntPtr(handles, IntPtr.Size, output); Marshal.WriteIntPtr(handles, IntPtr.Size * 2, errorOutput);
2269
+ Check(UpdateProcThreadAttribute(attributes, 0, new IntPtr(0x00020002), handles, new IntPtr(IntPtr.Size * 3), IntPtr.Zero, IntPtr.Zero), "Set inherited streams");
2270
+ StartupInfoEx startup = new StartupInfoEx();
2271
+ startup.Startup.Size = (uint)Marshal.SizeOf(typeof(StartupInfoEx));
2272
+ startup.Startup.Flags = 0x100;
2273
+ startup.Startup.StandardInput = input; startup.Startup.StandardOutput = output; startup.Startup.StandardError = errorOutput;
2274
+ startup.Attributes = attributes;
2275
+ Check(CreateProcessW(executable, new StringBuilder(command), IntPtr.Zero, IntPtr.Zero, true, ExtendedStartup | NoWindow | UnicodeEnvironment, IntPtr.Zero, cwd, ref startup, out child), "CreateProcessW in Job");
2276
+ CloseHandle(input); input = IntPtr.Zero; CloseHandle(output); output = IntPtr.Zero; CloseHandle(errorOutput); errorOutput = IntPtr.Zero;
2277
+ while (true) {
2278
+ uint wait = WaitForSingleObject(child.Process, 100);
2279
+ if (wait == 0) break;
2280
+ Check(wait != WaitFailed, "Wait for controller");
2281
+ if (WaitForSingleObject(owner, 0) != WaitTimeout) {
2282
+ WaitUntilEmpty(job, true);
2283
+ return 1223;
2284
+ }
2285
+ }
2286
+ uint exitCode;
2287
+ Check(GetExitCodeProcess(child.Process, out exitCode), "GetExitCodeProcess");
2288
+ CloseHandle(child.Thread); child.Thread = IntPtr.Zero;
2289
+ CloseHandle(child.Process); child.Process = IntPtr.Zero;
2290
+ WaitUntilEmpty(job, true);
2291
+ return unchecked((int)exitCode);
2292
+ } finally {
2293
+ if (child.Thread != IntPtr.Zero) CloseHandle(child.Thread);
2294
+ if (child.Process != IntPtr.Zero) CloseHandle(child.Process);
2295
+ if (job != IntPtr.Zero) CloseHandle(job);
2296
+ if (owner != IntPtr.Zero) CloseHandle(owner);
2297
+ if (input != IntPtr.Zero) CloseHandle(input);
2298
+ if (output != IntPtr.Zero) CloseHandle(output);
2299
+ if (errorOutput != IntPtr.Zero) CloseHandle(errorOutput);
2300
+ if (attributesInitialized) DeleteProcThreadAttributeList(attributes);
2301
+ if (attributes != IntPtr.Zero) Marshal.FreeHGlobal(attributes);
2302
+ if (jobs != IntPtr.Zero) Marshal.FreeHGlobal(jobs);
2303
+ if (handles != IntPtr.Zero) Marshal.FreeHGlobal(handles);
2304
+ }
2305
+ }
2306
+ }
2307
+ `;
2308
+ //#endregion
2309
+ //#region ../../runtime/adapters/core/dist/windows-process-job.js
2310
+ const REQUEST_ENV = "OPENMELD_NATIVE_JOB_REQUEST";
2311
+ const DRAIN_RECEIPT = "openmeld-windows-job-drained-v1";
2312
+ const CLEANUP_TIMEOUT_MS = 15e3;
2313
+ const WINDOWS_PROCESS_JOB_SCRIPT = `
2314
+ $ErrorActionPreference = 'Stop'
2315
+ $ProgressPreference = 'SilentlyContinue'
2316
+ $WarningPreference = 'SilentlyContinue'
2317
+ try {
2318
+ $raw = [Environment]::GetEnvironmentVariable('${REQUEST_ENV}', 'Process')
2319
+ [Environment]::SetEnvironmentVariable('${REQUEST_ENV}', $null, 'Process')
2320
+ $r = ConvertFrom-Json ([Text.Encoding]::UTF8.GetString([Convert]::FromBase64String($raw)))
2321
+ $compressed = New-Object IO.MemoryStream(,([Convert]::FromBase64String('${gzipSync(Buffer.from(WINDOWS_PROCESS_JOB_NATIVE_SOURCE, "utf8")).toString("base64")}')))
2322
+ $gzip = New-Object IO.Compression.GZipStream($compressed, [IO.Compression.CompressionMode]::Decompress)
2323
+ $reader = New-Object IO.StreamReader($gzip, [Text.Encoding]::UTF8)
2324
+ try { $source = $reader.ReadToEnd() } finally { $reader.Dispose(); $compressed.Dispose() }
2325
+ Add-Type -TypeDefinition $source -ErrorAction Stop
2326
+ if ($r.operation -eq 'drain') {
2327
+ [OpenMeldProcessJobV1]::VerifyDrained($r.jobName)
2328
+ [Console]::Write('${DRAIN_RECEIPT}')
2329
+ exit 0
2330
+ }
2331
+ if ($r.operation -ne 'launch') { throw 'Unknown process operation' }
2332
+ $exitCode = [OpenMeldProcessJobV1]::Run($r.jobName, $r.executable, $r.commandLine, $r.workingDirectory, $r.ownerPid, $r.ownerStartedAt)
2333
+ exit $exitCode
2334
+ } catch {
2335
+ $cause = $_.Exception.GetBaseException()
2336
+ $code = $(if ($cause -is [ComponentModel.Win32Exception]) { $cause.NativeErrorCode } else { $cause.GetType().Name })
2337
+ [Console]::Error.WriteLine('openmeld.windows_process.failed: ' + $code)
2338
+ exit 125
2339
+ }
2340
+ `;
2341
+ function spawnWindowsJobProcess(input) {
2342
+ const env = normalizeCommandEnvironment(input.env, "win32");
2343
+ const executable = resolveWindowsCommandPath(input.invocation.bin, env);
2344
+ if (!(win32.isAbsolute(executable) && win32.isAbsolute(input.cwd))) throw Object.assign(/* @__PURE__ */ new Error("The selected Windows controller needs an absolute executable and working directory."), { code: "ENOENT" });
2345
+ const ownerStartedAt = readWindowsProcessStartFileTime(process.pid);
2346
+ if (!ownerStartedAt) throw new Error("Windows could not verify the process that owns this invocation.");
2347
+ const jobName = `Local\\OpenMeld-Process-${randomUUID()}`;
2348
+ const commandLine = [quoteWindowsProcessArgument(executable), ...input.invocation.args.map((arg) => input.invocation.windowsVerbatimArguments ? arg : quoteWindowsProcessArgument(arg))].join(" ");
2349
+ const request = windowsProcessJobRequestSchema.parse({
2350
+ operation: "launch",
2351
+ jobName,
2352
+ executable,
2353
+ commandLine,
2354
+ workingDirectory: input.cwd,
2355
+ ownerPid: process.pid,
2356
+ ownerStartedAt
2357
+ });
2358
+ const payload = Buffer.from(JSON.stringify(request), "utf8").toString("base64");
2359
+ if (payload.length > 32e3) throw new Error("The Windows controller arguments exceed the native launch envelope. Send large input through stdin instead.");
2360
+ const powershell = resolveWindowsPowerShellPath(env);
2361
+ const child = spawn(powershell, powerShellEncodedArguments(WINDOWS_PROCESS_JOB_SCRIPT), {
2362
+ cwd: input.cwd,
2363
+ env: {
2364
+ ...env,
2365
+ [REQUEST_ENV]: payload
2366
+ },
2367
+ stdio: [
2368
+ "pipe",
2369
+ "pipe",
2370
+ "pipe"
2371
+ ],
2372
+ windowsHide: true
2373
+ });
2374
+ const closed = new Promise((resolve) => child.once("close", () => resolve()));
2375
+ const terminate = (signal) => {
2376
+ if (child.exitCode !== null || child.signalCode !== null || child.pid === void 0) return false;
2377
+ return child.kill(signal);
2378
+ };
2379
+ return {
2380
+ child,
2381
+ terminate,
2382
+ async cleanup() {
2383
+ let timer;
2384
+ let signalSent = false;
2385
+ try {
2386
+ signalSent = terminate("SIGKILL");
2387
+ await Promise.race([closed, new Promise((_resolve, reject) => {
2388
+ timer = setTimeout(() => reject(/* @__PURE__ */ new Error("Windows supervisor exit could not be confirmed.")), CLEANUP_TIMEOUT_MS);
2389
+ })]);
2390
+ const drain = windowsProcessJobRequestSchema.parse({
2391
+ operation: "drain",
2392
+ jobName
2393
+ });
2394
+ const { stdout } = await promisify(execFile)(powershell, powerShellEncodedArguments(WINDOWS_PROCESS_JOB_SCRIPT), {
2395
+ env: {
2396
+ ...env,
2397
+ [REQUEST_ENV]: Buffer.from(JSON.stringify(drain), "utf8").toString("base64")
2398
+ },
2399
+ encoding: "utf8",
2400
+ windowsHide: true,
2401
+ timeout: CLEANUP_TIMEOUT_MS,
2402
+ maxBuffer: 4096
2403
+ });
2404
+ if (stdout !== DRAIN_RECEIPT) throw new Error("Windows returned an invalid process cleanup receipt.");
2405
+ return {
2406
+ ok: true,
2407
+ signalSent
2408
+ };
2409
+ } catch (error) {
2410
+ return {
2411
+ ok: false,
2412
+ signalSent,
2413
+ error
2414
+ };
2415
+ } finally {
2416
+ if (timer) clearTimeout(timer);
2417
+ }
2418
+ }
2419
+ };
2420
+ }
2421
+ //#endregion
1950
2422
  //#region ../../runtime/adapters/core/dist/agent-controller-process.js
1951
2423
  const PROCESS_TABLE_COLUMN_SEPARATOR = /\s+/u;
1952
2424
  const PROCESS_TABLE_LINE_SEPARATOR = /\r?\n/u;
@@ -2048,14 +2520,36 @@ const processDiscoveryDiagnostics = createAgentControllerProcessDiscoveryDiagnos
2048
2520
  function spawnAgentControllerProcess(input) {
2049
2521
  const signalTarget = resolveAgentControllerProcessSignalTarget();
2050
2522
  const supervisionId = input.supervisionId ?? randomUUID();
2051
- const child = spawn(input.bin, input.args, {
2523
+ const env = {
2524
+ ...normalizeCommandEnvironment(input.env),
2525
+ [PROCESS_SUPERVISION_ENV_KEY]: supervisionId
2526
+ };
2527
+ const invocation = resolvePlatformCommand(input.bin, input.args, env);
2528
+ if (process.platform === "win32") {
2529
+ const job = spawnWindowsJobProcess({
2530
+ invocation,
2531
+ env,
2532
+ cwd: input.cwd
2533
+ });
2534
+ return {
2535
+ child: job.child,
2536
+ processId: job.child.pid ?? null,
2537
+ signalTarget,
2538
+ supervisionId,
2539
+ terminate: job.terminate,
2540
+ terminateRemainingDescendants: job.cleanup
2541
+ };
2542
+ }
2543
+ const child = spawn(invocation.bin, invocation.args, {
2052
2544
  cwd: input.cwd,
2053
2545
  detached: signalTarget === "process_group",
2054
2546
  env: {
2055
- ...input.env,
2547
+ ...env,
2056
2548
  [PROCESS_SUPERVISION_ENV_KEY]: supervisionId
2057
2549
  },
2058
2550
  shell: input.shell,
2551
+ windowsVerbatimArguments: invocation.windowsVerbatimArguments,
2552
+ windowsHide: true,
2059
2553
  stdio: [
2060
2554
  "pipe",
2061
2555
  "pipe",
@@ -4095,6 +4589,7 @@ const USER_FACING_CLI_COMMAND_ENV = "OPENMELD_USER_FACING_CLI_COMMAND";
4095
4589
  const SPACE_ACTION_TOOL_COMMAND_PATH_ENV = "OPENMELD_SPACE_ACTION_TOOL_COMMAND_PATH";
4096
4590
  const OPENMELD_SPACE_ACTION_MCP_SERVER_ID = "openmeld_internal_dispatch_space_action";
4097
4591
  const OPENMELD_SPACE_ACTION_MCP_TOOL_NAMES = [
4592
+ "working_copy",
4098
4593
  "read_file",
4099
4594
  "read_history",
4100
4595
  "list_tasks",
@@ -6020,6 +6515,67 @@ function normalizeOptionalText$40(value) {
6020
6515
  return normalized.length > 0 ? normalized : null;
6021
6516
  }
6022
6517
  //#endregion
6518
+ //#region ../../runtime/adapters/claude-code/dist/transport/claude-windows-process.js
6519
+ /** Use the SDK's public spawn contract; its forwarded abort follows stdin-EOF grace. */
6520
+ function createClaudeWindowsProcessLauncher(command) {
6521
+ const active = /* @__PURE__ */ new Map();
6522
+ return {
6523
+ spawn(options, onStderr) {
6524
+ if (options.command !== command.bin) throw new Error("Claude SDK changed the selected controller executable.");
6525
+ if (options.signal.aborted) throw new DOMException("Claude invocation was cancelled before launch.", "AbortError");
6526
+ const runtime = spawnAgentControllerProcess({
6527
+ bin: command.bin,
6528
+ args: [...command.argsPrefix, ...options.args],
6529
+ cwd: options.cwd ?? process.cwd(),
6530
+ env: options.env,
6531
+ shell: false
6532
+ });
6533
+ const { child } = runtime;
6534
+ let killed = false;
6535
+ const kill = (signal) => {
6536
+ const sent = runtime.terminate(signal);
6537
+ killed ||= sent;
6538
+ return sent;
6539
+ };
6540
+ const abort = () => kill("SIGKILL");
6541
+ const closed = new Promise((resolve) => {
6542
+ child.once("close", () => {
6543
+ options.signal.removeEventListener("abort", abort);
6544
+ resolve();
6545
+ });
6546
+ });
6547
+ active.set(runtime, closed);
6548
+ child.stderr.setEncoding("utf8");
6549
+ child.stderr.on("data", onStderr);
6550
+ options.signal.addEventListener("abort", abort, { once: true });
6551
+ if (options.signal.aborted) abort();
6552
+ return {
6553
+ stdin: child.stdin,
6554
+ stdout: child.stdout,
6555
+ get killed() {
6556
+ return killed;
6557
+ },
6558
+ get exitCode() {
6559
+ return child.exitCode;
6560
+ },
6561
+ kill,
6562
+ on: child.on.bind(child),
6563
+ once: child.once.bind(child),
6564
+ off: child.off.bind(child)
6565
+ };
6566
+ },
6567
+ async cleanup() {
6568
+ await Promise.all([...active].map(async ([runtime, closed]) => {
6569
+ runtime.terminate("SIGKILL");
6570
+ const result = await runtime.terminateRemainingDescendants();
6571
+ if (!result.ok) throw result.error;
6572
+ await closed;
6573
+ active.delete(runtime);
6574
+ }));
6575
+ }
6576
+ };
6577
+ }
6578
+ //#endregion
6023
6579
  //#region ../../runtime/adapters/claude-code/dist/transport/claude-agent-sdk-transport.js
6024
6580
  var ClaudeAgentSdkTransportError = class extends Error {
6025
6581
  code;
@@ -6114,6 +6670,7 @@ async function invokeClaudeAgentSdkTransport(input) {
6114
6670
  stderrChunks.push(chunk);
6115
6671
  },
6116
6672
  pathToClaudeCodeExecutable: resources.executable.pathToClaudeCodeExecutable,
6673
+ spawnProcess: resources.executable.spawnProcess,
6117
6674
  planDirectory: resources.planCapture.directory,
6118
6675
  sessionId: normalizeOptionalText$39(input.sessionId),
6119
6676
  streamingMode: input.streamingMode
@@ -6335,20 +6892,30 @@ async function createClaudePlanCapture(enabled) {
6335
6892
  }
6336
6893
  async function resolveClaudeAgentSdkExecutable(input) {
6337
6894
  const launchCommand = materializeCliLaunchCommand({ launchContract: input.launchContract });
6895
+ if (process.platform === "win32") {
6896
+ const invocation = resolvePlatformCommand(launchCommand.bin, launchCommand.argsPrefix);
6897
+ const selected = invocation.windowsVerbatimArguments ? launchCommand : {
6898
+ bin: invocation.bin,
6899
+ argsPrefix: invocation.args
6900
+ };
6901
+ const launcher = createClaudeWindowsProcessLauncher(selected);
6902
+ return {
6903
+ cleanup: launcher.cleanup,
6904
+ pathToClaudeCodeExecutable: selected.bin,
6905
+ spawnProcess: launcher.spawn
6906
+ };
6907
+ }
6338
6908
  if (launchCommand.argsPrefix.length === 0 && launchCommand.shell !== true) return {
6339
6909
  cleanup: async () => void 0,
6340
6910
  pathToClaudeCodeExecutable: launchCommand.bin
6341
6911
  };
6342
6912
  const wrapperDir = await mkdtemp(join(tmpdir(), "openmeld-claude-sdk-"));
6343
- const wrapperPath = process.platform === "win32" ? join(wrapperDir, "claude-code-wrapper.cmd") : join(wrapperDir, "claude-code-wrapper");
6344
- await writeFile(wrapperPath, process.platform === "win32" ? buildWindowsWrapperScript({
6345
- argsPrefix: launchCommand.argsPrefix,
6346
- bin: launchCommand.bin
6347
- }) : buildPosixWrapperScript({
6913
+ const wrapperPath = join(wrapperDir, "claude-code-wrapper");
6914
+ await writeFile(wrapperPath, buildPosixWrapperScript({
6348
6915
  argsPrefix: launchCommand.argsPrefix,
6349
6916
  bin: launchCommand.bin
6350
6917
  }), "utf8");
6351
- if (process.platform !== "win32") await chmod(wrapperPath, 493);
6918
+ await chmod(wrapperPath, 493);
6352
6919
  return {
6353
6920
  cleanup: async () => {
6354
6921
  await rm(wrapperDir, {
@@ -6360,6 +6927,7 @@ async function resolveClaudeAgentSdkExecutable(input) {
6360
6927
  };
6361
6928
  }
6362
6929
  function buildClaudeAgentSdkOptions(input) {
6930
+ const spawnProcess = input.spawnProcess;
6363
6931
  const spaceActionMcpServer = resolveDispatchSpaceActionMcpServer(input.env);
6364
6932
  if (input.executionContext && input.executionContext.access !== "space_context") throw new Error("execution_context.file_access_unsupported");
6365
6933
  const permissionMode = resolveClaudePermissionMode({
@@ -6378,6 +6946,7 @@ function buildClaudeAgentSdkOptions(input) {
6378
6946
  },
6379
6947
  includePartialMessages: input.onRuntimeEvent !== void 0 || input.streamingMode === "stream" || input.onInteractionRequest !== void 0,
6380
6948
  pathToClaudeCodeExecutable: input.pathToClaudeCodeExecutable,
6949
+ ...spawnProcess ? { spawnClaudeCodeProcess: (options) => spawnProcess(options, input.onStderr) } : {},
6381
6950
  ...spaceActionMcpServer ? { mcpServers: { [spaceActionMcpServer.id]: {
6382
6951
  args: [...spaceActionMcpServer.args],
6383
6952
  command: spaceActionMcpServer.commandPath,
@@ -6593,23 +7162,9 @@ function buildPosixWrapperScript(input) {
6593
7162
  ""
6594
7163
  ].join("\n");
6595
7164
  }
6596
- function buildWindowsWrapperScript(input) {
6597
- return [
6598
- "@echo off",
6599
- [
6600
- quoteWindowsArg(input.bin),
6601
- ...input.argsPrefix.map(quoteWindowsArg),
6602
- "%*"
6603
- ].join(" "),
6604
- ""
6605
- ].join("\r\n");
6606
- }
6607
7165
  function shellQuote(value) {
6608
7166
  return `'${value.replaceAll("'", "'\\''")}'`;
6609
7167
  }
6610
- function quoteWindowsArg(value) {
6611
- return `"${value.replaceAll("\"", "\"\"")}"`;
6612
- }
6613
7168
  function normalizeOptionalText$39(value) {
6614
7169
  const normalized = String(value ?? "").trim();
6615
7170
  return normalized.length > 0 ? normalized : null;
@@ -7326,7 +7881,8 @@ function isCodexExecutionContextFileAccessConfirmed(value, boundary, workingDire
7326
7881
  return sandbox?.type === "workspaceWrite" && sandbox.excludeTmpdirEnvVar === true && sandbox.excludeSlashTmp === true && Array.isArray(sandbox.writableRoots) && sandbox.writableRoots.every((root) => typeof root === "string" && boundary.folders.includes(root));
7327
7882
  }
7328
7883
  function resolveCodexExecutionContextAccess(boundary, executionMode) {
7329
- return executionMode === "repair" && boundary.executionContextAccess === "workspace" ? "read_only" : boundary.executionContextAccess;
7884
+ const access = boundary.executionContextAccess === "space_context" && boundary.workingCopyId ? "workspace" : boundary.executionContextAccess;
7885
+ return executionMode === "repair" && access === "workspace" ? "read_only" : access;
7330
7886
  }
7331
7887
  function recordValue(value) {
7332
7888
  return typeof value === "object" && value !== null && !Array.isArray(value) ? value : null;
@@ -7407,7 +7963,7 @@ function tomlString(value) {
7407
7963
  }
7408
7964
  //#endregion
7409
7965
  //#region ../../runtime/adapters/codex/dist/transport/codex-scoped-mcp.js
7410
- const execFileAsync$2 = promisify(execFile);
7966
+ const execFileAsync$2 = promisify(execPlatformFile);
7411
7967
  const MCP_INVENTORY_TIMEOUT_MS = 15e3;
7412
7968
  const MCP_INVENTORY_MAX_BYTES = 1024 * 1024;
7413
7969
  const MCP_AUTH_STATUSES = /* @__PURE__ */ new Set([
@@ -7546,7 +8102,7 @@ printf '%s:%s:%s:%s' "$outside_read" "$outside_write" "$inside_read" "$inside_wr
7546
8102
  async function verifyCodexWorkspaceAccess(input) {
7547
8103
  if (!input.boundary.executionContextAccess) return;
7548
8104
  const boundaryRoot = input.boundary.folders[0];
7549
- if (process.platform === "win32" || input.boundary.folders.length !== 1 || !boundaryRoot) throw new Error("execution_context.workspace_probe_unsupported");
8105
+ if (input.boundary.folders.length !== 1 || !boundaryRoot) throw new Error("execution_context.workspace_probe_unsupported");
7550
8106
  const outsideDirectory = await mkdtemp(join(dirname(boundaryRoot), ".openmeld-access-probe-"));
7551
8107
  const outsidePath = join(outsideDirectory, "sentinel");
7552
8108
  const insidePath = join(input.workingDirectory, `.openmeld-access-probe-${randomUUID()}`);
@@ -7560,14 +8116,7 @@ async function verifyCodexWorkspaceAccess(input) {
7560
8116
  mode: 384
7561
8117
  });
7562
8118
  const result = await input.execute({
7563
- command: [
7564
- "/bin/sh",
7565
- "-c",
7566
- PROBE_SCRIPT,
7567
- "openmeld-probe",
7568
- outsidePath,
7569
- insidePath
7570
- ],
8119
+ command: buildCodexWorkspaceProbeCommand(outsidePath, insidePath),
7571
8120
  cwd: input.workingDirectory,
7572
8121
  permissionProfile: CODEX_FILE_ACCESS_PERMISSION_PROFILE,
7573
8122
  timeoutMs: 5e3,
@@ -7583,6 +8132,27 @@ async function verifyCodexWorkspaceAccess(input) {
7583
8132
  });
7584
8133
  }
7585
8134
  }
8135
+ function buildCodexWorkspaceProbeCommand(outsidePath, insidePath, platform = process.platform, env = process.env) {
8136
+ if (platform !== "win32") return [
8137
+ "/bin/sh",
8138
+ "-c",
8139
+ PROBE_SCRIPT,
8140
+ "openmeld-probe",
8141
+ outsidePath,
8142
+ insidePath
8143
+ ];
8144
+ const script = `
8145
+ $ErrorActionPreference = 'Stop'
8146
+ $paths = ConvertFrom-Json ([Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('${Buffer.from(JSON.stringify([outsidePath, insidePath]), "utf8").toString("base64")}')))
8147
+ $results = @()
8148
+ foreach ($path in $paths) {
8149
+ try { $null = [IO.File]::ReadAllText($path); $results += 'allowed' } catch { $results += 'denied' }
8150
+ try { [IO.File]::WriteAllText($path, ('changed' + [char]10)); $results += 'allowed' } catch { $results += 'denied' }
8151
+ }
8152
+ [Console]::Write(($results -join ':'))
8153
+ `;
8154
+ return [resolveWindowsPowerShellPath(env), ...powerShellEncodedArguments(script)];
8155
+ }
7586
8156
  //#endregion
7587
8157
  //#region ../../runtime/adapters/codex/dist/transport/codex-app-server-transport.js
7588
8158
  const CODEX_APP_SERVER_VERSION_PATTERN = /\/([^\s]+)/u;
@@ -31138,9 +31708,9 @@ function createModelCatalogReadSession(input) {
31138
31708
  async function readModelCatalogOnce(baseUrl) {
31139
31709
  try {
31140
31710
  const [apiClient, baseUrlModule, clientFoundationModule] = await Promise.all([
31141
- import("./dist-Bsz_wafH.js"),
31142
- import("./base-url-BE3pFiOZ.js"),
31143
- import("./api-client-foundation-TEBOwWl1.js")
31711
+ import("./dist-CABuqfdH.js"),
31712
+ import("./base-url-CfyKRz89.js"),
31713
+ import("./api-client-foundation-BYnU1pbS.js")
31144
31714
  ]);
31145
31715
  if (typeof apiClient.createConfigApi !== "function") throw new Error("config api client is unavailable");
31146
31716
  const resolvedBaseUrl = baseUrl ?? await baseUrlModule.resolveBaseUrl();
@@ -38071,4 +38641,4 @@ function isNewerTargetVersion(candidate, current) {
38071
38641
  //#endregion
38072
38642
  export { buildDaemonServiceDependencyTitle as $, readDaemonCatalogSyncSignal as $a, describeServerRequiredVersionUnavailableReason as $i, ProjectBindingStoreUpdateRequiredError as $n, settleInflightTask as $r, resolveCurrentDaemonExpectedVersion as $t, formatDeviceReplyReadinessLabel as A, HEARTBEAT_RESPONSE_TIMEOUT_MS as Aa, createLocalAdapterEntries as Ai, setAgentRegistrationEnabled as An, createInflightTaskControlRegistry as Ar, uninstallDaemonServiceUpdateWorker as At, resolveGatewayChainReadiness as B, resolveViewProfileKey as Ba, forkCodexAppServerThread as Bi, resolveSkillsAgentRegistry as Bn, resolveDispatchContinuityObservation as Br, toStartBackgroundHelperExecutionCompatibility as Bt, formatDaemonServiceRefreshReliabilityMessage as C, CONTROLLED_SHUTDOWN_RESULT_ACK_TIMEOUT_MS as Ca, resolveAgentExecutionStatus as Ci, listAgentTargetStates as Cn, buildDispatchReplyContextSummary as Cr, readLastOpenMeldToolsUpdateAttempt as Ct, writeDaemonStartFailureState as D, DAEMON_STREAM_KEEPALIVE_INTERVAL_MS as Da, resolveSelectableCandidates as Di, reconcileNewRunnableBuiltinAgentsForSetup as Dn, createLocalTaskInterruptSender as Dr, writeOpenMeldToolsMaintenancePolicy as Dt, clearDaemonStartFailureState as E, DAEMON_STREAM_CONNECT_TIMEOUT_MS as Ea, resolveNativeAgentControllerPermissionModeForController as Ei, reconcileNewRunnableBuiltinAgentRegistrations as En, mergeOpenClawGatewayVisibility as Er, resolveOpenMeldToolsMaintenanceProjection as Et, formatSpaceMemberCommandRecoveryCopy as F, RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS as Fa, probeGrokBuildAcpInterface as Fi, parseAgentEnabledOption as Fn, applyIntervalJitterMs as Fr, readCurrentDaemonOwnerSnapshot as Ft, PREPARE_SESSION_RECONNECT_GRACE_MS as G, createOpenMeldHumanProfile as Ga, createUnsupportedProviderUsageLimits as Gi, EMPTY_AGENT_CONTROLLER_INTERFACE_CAPABILITIES as Gn, buildRuntimeWorkspaceFingerprint as Gr, isVersionDowngrade as Gt, resolveGatewayChainRetryGuidance as H, requireOpenMeldProfile as Ha, verifyCodexAppServerThread as Hi, resolveRegistryOriginLaunchCommand as Hn, resolveCompatibleConversationExecutionState as Hr, readDaemonRuntimeContractRepairReport as Ht, resolveReplyReadinessAvailabilityReasonCopy as I, RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS as Ia, resolveInstalledGrokBuildLaunchCandidates as Ii, sortAgentRegistrations as In, pruneStaleLeases as Ir, resolveDaemonStopStrategy as It, getSetupFlowCopy as J, listOpenMeldProfiles as Ja, materializeCliLaunchCommand as Ji, isHomebrewCommandPath as Jn, commitResolvedAgentContext as Jr, DAEMON_SERVICE_FULL_ALIGNMENT_ANOMALIES as Jt, buildDaemonRouteObservationPresentation as K, deleteOpenMeldProfile as Ka, resolveDispatchSpaceActionMcpServer as Ki, resolveBuiltinAgentControllerDefinition as Kn, buildTaskResultEnvelope as Kr, resolveVersionChangeDirection as Kt, resolveReplyReadinessGuidanceSummaryCopy as L, RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS as La, projectCodexUsageLimits as Li, repairBuiltinControllerInstall as Ln, resolveAdaptiveHeartbeatIntervalMs as Lr, resolveStoppedContractWriteBlockedReason as Lt, formatReplyReadinessSummary as M, PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS as Ma, forkOpenCodeServerSession as Mi, updateAgentRegistrations as Mn, MAX_HEARTBEAT_INTERVAL_MS as Mr, buildDaemonOwnerSnapshotFromObservedState as Mt, mapAgentReplyReadinessToLegacyAutoReply as N, PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS as Na, resolveInstalledOpenCodeLaunchCandidates as Ni, normalizeAgentId as Nn, MIN_HEARTBEAT_INTERVAL_MS as Nr, formatDaemonOwnerSummaryLabel as Nt, resolveCurrentReplyReadinessSnapshot as O, DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS as Oa, resolveCatalogSyncSkippedProfilesLogState as Oi, removeAgentCustomTarget as On, buildLocalServiceDiagnosticsPayload as Or, ensureDaemonServiceMaintenanceInstalled as Ot, REPLY_READINESS_COPY as P, REGISTER_RESPONSE_TIMEOUT_MS as Pa, GrokBuildAcpTransportError as Pi, normalizeAgentIds as Pn, applyAcceptedLeases as Pr, hasActiveDaemonOwners as Pt, buildDaemonServiceDependencySummary as Q, assertAdditionalHumanProfileCreationEnabled as Qa, assessServerRequiredVersion as Qi, ProjectBindingOperationError as Qn, seedLegacyAgentContext as Qr, classifyDaemonServiceWakeability as Qt, resolveOpenClawDiagnosticsGuidance as R, parseCliViewMode as Ra, resolveCodexTimeoutMs as Ri, canManageRegistryAgentSkillTargets as Rn, resolveCatalogSyncIntervalMs as Rr, summarizeDaemonOwnerSnapshot as Rt, buildDaemonServiceUpdateRequiredNextStep as S, CONTROLLED_SHUTDOWN_REQUEST_TIMEOUT_MS as Sa, resolveAgentControllerPermissionModeForController as Si, listAgentRegistrations as Sn, createSerialAgentInteractionCallback as Sr, readOpenMeldToolsUpdateContextFromEnv as St, resolveDaemonServiceFreshnessWarning as T, DAEMON_RUNTIME_CONTRACT_EPOCH as Ta, resolveEvidenceSyncHealth as Ti, readAgentRuntimeConfigHealth as Tn, createPendingAgentInteractionRegistry as Tr, readOpenMeldToolsMaintenancePolicy as Tt, resolveOpenClawLocalDiagnosticsValue as U, resolveOpenMeldProfileOrNull as Ua, resolveInstalledClaudeCodeLaunchCandidates as Ui, resolveRegistryRuntimeAdapterCapabilitySnapshot as Un, resolveLatestScopedConversationExecutionState as Ur, buildDaemonServiceTargetSpec as Ut, resolveGatewayChainRepairGuidance as V, isSelectedOpenMeldProfileRequiredError as Va, resolveCodexAppServerCompletedTurn as Vi, listBuiltinAgentsRegistryEntries as Vn, resolveCompatibleAgentContextMatch as Vr, ensureDaemonRuntimeContractState as Vt, resolveLocalServiceDemand as W, createOpenMeldAgentProfile as Wa, createUnavailableProviderUsageLimits as Wi, resolveRegistryRuntimeAdapterContractByAgentControllerRef as Wn, runRuntimeTask as Wr, resolveDaemonServiceAlignmentDecision as Wt, buildDaemonServiceDependencyMeaning as X, resolveOpenMeldProfile as Xa, createProviderOriginalError as Xi, isPnpmGlobalCommandPath as Xn, removeConversationExecutionState as Xr, DAEMON_SERVICE_WAKEABILITY_ADVISORY_ANOMALIES as Xt, buildDaemonServiceDependencyDetails as Y, primeOpenMeldProfilesSessionCache as Ya, listAgentControllerSupervisedProcessIds as Yi, isNpmGlobalCommandPath as Yn, loadLedgerState as Yr, DAEMON_SERVICE_REPAIR_ANOMALIES as Yt, buildDaemonServiceDependencyNextStep as Z, updateOpenMeldProfile as Za, resolveServiceUpdateUrgency as Zi, notifyDaemonRouteCatalogChanged as Zn, resolveConversationExecutionStateByLookupKey as Zr, classifyDaemonServiceRunStartability as Zt, resolveServiceReadinessFromServiceStatus as _, isCliUpdateCheckApplicable as _a, parseAgentControllerRef as _i, validateCustomProfileWorkspacePath as _n, resolveCurrentOpenMeldAccountContext as _o, syncRuntimeEventToInflightTaskControlRegistry as _r, syncDeviceRuntimeStateProjection as _t, isDaemonInventoryRunningAndStartReady as a, resolvePreferredDaemonDeviceId as aa, DEFAULT_TASK_LIFECYCLE_HEARTBEAT_INTERVAL_MS as ai, readLocalEnabledControllers as an, buildAgentAuthenticationGuide as ao, removeAgentActivityBindingsWhileDeliveryLocked as ar, slugifyOpenClawNamePart as at, buildDaemonServiceRepairGuidance as b, CATALOG_SYNC_RETRY_INTERVAL_MS as ba, renderInformationProtectionPrompt as bi, createRegistrationFromCatalogTarget as bn, isDaemonReconcileInProgressError as br, resolveLocalRegistryAgentIdFromAgentControllerRef as bt, waitForSystemServiceStartup as c, emitRunLine as ca, buildInformationProtectionPromptPlan as ci, resolveProfileWorkspaceRuntime as cn, buildHumanAuthenticationCard as co, resolveProjectBindingForPath as cr, createMutableRouteCatalogState as ct, captureDaemonServiceEvidenceBestEffort as d, normalizeOptionalText$51 as da, createAgentExecutionStatusDisplayRows as di, readProfileWorkspaceConfig as dn, resolveAuthenticationGuidance as do, unbindProject as dr, summarizeSkippedDaemonProfiles as dt, buildLocalAgentCatalogFromReadiness as ea, upsertConversationExecutionState as ei, emitDriftDetectedEvidence as en, alignSelectedOpenMeldProfileStorage as eo, bindProject as er, resolveDaemonServiceDependencyDiagnostics as et, formatDaemonFailureContextText as f, normalizeText$11 as fa, createAuthorityOpenMeldServiceRuntimeId as fi, readProfileWorkspaceConfigForAccount as fn, resolveAuthenticationGuidanceFromError as fo, canonicalizeLocalProjectPath as fr, syncDaemonRouteCatalogState as ft, resolveServiceReadiness as g, assessCliUpdate as ga, listAgentControllerPermissionModeOptions as gi, setOpenMeldManagedProfileWorkspace as gn, setProfileDefaultView as go, normalizeDispatchThreadAction as gr, NO_LOCAL_AGENTS_NEED_OPENMELD_SERVICE_REASON as gt, resolveDaemonStatusAuthenticationAttention as h, warnDaemonEvent as ha, isAgentExecutionReadyOrConnecting as hi, setCustomProfileWorkspace as hn, getProfileDefaultView as ho, withAgentActivityLocalStateLock as hr, resolveCurrentEffectiveProfileWorkingFolderRuntime as ht, runDaemonServiceLifecycle as i, resolveDaemonDeviceId as ia, buildAgentContextLookupKey as ii, buildRuntimeRouteTargets as in, setSelectedOpenMeldProfileId as io, migrateProjectBindingStore as ir, normalizeOpenClawSpaceIdPrefix as it, formatHumanReplyReadinessReason as j, MAX_RECONNECT_DELAY_MS as ja, parseOpenCodeGoUsageResponse as ji, updateAgentCustomTarget as jn, ADAPTIVE_HEARTBEAT_JITTER_RATIO as jr, inspectDaemonServiceInventory as jt, formatAgentReplyReadinessLabel as k, DEFAULT_RECONNECT_DELAY_MS as ka, createLocalAdapterContainer as ki, resolveAgentTargetState as kn, createLocalExecutionSlots as kr, prepareDaemonServiceUpdateWorkerCarrier as kt, startDaemonSystemServiceWithAutoRepair as l, normalizeHeartbeatIntervalMs as la, buildWorkingLanguagePromptPlan as li, ensureOpenMeldManagedProfileWorkspace as ln, createAuthenticationError as lo, runIfAgentActivityBindingGenerationIsCurrent as lr, createRouteCatalogFromMutableState as lt, resolveDaemonStatusAttention as m, toErrorMessage$23 as ma, getAgentControllerPermissionModeFieldLabel as mi, resolveConfiguredProfileWorkspacePathForAccount as mn, resolveAuthenticationReasonFromState as mo, withAgentActivityDeliveryLock as mr, createModelCatalogReadSession as mt, scheduleDaemonServiceUpdate as n, buildLedgerPaths as na, buildAuthenticatedControlPlaneResponse as ni, emitReconcileStartedEvidence as nn, clearSelectedOpenMeldProfileId as no, listProjectBindings as nr, prepareProviderRuntime as nt, isSystemServiceStartupTimeoutError as o, asRecord as oa, areAgentControllerInterfaceAccountsSame as oi, resolveLocalController as on, buildAuthenticationStatusLabel as oo, removeMissingProjectConnections as or, readDaemonRouteCatalogCache as ot, resolveDaemonStatusSnapshot as p, nowIsoString as pa, getAgentControllerPermissionModeDisplayMetadata as pi, resolveConfiguredProfileWorkspacePath as pn, resolveAuthenticationGuidanceFromMessage as po, resolveLocalProjectConnectionForPath as pr, syncProfileWorkspaceState as pt, buildOnboardingPlan as q, getOpenMeldProfileCapabilities as qa, buildCliLaunchInvocation as qi, isBunGlobalCommandPath as qn, appendLedgerHistoryEntry as qr, DAEMON_SERVICE_AUTO_HEAL_ANOMALIES as qt, DaemonServiceLifecycleDrainTimeoutError as r, ensureDaemonRuntimePaths as ra, assertLegacyAgentContextAssociation as ri, DaemonServiceRunError as rn, getSelectedOpenMeldProfileId as ro, listProjectConnectionsWithStatus as rr, buildOpenClawSpaceSessionKey as rt, resolveSystemServiceStartupWaitMs as s, dirnamePath as sa, buildAgentControllerRef as si, resolveLocalRuntimeControllerSupport as sn, buildCommandAuthenticationPromptMessage as so, removeProjectConnection as sr, writeDaemonRouteCatalogCache as st, runPendingDaemonServiceUpdate as t, readCurrentLocalDeviceId as ta, withLedgerStateTransaction as ti, emitReconcileCompletedEvidence as tn, clearAllSelectedOpenMeldProfileIds as to, isProjectBound as tr, writeDaemonServiceContract as tt, captureDaemonServiceEvidence as u, normalizeNonNegativeInteger as ua, createAgentControllerInterfaceDisplayRows as ui, normalizeCustomProfileWorkspacePath as un, extractAuthenticationPromptAction as uo, setDefaultProjectConnection as ur, loadDaemonRouteCatalog as ut, buildDaemonServiceRefreshNextStep as v, buildDaemonSystemServiceCommandSpec as va, peopleComputerContainsDevice as vi, describeProfileWorkspacePathValidationFailure as vn, compareAgentControllerRefsForDisplay as vo, SPACE_ACTION_CONTEXT_GUIDANCE_LINES as vr, createPrimaryBindingReadSession as vt, formatDaemonServiceUpdateRequiredMessage as w, CONTROLLED_SHUTDOWN_SOCKET_CLOSE_TIMEOUT_MS as wa, resolveAgentProfileEditCapabilities as wi, manageAgentRegistrationInstallation as wn, normalizeDispatchPostMessageAction as wr, readPendingOpenMeldToolsUpdateAttempt as wt, buildDaemonServiceStatusReadOnlyDetail as x, CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS as xa, renderWorkingLanguagePrompt as xi, listAgentCustomTargets as xn, resolveRouteRegistrationReconcileDecision as xr, createOpenMeldToolsUpdateCoordinator as xt, buildDaemonServiceRefreshPromptMessage as y, ensureDaemonSystemServiceCommandFiles as ya, projectPeopleComputersToLegacyLocalRuntimes as yi, addAgentCustomTarget as yn, resolveBuiltinAgentControllerBrand as yo, SPACE_ACTION_TARGET_GUIDANCE_LINES as yr, resolveAgentProfilePrimaryAgentControllerReport as yt, classifyGatewayChainFailure as z, resolveRuntimeContext as za, resolveInstalledCodexLaunchCandidates as zi, detectInstalledSkillsAgents as zn, resolveDispatchQueueLogMeta as zr, resolveDaemonRuntimeContractCompatibility as zt };
38073
38643
 
38074
- //# sourceMappingURL=daemon-service-update-coordinator-BcbbIDzC.js.map
38644
+ //# sourceMappingURL=daemon-service-update-coordinator--xLHNqDT.js.map