openmeld 0.3.233 → 0.3.234

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 (99) hide show
  1. package/dist/{add-me-membership-_O3IzRLn.js → add-me-membership-CmHUjDvu.js} +2 -2
  2. package/dist/{add-me-membership-_O3IzRLn.js.map → add-me-membership-CmHUjDvu.js.map} +1 -1
  3. package/dist/{agents-B5E7c7sQ.js → agents-CNW1dony.js} +9 -9
  4. package/dist/{agents-B5E7c7sQ.js.map → agents-CNW1dony.js.map} +1 -1
  5. package/dist/{api-client-foundation-1p1VVFJ_.js → api-client-foundation-BHjffwwr.js} +1 -1
  6. package/dist/{api-client-foundation-C-RPnq_p.js → api-client-foundation-D6zHrrGV.js} +3 -3
  7. package/dist/{api-client-foundation-C-RPnq_p.js.map → api-client-foundation-D6zHrrGV.js.map} +1 -1
  8. package/dist/auth-session-CCLabxRT.js +4 -0
  9. package/dist/{auth-session-iXCJO5oB.js → auth-session-CjxqNKvh.js} +2 -2
  10. package/dist/{auth-session-iXCJO5oB.js.map → auth-session-CjxqNKvh.js.map} +1 -1
  11. package/dist/{channel-BciBrA3Y.js → channel-BW2_rI6u.js} +3 -3
  12. package/dist/{channel-BciBrA3Y.js.map → channel-BW2_rI6u.js.map} +1 -1
  13. package/dist/{command-D0pcAIoE.js → command-9Iorb5GA.js} +16 -16
  14. package/dist/{command-D0pcAIoE.js.map → command-9Iorb5GA.js.map} +1 -1
  15. package/dist/{computer-connection-CHP1-0rK.js → computer-connection-LX1R7jD0.js} +2 -2
  16. package/dist/{computer-connection-CHP1-0rK.js.map → computer-connection-LX1R7jD0.js.map} +1 -1
  17. package/dist/{computer-connection-review-dHotFqmD.js → computer-connection-review-CeOHkloT.js} +5 -5
  18. package/dist/{computer-connection-review-dHotFqmD.js.map → computer-connection-review-CeOHkloT.js.map} +1 -1
  19. package/dist/{computer-disconnect-B2DLDxWx.js → computer-disconnect-CXDO8zgT.js} +7 -7
  20. package/dist/{computer-disconnect-B2DLDxWx.js.map → computer-disconnect-CXDO8zgT.js.map} +1 -1
  21. package/dist/{computer-setup-continuation-Cv_c1B-7.js → computer-setup-continuation-XgvjM0jF.js} +3 -3
  22. package/dist/{computer-setup-continuation-Cv_c1B-7.js.map → computer-setup-continuation-XgvjM0jF.js.map} +1 -1
  23. package/dist/{context-BnhlFS8m.js → context-D3GnSqg8.js} +3 -3
  24. package/dist/{context-BnhlFS8m.js.map → context-D3GnSqg8.js.map} +1 -1
  25. package/dist/control-plane-QqGL-jtT.js.map +1 -1
  26. package/dist/{daemon-device-id-DbSIqHoZ.js → daemon-device-id-OMqh2F9_.js} +5 -5
  27. package/dist/{daemon-device-id-DbSIqHoZ.js.map → daemon-device-id-OMqh2F9_.js.map} +1 -1
  28. package/dist/{daemon-lifecycle-journal-DsVVvKJe.js → daemon-lifecycle-journal-Dq8W9V9C.js} +4 -4
  29. package/dist/{daemon-lifecycle-journal-DsVVvKJe.js.map → daemon-lifecycle-journal-Dq8W9V9C.js.map} +1 -1
  30. package/dist/{daemon-service-runtime-DZI6Ke3_.js → daemon-service-runtime-B-x4bBKx.js} +2 -2
  31. package/dist/{daemon-service-runtime-DZI6Ke3_.js.map → daemon-service-runtime-B-x4bBKx.js.map} +1 -1
  32. package/dist/{daemon-service-update-coordinator-BgVBlJ4d.js → daemon-service-update-coordinator-Brv_30Kn.js} +18 -16
  33. package/dist/{daemon-service-update-coordinator-BgVBlJ4d.js.map → daemon-service-update-coordinator-Brv_30Kn.js.map} +1 -1
  34. package/dist/{dispatch-owned-runtime-BeIQetEt.js → dispatch-owned-runtime-Czq270vy.js} +50 -617
  35. package/dist/dispatch-owned-runtime-Czq270vy.js.map +1 -0
  36. package/dist/{dist-BgYBvEBB.js → dist-CJL7LE-y.js} +193 -358
  37. package/dist/dist-CJL7LE-y.js.map +1 -0
  38. package/dist/{dist-DQS0XYkb.js → dist-Ccpvj1tf.js} +2 -2
  39. package/dist/{dist-DQS0XYkb.js.map → dist-Ccpvj1tf.js.map} +1 -1
  40. package/dist/{dist-z72xYz5Z.js → dist-MpN-h8da.js} +1 -1
  41. package/dist/{elapsed-time-C7S-6bWV.js → elapsed-time-BSphCejK.js} +5 -5
  42. package/dist/{elapsed-time-C7S-6bWV.js.map → elapsed-time-BSphCejK.js.map} +1 -1
  43. package/dist/{entry-CX24qHnm.js → entry-CDablKgv.js} +7 -7
  44. package/dist/{entry-CX24qHnm.js.map → entry-CDablKgv.js.map} +1 -1
  45. package/dist/{installation-inventory-B3mwQFEA.js → installation-inventory-CRnah3Xf.js} +3 -3
  46. package/dist/{installation-inventory-B3mwQFEA.js.map → installation-inventory-CRnah3Xf.js.map} +1 -1
  47. package/dist/{installer-DnIJ4y3l.js → installer-BYBrLBth.js} +2 -2
  48. package/dist/{installer-DnIJ4y3l.js.map → installer-BYBrLBth.js.map} +1 -1
  49. package/dist/{meta-api-DgHkiIdr.js → meta-api-ClHCkzZB.js} +4 -4
  50. package/dist/{meta-api-DgHkiIdr.js.map → meta-api-ClHCkzZB.js.map} +1 -1
  51. package/dist/{openmeld-kYp99hOl.js → openmeld-Yz7J0OaB.js} +32 -32
  52. package/dist/{openmeld-kYp99hOl.js.map → openmeld-Yz7J0OaB.js.map} +1 -1
  53. package/dist/openmeld-dev-environment-DwdvL7jg.js +24 -0
  54. package/dist/openmeld-dev-environment-DwdvL7jg.js.map +1 -0
  55. package/dist/openmeld-dev.js +1 -19
  56. package/dist/openmeld-dev.js.map +1 -1
  57. package/dist/{openmeld-maintenance-worker-BqU1Asrm.js → openmeld-maintenance-worker-CVjbc-dv.js} +9 -9
  58. package/dist/{openmeld-maintenance-worker-BqU1Asrm.js.map → openmeld-maintenance-worker-CVjbc-dv.js.map} +1 -1
  59. package/dist/{openmeld-tools-update-join-BKJnGR5h.js → openmeld-tools-update-join-Em7DfQt6.js} +4 -4
  60. package/dist/{openmeld-tools-update-join-BKJnGR5h.js.map → openmeld-tools-update-join-Em7DfQt6.js.map} +1 -1
  61. package/dist/openmeld.js +4 -4
  62. package/dist/{prepare-provider-runtime-CD6XRt7X.js → prepare-provider-runtime-Bf2GBijn.js} +174 -49
  63. package/dist/prepare-provider-runtime-Bf2GBijn.js.map +1 -0
  64. package/dist/{prepare-session-executor-DY2s4FuY.js → prepare-session-executor-D8Vbyoq4.js} +18 -18
  65. package/dist/{prepare-session-executor-DY2s4FuY.js.map → prepare-session-executor-D8Vbyoq4.js.map} +1 -1
  66. package/dist/{process-channel-CzgOWiuh.js → process-channel-CTPL81j6.js} +2 -2
  67. package/dist/{process-channel-CzgOWiuh.js.map → process-channel-CTPL81j6.js.map} +1 -1
  68. package/dist/{runtime-Br4Ga0rJ.js → runtime-aUrBNKSl.js} +7860 -7249
  69. package/dist/runtime-aUrBNKSl.js.map +1 -0
  70. package/dist/{runtime-agent-controller-reporting-submission-CQjbBiHh.js → runtime-agent-controller-reporting-submission-BJY9cLyh.js} +16 -46
  71. package/dist/{runtime-agent-controller-reporting-submission-CQjbBiHh.js.map → runtime-agent-controller-reporting-submission-BJY9cLyh.js.map} +1 -1
  72. package/dist/{runtime-transport-D4CVffnp.js → runtime-transport-DyBmX7ds.js} +569 -30
  73. package/dist/runtime-transport-DyBmX7ds.js.map +1 -0
  74. package/dist/{service-D9QVc4_y.js → service-CMNaJrvV.js} +68 -38
  75. package/dist/service-CMNaJrvV.js.map +1 -0
  76. package/dist/{service-account-authorization-DLhUgGDb.js → service-account-authorization-CdyvPbvg.js} +2 -2
  77. package/dist/{service-account-authorization-DLhUgGDb.js.map → service-account-authorization-CdyvPbvg.js.map} +1 -1
  78. package/dist/{service-account-control-DIdQILmo.js → service-account-control-jnKTjLAR.js} +9 -9
  79. package/dist/{service-account-control-DIdQILmo.js.map → service-account-control-jnKTjLAR.js.map} +1 -1
  80. package/dist/{service-control-capabilities-CGv5Cuxo.js → service-control-capabilities-CRsFO-Jf.js} +3 -3
  81. package/dist/{service-control-capabilities-CGv5Cuxo.js.map → service-control-capabilities-CRsFO-Jf.js.map} +1 -1
  82. package/dist/{service-control-capabilities-BvHU_NcX.js → service-control-capabilities-DpJNUd1S.js} +1 -1
  83. package/dist/{state-AWe5DSV8.js → state-CON1kJsS.js} +2 -2
  84. package/dist/{state-AWe5DSV8.js.map → state-CON1kJsS.js.map} +1 -1
  85. package/dist/{runtime-reporting-health-state-a1FUE1S-.js → updates-api-BpWiCpAo.js} +374 -206
  86. package/dist/updates-api-BpWiCpAo.js.map +1 -0
  87. package/dist/{upgrade-CcnlL7FH.js → upgrade-Bdh732dG.js} +7 -7
  88. package/dist/{upgrade-CcnlL7FH.js.map → upgrade-Bdh732dG.js.map} +1 -1
  89. package/dist/upgrade-frLu7pCB.js +4 -0
  90. package/package.json +11 -11
  91. package/dist/auth-session-CmjjkLiB.js +0 -4
  92. package/dist/dispatch-owned-runtime-BeIQetEt.js.map +0 -1
  93. package/dist/dist-BgYBvEBB.js.map +0 -1
  94. package/dist/prepare-provider-runtime-CD6XRt7X.js.map +0 -1
  95. package/dist/runtime-Br4Ga0rJ.js.map +0 -1
  96. package/dist/runtime-reporting-health-state-a1FUE1S-.js.map +0 -1
  97. package/dist/runtime-transport-D4CVffnp.js.map +0 -1
  98. package/dist/service-D9QVc4_y.js.map +0 -1
  99. package/dist/upgrade-CLnZ4WBF.js +0 -4
@@ -2,42 +2,43 @@
2
2
 
3
3
  import { D as openMeldRootDir, F as resolveOpenMeldRootDir, I as resolveOpenMeldServiceOwnedPathInput, P as resolveOpenMeldEnvPreset, h as isPublishedOpenMeldHome, o as accountsDir, y as normalizeAccountKey } from "./paths-De9xdA2h.js";
4
4
  import { r as resolveAuthBaseUrl } from "./auth-url-6Bb6YdNm.js";
5
- import { Gi as COMPUTER_FILE_ACCESS_RUNTIME_CAPABILITY, Ki as OPENMELD_RUNTIME_CAPABILITIES_HEADER, Li as localProjectControlDaemonFrameSchema, Ni as serviceConnectionEvidenceEventSchema, Pi as serviceConnectionEvidenceJournalSchema, Ri as localProjectControlDiscoverProjectsResponseSchema, dr as betterAuthDeviceAuthorizationCodeResponseSchema, fr as betterAuthDeviceAuthorizationErrorResponseSchema, hr as betterAuthSessionSnapshotResponseSchema, lr as BETTER_AUTH_DEVICE_AUTHORIZATION_GRANT_TYPE, mr as betterAuthDeviceAuthorizationTokenResponseSchema, pn as createServiceConnectionEvidenceApi, pr as betterAuthDeviceAuthorizationTokenRequestSchema, qi as computerFileAccessDaemonFrameSchema, qn as DAEMON_STREAM_KEEPALIVE_PING, ur as betterAuthDeviceAuthorizationCodeRequestSchema } from "./dist-BgYBvEBB.js";
6
- import { An as emitDriftDetectedEvidence, Ar as resolveRouteRegistrationReconcileDecision, At as ensureOpenMeldManagedProfileWorkspace, Bt as createMutableRouteCatalogState, Fr as applyIntervalJitterMs$1, Ft as resolveConfiguredProfileWorkspacePathForAccount, Ht as summarizeSkippedDaemonProfiles, I as listAgentTargetStates, Ir as pruneStaleLeases, It as setCustomProfileWorkspace, Jt as isDaemonReconcileInProgressError, Kn as buildAuthenticatedControlPlaneResponse, Lr as resolveAdaptiveHeartbeatIntervalMs, Mn as emitReconcileStartedEvidence, Mr as MAX_HEARTBEAT_INTERVAL_MS, Nn as DaemonServiceRunError, Nr as MIN_HEARTBEAT_INTERVAL_MS, Nt as readProfileWorkspaceConfigForAccount, O as syncDeviceRuntimeStateProjection, Ot as resolveRegistryRuntimeAdapterCapabilitySnapshot, Pr as applyAcceptedLeases, Rr as resolveCatalogSyncIntervalMs, Ut as syncDaemonRouteCatalogState, Vt as createRouteCatalogFromMutableState, _t as removeProjectConnection, bt as setDefaultProjectConnection, ct as ProjectBindingOperationError, ft as listProjectBindings, gt as removeMissingProjectConnections, jn as emitReconcileCompletedEvidence, jr as ADAPTIVE_HEARTBEAT_JITTER_RATIO, ln as resolveCatalogSyncSkippedProfilesLogState, lt as ProjectBindingStoreUpdateRequiredError, pt as listProjectConnectionsWithStatus, tn as buildLocalServiceDiagnosticsPayload, ut as bindProject } from "./prepare-provider-runtime-CD6XRt7X.js";
7
- import { $r as localFolderPickerHelperResultSchema, A as runtimeTransportLocalAgentControlRefreshCatalogFramePayloadSchema, An as OPENMELD_COMPUTER_CARE_HEADER, C as runtimeTransportHeartbeatRequestSchema, F as runtimeTransportOpenMeldToolsControlResultFramePayloadSchema, I as runtimeTransportRegisterSessionRequestSchema, M as runtimeTransportLocalAgentControlSetProfileWorkspaceFramePayloadSchema, P as runtimeTransportOpenMeldToolsControlFramePayloadSchema, Qr as localFolderPickerHelperProtocolResultSchema, Ur as OPENMELD_REASONING_STREAM_HEADER, Ut as SPACE_WORK_HANDOFF_CAPABILITY_HEADER, V as runtimeTransportRouteCatalogChangedFramePayloadSchema, Xr as OPENMELD_LOCAL_FOLDER_PICKER_CAPABILITY_HEADER, Yr as LOCAL_FOLDER_PICKER_RUNTIME_CAPABILITY, Zr as localFolderPickerDaemonFrameSchema, it as sanitizeDispatchErrorSummary, n as OPENMELD_ADMISSION_EVIDENCE_HEADER, r as OPENMELD_EXECUTION_ADMISSION_HEADER, s as localWakeRouteWorkingFolderObservationSchema, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH } from "./runtime-transport-D4CVffnp.js";
5
+ import { Gi as OPENMELD_RUNTIME_CAPABILITIES_HEADER, Ii as localProjectControlDaemonFrameSchema, Ki as computerFileAccessDaemonFrameSchema, Li as localProjectControlDiscoverProjectsResponseSchema, Mi as serviceConnectionEvidenceEventSchema, Ni as serviceConnectionEvidenceJournalSchema, Wi as COMPUTER_FILE_ACCESS_RUNTIME_CAPABILITY, dr as betterAuthDeviceAuthorizationCodeResponseSchema, fr as betterAuthDeviceAuthorizationErrorResponseSchema, hr as betterAuthSessionSnapshotResponseSchema, lr as BETTER_AUTH_DEVICE_AUTHORIZATION_GRANT_TYPE, mr as betterAuthDeviceAuthorizationTokenResponseSchema, pn as createServiceConnectionEvidenceApi, pr as betterAuthDeviceAuthorizationTokenRequestSchema, qn as DAEMON_STREAM_KEEPALIVE_PING, ur as betterAuthDeviceAuthorizationCodeRequestSchema } from "./dist-CJL7LE-y.js";
6
+ import { A as runtimeTransportLocalAgentControlRefreshCatalogFramePayloadSchema, C as runtimeTransportHeartbeatRequestSchema, F as runtimeTransportOpenMeldToolsControlResultFramePayloadSchema, I as runtimeTransportRegisterSessionRequestSchema, M as runtimeTransportLocalAgentControlSetProfileWorkspaceFramePayloadSchema, P as runtimeTransportOpenMeldToolsControlFramePayloadSchema, V as runtimeTransportRouteCatalogChangedFramePayloadSchema, Wn as OPENMELD_COMPUTER_CARE_HEADER, di as localFolderPickerDaemonFrameSchema, fi as localFolderPickerHelperProtocolResultSchema, li as LOCAL_FOLDER_PICKER_RUNTIME_CAPABILITY, n as OPENMELD_ADMISSION_EVIDENCE_HEADER, pi as localFolderPickerHelperResultSchema, r as OPENMELD_EXECUTION_ADMISSION_HEADER, ri as OPENMELD_REASONING_STREAM_HEADER, rn as SPACE_WORK_HANDOFF_CAPABILITY_HEADER, s as localWakeRouteWorkingFolderObservationSchema, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, ui as OPENMELD_LOCAL_FOLDER_PICKER_CAPABILITY_HEADER, vt as sanitizeDispatchErrorSummary } from "./runtime-transport-DyBmX7ds.js";
7
+ import { s as openMeldDaemonControlPlaneResponseSchema } from "./control-plane-QqGL-jtT.js";
8
+ import { An as emitReconcileCompletedEvidence, Ar as ADAPTIVE_HEARTBEAT_JITTER_RATIO, At as ensureOpenMeldManagedProfileWorkspace, Bt as createMutableRouteCatalogState, Fr as pruneStaleLeases, Ft as resolveConfiguredProfileWorkspacePathForAccount, Gn as buildAuthenticatedControlPlaneResponse, Ht as summarizeSkippedDaemonProfiles, I as listAgentTargetStates, Ir as resolveAdaptiveHeartbeatIntervalMs, It as setCustomProfileWorkspace, Jt as isDaemonReconcileInProgressError, Lr as resolveCatalogSyncIntervalMs, Mn as DaemonServiceRunError, Mr as MIN_HEARTBEAT_INTERVAL_MS, Nr as applyAcceptedLeases, Nt as readProfileWorkspaceConfigForAccount, O as syncDeviceRuntimeStateProjection, Ot as resolveRegistryRuntimeAdapterCapabilitySnapshot, Pr as applyIntervalJitterMs$1, Ut as syncDaemonRouteCatalogState, Vt as createRouteCatalogFromMutableState, _t as removeProjectConnection, bt as setDefaultProjectConnection, ct as ProjectBindingOperationError, ft as listProjectBindings, gt as removeMissingProjectConnections, jn as emitReconcileStartedEvidence, jr as MAX_HEARTBEAT_INTERVAL_MS, kn as emitDriftDetectedEvidence, kr as resolveRouteRegistrationReconcileDecision, ln as resolveCatalogSyncSkippedProfilesLogState, lt as ProjectBindingStoreUpdateRequiredError, pt as listProjectConnectionsWithStatus, tn as buildLocalServiceDiagnosticsPayload, ut as bindProject } from "./prepare-provider-runtime-Bf2GBijn.js";
8
9
  import { a as formatLocalSetupActionLabel, i as formatLocalSetupActionDescription, n as formatLocalComponentsSummaryDescription, o as installedLocalComponentsSnapshotSchema, r as formatLocalComponentsSummaryLabel } from "./local-components-DJiMS67S.js";
9
10
  import { o as resolveCliBinaryPlatform } from "./cli-binary-manifest-ETxqCzfS.js";
10
- import { D as ServiceAccountAdmissionError, S as setAuthSession, _ as onAuthSessionCredentialAvailable, a as beginAuthSessionTransition, d as getAuthSessionState, i as assertAuthSessionMutationAvailable, o as buildStoredAuthSessionIdentity, s as clearAuthSession, v as onAuthSessionCredentialObservation, w as withAdmittedServiceSession } from "./auth-session-iXCJO5oB.js";
11
- import { s as openMeldDaemonControlPlaneResponseSchema } from "./control-plane-QqGL-jtT.js";
11
+ import { D as ServiceAccountAdmissionError, S as setAuthSession, _ as onAuthSessionCredentialAvailable, a as beginAuthSessionTransition, d as getAuthSessionState, i as assertAuthSessionMutationAvailable, o as buildStoredAuthSessionIdentity, s as clearAuthSession, v as onAuthSessionCredentialObservation, w as withAdmittedServiceSession } from "./auth-session-CjxqNKvh.js";
12
12
  import { r as daemonServiceLaneSchema } from "./service-contract-CRyDcIIf.js";
13
- import { m as hashBundledSkillAssets, p as computeDirectoryContentHash, u as loadSelectedSkillAssets } from "./state-AWe5DSV8.js";
14
- import { Z as resolveNextRuntimeAgentControllerReportSyncAtMs, _t as resolveComputerFileAccessStorePath, b as collectObservedSessionWorkingDirectories, g as parseDaemonFrame, gt as readComputerFileAccessPolicy, h as handleDaemonTransportFrame, ht as ComputerFileAccessStoreError, jn as cliJsonOutputEnvelopeSchema, n as assertDispatchOwnedRuntimeServiceMutationAllowed, pt as emitDaemonDispatchJournalEvent, vt as updateComputerFileAccessPolicy, y as sendDaemonFrame } from "./dispatch-owned-runtime-BeIQetEt.js";
15
- import { A as prepareDaemonServiceBundle, G as readManagedCliInstallation, M as resolveAlignedDaemonActiveBundleEntryPath, N as resolveDaemonBundleEntryPathFromState, a as resolveDaemonRuntimeState, b as cleanupInactiveDaemonServiceBundles, f as listDaemonOwnedProcesses, h as resolveDaemonBundleIdFromEntryPath, i as readCurrentObservedDaemonRuntimeStatus, j as readDaemonActiveBundleState, n as getEffectiveDaemonRuntimeStatus, o as resolveDaemonServiceManagerForRuntimeState, p as extractDaemonCommandEntryPath, r as readCurrentDaemonRuntimeContext, s as waitForDaemonSystemServiceToStop, t as clearDaemonRuntimeStateIfDefinitelyStopped, u as cleanupLegacySharedDaemonServiceState, v as isOpenMeldManagedBinaryPath } from "./daemon-service-runtime-DZI6Ke3_.js";
16
- import { A as DEFAULT_RECONNECT_DELAY_MS, B as requireOpenMeldProfile, C as CONTROLLED_SHUTDOWN_SOCKET_CLOSE_TIMEOUT_MS, D as DAEMON_STREAM_CONNECT_TIMEOUT_MS, F as REGISTER_RESPONSE_TIMEOUT_MS, I as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS, L as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS, M as MAX_RECONNECT_DELAY_MS, N as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS, O as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS, P as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS, Q as readDaemonCatalogSyncSignal, R as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS, V as resolveOpenMeldProfileOrNull, _ as toErrorMessage$5, b as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS, c as normalizeHeartbeatIntervalMs, ct as buildHumanAuthenticationCard, d as normalizeText$1, dt as resolveAuthenticationGuidance, f as nowIsoString, i as resolvePreferredDaemonDeviceId, j as HEARTBEAT_RESPONSE_TIMEOUT_MS, k as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS, lt as createAuthenticationError, mt as resolveAuthenticationReasonFromState, n as ensureDaemonRuntimePaths, ot as buildAuthenticationStatusLabel, r as resolveDaemonDeviceId, s as emitRunLine, st as buildCommandAuthenticationPromptMessage$1, tt as clearAllSelectedOpenMeldProfileIds, u as normalizeOptionalText$1, ut as extractAuthenticationPromptAction, v as warnDaemonEvent, w as DAEMON_RUNTIME_CONTRACT_EPOCH, x as CONTROLLED_SHUTDOWN_REQUEST_TIMEOUT_MS, y as CATALOG_SYNC_RETRY_INTERVAL_MS } from "./daemon-device-id-DbSIqHoZ.js";
13
+ import { m as hashBundledSkillAssets, p as computeDirectoryContentHash, u as loadSelectedSkillAssets } from "./state-CON1kJsS.js";
14
+ import { $ as readComputerFileAccessPolicy, L as createServiceGitEnvironment, Q as ComputerFileAccessStoreError, X as emitDaemonDispatchJournalEvent, Y as resolveNextRuntimeAgentControllerReportSyncAtMs, _ as collectObservedSessionWorkingDirectories, et as resolveComputerFileAccessStorePath, g as sendDaemonFrame, h as parseDaemonFrame, m as handleDaemonTransportFrame, mn as cliJsonOutputEnvelopeSchema, n as assertDispatchOwnedRuntimeServiceMutationAllowed, tt as updateComputerFileAccessPolicy } from "./dispatch-owned-runtime-Czq270vy.js";
15
+ import { A as prepareDaemonServiceBundle, G as readManagedCliInstallation, M as resolveAlignedDaemonActiveBundleEntryPath, N as resolveDaemonBundleEntryPathFromState, a as resolveDaemonRuntimeState, b as cleanupInactiveDaemonServiceBundles, f as listDaemonOwnedProcesses, h as resolveDaemonBundleIdFromEntryPath, i as readCurrentObservedDaemonRuntimeStatus, j as readDaemonActiveBundleState, n as getEffectiveDaemonRuntimeStatus, o as resolveDaemonServiceManagerForRuntimeState, p as extractDaemonCommandEntryPath, r as readCurrentDaemonRuntimeContext, s as waitForDaemonSystemServiceToStop, t as clearDaemonRuntimeStateIfDefinitelyStopped, u as cleanupLegacySharedDaemonServiceState, v as isOpenMeldManagedBinaryPath } from "./daemon-service-runtime-B-x4bBKx.js";
16
+ import { A as DEFAULT_RECONNECT_DELAY_MS, B as requireOpenMeldProfile, C as CONTROLLED_SHUTDOWN_SOCKET_CLOSE_TIMEOUT_MS, D as DAEMON_STREAM_CONNECT_TIMEOUT_MS, F as REGISTER_RESPONSE_TIMEOUT_MS, I as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS, L as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS, M as MAX_RECONNECT_DELAY_MS, N as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS, O as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS, P as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS, Q as readDaemonCatalogSyncSignal, R as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS, V as resolveOpenMeldProfileOrNull, _ as toErrorMessage$5, b as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS, c as normalizeHeartbeatIntervalMs, ct as buildHumanAuthenticationCard, d as normalizeText$1, dt as resolveAuthenticationGuidance, f as nowIsoString, i as resolvePreferredDaemonDeviceId, j as HEARTBEAT_RESPONSE_TIMEOUT_MS, k as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS, lt as createAuthenticationError, mt as resolveAuthenticationReasonFromState, n as ensureDaemonRuntimePaths, ot as buildAuthenticationStatusLabel, r as resolveDaemonDeviceId, s as emitRunLine, st as buildCommandAuthenticationPromptMessage$1, tt as clearAllSelectedOpenMeldProfileIds, u as normalizeOptionalText$1, ut as extractAuthenticationPromptAction, v as warnDaemonEvent, w as DAEMON_RUNTIME_CONTRACT_EPOCH, x as CONTROLLED_SHUTDOWN_REQUEST_TIMEOUT_MS, y as CATALOG_SYNC_RETRY_INTERVAL_MS } from "./daemon-device-id-OMqh2F9_.js";
17
17
  import { i as writeDaemonRuntimeLease } from "./daemon-runtime-lease-Bv6vhqOe.js";
18
18
  import { i as readProcessStartIdentity, n as isPreciseProcessStartIdentity, t as CURRENT_PROCESS_START_IDENTITY } from "./process-identity-BRbhGGTM.js";
19
- import { $ as buildDaemonServiceDependencyTitle, At as DAEMON_SERVICE_FULL_ALIGNMENT_ANOMALIES, C as formatDaemonServiceRefreshReliabilityMessage, Ct as ensureDaemonRuntimeContractState, D as writeDaemonStartFailureState, Dt as isVersionDowngrade, E as clearDaemonStartFailureState, Et as resolveDaemonServiceAlignmentDecision, Ft as resolveCurrentDaemonExpectedVersion, It as resolveServiceUpdateUrgency, Lt as assessServerRequiredVersion, Nt as classifyDaemonServiceRunStartability, Pt as classifyDaemonServiceWakeability, Q as buildDaemonServiceDependencySummary, Rt as describeServerRequiredVersionUnavailableReason, S as buildDaemonServiceUpdateRequiredNextStep, Tt as buildDaemonServiceTargetSpec, Ut as ensureDaemonSystemServiceCommandFiles, Vt as assessCliUpdate, W as resolveLocalServiceDemand, Wt as resolveInstalledDaemonSystemServiceCommandSpec, X as buildDaemonServiceDependencyMeaning, Y as buildDaemonServiceDependencyDetails, Z as buildDaemonServiceDependencyNextStep, _t as readCurrentDaemonOwnerSnapshot, a as isDaemonInventoryRunningAndStartReady$1, bt as summarizeDaemonOwnerSnapshot, c as waitForSystemServiceStartup$1, ct as writeOpenMeldToolsMaintenancePolicy, d as captureDaemonServiceEvidenceBestEffort, et as resolveDaemonServiceDependencyDiagnostics, f as formatDaemonFailureContextText, ft as uninstallDaemonServiceUpdateWorker, g as resolveServiceReadiness, gt as hasActiveDaemonOwners, h as resolveDaemonStatusAuthenticationAttention, ht as formatDaemonOwnerSummaryLabel, i as runDaemonServiceLifecycle, jt as DAEMON_SERVICE_REPAIR_ANOMALIES, kt as DAEMON_SERVICE_AUTO_HEAL_ANOMALIES, l as startDaemonSystemServiceWithAutoRepair, lt as ensureDaemonServiceMaintenanceInstalled, m as resolveDaemonStatusAttention, mt as buildDaemonOwnerSnapshotFromObservedState, n as scheduleDaemonServiceUpdate, nt as createOpenMeldToolsUpdateCoordinator, o as isSystemServiceStartupTimeoutError, ot as readOpenMeldToolsMaintenancePolicy, p as resolveDaemonStatusSnapshot, pt as inspectDaemonServiceInventory, r as DaemonServiceLifecycleDrainTimeoutError, s as resolveSystemServiceStartupWaitMs, st as resolveOpenMeldToolsMaintenanceProjection, tt as writeDaemonServiceContract, u as captureDaemonServiceEvidence, v as buildDaemonServiceRefreshNextStep, vt as resolveDaemonStopStrategy, w as formatDaemonServiceUpdateRequiredMessage, wt as readDaemonRuntimeContractRepairReport, x as buildDaemonServiceStatusReadOnlyDetail, y as buildDaemonServiceRefreshPromptMessage, yt as resolveStoppedContractWriteBlockedReason } from "./daemon-service-update-coordinator-BgVBlJ4d.js";
19
+ import { $ as buildDaemonServiceDependencyTitle, At as DAEMON_SERVICE_FULL_ALIGNMENT_ANOMALIES, C as formatDaemonServiceRefreshReliabilityMessage, Ct as ensureDaemonRuntimeContractState, D as writeDaemonStartFailureState, Dt as isVersionDowngrade, E as clearDaemonStartFailureState, Et as resolveDaemonServiceAlignmentDecision, Ft as resolveCurrentDaemonExpectedVersion, It as resolveServiceUpdateUrgency, Lt as assessServerRequiredVersion, Nt as classifyDaemonServiceRunStartability, Pt as classifyDaemonServiceWakeability, Q as buildDaemonServiceDependencySummary, Rt as describeServerRequiredVersionUnavailableReason, S as buildDaemonServiceUpdateRequiredNextStep, Tt as buildDaemonServiceTargetSpec, Ut as ensureDaemonSystemServiceCommandFiles, Vt as assessCliUpdate, W as resolveLocalServiceDemand, Wt as resolveInstalledDaemonSystemServiceCommandSpec, X as buildDaemonServiceDependencyMeaning, Y as buildDaemonServiceDependencyDetails, Z as buildDaemonServiceDependencyNextStep, _t as readCurrentDaemonOwnerSnapshot, a as isDaemonInventoryRunningAndStartReady$1, bt as summarizeDaemonOwnerSnapshot, c as waitForSystemServiceStartup$1, ct as writeOpenMeldToolsMaintenancePolicy, d as captureDaemonServiceEvidenceBestEffort, et as resolveDaemonServiceDependencyDiagnostics, f as formatDaemonFailureContextText, ft as uninstallDaemonServiceUpdateWorker, g as resolveServiceReadiness, gt as hasActiveDaemonOwners, h as resolveDaemonStatusAuthenticationAttention, ht as formatDaemonOwnerSummaryLabel, i as runDaemonServiceLifecycle, jt as DAEMON_SERVICE_REPAIR_ANOMALIES, kt as DAEMON_SERVICE_AUTO_HEAL_ANOMALIES, l as startDaemonSystemServiceWithAutoRepair, lt as ensureDaemonServiceMaintenanceInstalled, m as resolveDaemonStatusAttention, mt as buildDaemonOwnerSnapshotFromObservedState, n as scheduleDaemonServiceUpdate, nt as createOpenMeldToolsUpdateCoordinator, o as isSystemServiceStartupTimeoutError, ot as readOpenMeldToolsMaintenancePolicy, p as resolveDaemonStatusSnapshot, pt as inspectDaemonServiceInventory, r as DaemonServiceLifecycleDrainTimeoutError, s as resolveSystemServiceStartupWaitMs, st as resolveOpenMeldToolsMaintenanceProjection, tt as writeDaemonServiceContract, u as captureDaemonServiceEvidence, v as buildDaemonServiceRefreshNextStep, vt as resolveDaemonStopStrategy, w as formatDaemonServiceUpdateRequiredMessage, wt as readDaemonRuntimeContractRepairReport, x as buildDaemonServiceStatusReadOnlyDetail, y as buildDaemonServiceRefreshPromptMessage, yt as resolveStoppedContractWriteBlockedReason } from "./daemon-service-update-coordinator-Brv_30Kn.js";
20
20
  import { C as assessLocalMachineFailure, E as createServiceSpawnPendingIssue, i as isOpenMeldLockError, k as formatLocalMachineIssueMessage, u as resolveOpenMeldOrphanedLockIssue, x as resolveOpenMeldLaneDescriptor } from "./lock-BMI00i2F.js";
21
- import { c as serviceExecutionHostSnapshotSchema, n as createExecutionHostClient, o as serviceExecutionHostMethods, t as ExecutionHostError } from "./channel-BciBrA3Y.js";
21
+ import { c as serviceExecutionHostSnapshotSchema, n as createExecutionHostClient, o as serviceExecutionHostMethods, t as ExecutionHostError } from "./channel-BW2_rI6u.js";
22
22
  import { a as resolveBaseUrl, c as resolveExplicitGatewayUrlOrThrow, f as getConfiguredDaemonDispatchLimits, i as normalizeGatewayBaseUrlOrNull, o as resolveBaseUrlOrNull, r as normalizeGatewayBaseUrl } from "./base-url-0AoeTi3w.js";
23
+ import "./openmeld-dev-environment-DwdvL7jg.js";
23
24
  import { n as writeDaemonLocalStateFile, t as readDaemonLocalStateFile } from "./daemon-local-state-file-jOXuXrky.js";
24
25
  import { t as isBinaryDistribution } from "./distribution-BDQT2ilb.js";
25
26
  import { A as getDaemonStatus, G as withDaemonServiceRegistrationMutationLock, H as setDaemonServiceRuntimeState, I as readDaemonServiceRuntimeSnapshot, K as withDaemonServiceRunLock, L as releaseDaemonServiceLifecycleLock, M as isDaemonServiceRuntimeHeartbeatStale, O as ensureDaemonControlPlaneToken, R as resolveDaemonControlPlaneEndpoint, S as daemonServiceRepairJournalPath, U as uninstallDaemon, W as withDaemonServiceReconcileLock, _ as daemonRuntimeStateRootPath, a as DAEMON_SERVICE_RUNTIME_MODE_ENV, c as acquireDaemonServiceLifecycleLock, f as daemonLifecycleJournalPath, h as daemonRuntimeRootPath, i as DAEMON_SERVICE_RUNTIME_DETACHED_ENV, j as installDaemon, l as clearDaemonServiceRuntimeState, o as DAEMON_SERVICE_RUNTIME_STATE_SCHEMA, q as withDaemonServiceStopLock, z as resolveDaemonServiceRuntimeMetadata } from "./daemon-state-Dte9re5V.js";
26
27
  import { a as upsertDaemonServiceContract, i as readDaemonServiceContract, n as isDaemonServiceContractIdentityReusable, t as clearDaemonServiceContract } from "./daemon-service-contract-COPKbCy_.js";
27
28
  import { a as formatOpenMeldCliTextBlock, n as formatOpenMeldCliCommand, r as formatOpenMeldCliCommands, t as formatInlineOpenMeldCliCommands } from "./cli-entry-command-CR_9QU1i.js";
28
29
  import { t as resolveOpenMeldEnvironmentTarget } from "./openmeld-environment-target-BgYR6ozy.js";
29
- import { t as admitServiceAccountStop } from "./service-account-authorization-DLhUgGDb.js";
30
- import { S as requestLocalDaemonShutdown, c as runWithDaemonLifecycleCommandJournal, d as compareSemver, i as readLatestDaemonLifecycleOriginEvent, l as OPENMELD_VERSION, n as formatDaemonLifecycleOriginSummary, o as resolveRecentDaemonSignalStopCause, r as readLatestDaemonLifecycleConnectionStateEvent, s as runDaemonServiceManagerAction, t as emitDaemonLifecycleEvent, w as sendLocalDaemonControlPlaneRequest, y as LocalDaemonControlPlaneClientError } from "./daemon-lifecycle-journal-DsVVvKJe.js";
30
+ import { t as admitServiceAccountStop } from "./service-account-authorization-CdyvPbvg.js";
31
+ import { S as requestLocalDaemonShutdown, c as runWithDaemonLifecycleCommandJournal, d as compareSemver, i as readLatestDaemonLifecycleOriginEvent, l as OPENMELD_VERSION, n as formatDaemonLifecycleOriginSummary, o as resolveRecentDaemonSignalStopCause, r as readLatestDaemonLifecycleConnectionStateEvent, s as runDaemonServiceManagerAction, t as emitDaemonLifecycleEvent, w as sendLocalDaemonControlPlaneRequest, y as LocalDaemonControlPlaneClientError } from "./daemon-lifecycle-journal-Dq8W9V9C.js";
31
32
  import { r as readWindowsManagedCliInstallation } from "./windows-managed-install-BVlswqjA.js";
32
33
  import { n as toErrorMessage$6, t as sleep } from "./dist-BLuEEVHh.js";
33
34
  import { S as resolveDaemonServiceManager, _ as readDaemonServiceJobCrashExitCode, a as disableDaemonServiceAutostartIfConfigured, c as getDaemonSystemServiceLogPath, f as isDaemonServiceJobSpawnPending, o as formatDaemonServiceJobDiagnosticsEvidence, s as getDaemonServiceLaunchdLabel } from "./daemon-service-manager-BXAp21GH.js";
34
- import { n as resolveRuntimeContext } from "./context-BnhlFS8m.js";
35
+ import { n as resolveRuntimeContext } from "./context-D3GnSqg8.js";
35
36
  import { n as outJsonLine, r as outLine } from "./io-DT66typ4.js";
36
37
  import { n as sanitizeTerminalDisplayText, t as createPresenter } from "./presenter-MJ5YgsOT.js";
37
- import { X as getCommandEntryContract, _ as createAuthLoginGuideError, a as formatDaemonServiceDowngradeBlockedRecommendation, d as formatDaemonServiceMissingStatus, f as getDaemonDowngradeBlockedTitle, g as canUseInteractivePrompts, h as resolveOpenMeldToolsUpdateOperationProjection, l as formatDaemonServiceMissingRunStepOne, n as resolveElapsedTimeMs, o as formatDaemonServiceMissingAction, pt as validateDaemonControlTargetInput, r as formatDaemonDowngradeBlockedNextStep, s as formatDaemonServiceMissingMeaning, t as formatElapsedTime, u as formatDaemonServiceMissingRunStepTwo, xt as buildAgentOverviewFromContract } from "./elapsed-time-C7S-6bWV.js";
38
- import { c as buildRequestAuthHeaders, i as AuthRequestCredentialError, l as canAttachAuthTokenToRequest, o as buildOpenMeldProfileRequestHeadersWithAuth, p as deriveAuthBaseUrlFromGatewayUrl, t as createCliApiClientFoundation, u as fingerprintRequestAuthorization } from "./api-client-foundation-C-RPnq_p.js";
39
- import { t as childExecutionHostChannel } from "./process-channel-CzgOWiuh.js";
40
- import { n as collectSkillsReadinessSnapshot } from "./installation-inventory-B3mwQFEA.js";
38
+ import { X as getCommandEntryContract, _ as createAuthLoginGuideError, a as formatDaemonServiceDowngradeBlockedRecommendation, d as formatDaemonServiceMissingStatus, f as getDaemonDowngradeBlockedTitle, g as canUseInteractivePrompts, h as resolveOpenMeldToolsUpdateOperationProjection, l as formatDaemonServiceMissingRunStepOne, n as resolveElapsedTimeMs, o as formatDaemonServiceMissingAction, pt as validateDaemonControlTargetInput, r as formatDaemonDowngradeBlockedNextStep, s as formatDaemonServiceMissingMeaning, t as formatElapsedTime, u as formatDaemonServiceMissingRunStepTwo, xt as buildAgentOverviewFromContract } from "./elapsed-time-BSphCejK.js";
39
+ import { c as buildRequestAuthHeaders, i as AuthRequestCredentialError, l as canAttachAuthTokenToRequest, o as buildOpenMeldProfileRequestHeadersWithAuth, p as deriveAuthBaseUrlFromGatewayUrl, t as createCliApiClientFoundation, u as fingerprintRequestAuthorization } from "./api-client-foundation-D6zHrrGV.js";
40
+ import { t as childExecutionHostChannel } from "./process-channel-CTPL81j6.js";
41
+ import { n as collectSkillsReadinessSnapshot } from "./installation-inventory-CRnah3Xf.js";
41
42
  import { createHash, randomUUID } from "node:crypto";
42
43
  import { delimiter, dirname, isAbsolute, join, resolve } from "node:path";
43
44
  import { access, mkdir, open, readFile, readdir, realpath, rename, rm, stat, writeFile } from "node:fs/promises";
@@ -56,7 +57,6 @@ const SERVICE_CONNECTION_ID_QUERY_PARAMETER = "connectionId";
56
57
  z$1.uuid();
57
58
  //#endregion
58
59
  //#region src/commands/auth-device-session-client.ts
59
- const DEFAULT_DEVICE_CLIENT_ID = "openmeld-cli";
60
60
  const DEVICE_CLIENT_ID_PATTERN = /^[A-Za-z0-9][A-Za-z0-9._:-]{1,63}$/;
61
61
  var AuthDeviceSessionClientError = class extends Error {
62
62
  endpoint;
@@ -203,7 +203,7 @@ async function revokeAuthAccessToken(input) {
203
203
  return { ok: true };
204
204
  }
205
205
  function resolveDeviceAuthClientId(value) {
206
- const clientId = normalizeOptionalString$5(value) ?? normalizeOptionalString$5(process.env.OPENMELD_AUTH_CLIENT_ID) ?? DEFAULT_DEVICE_CLIENT_ID;
206
+ const clientId = normalizeOptionalString$5(value) ?? normalizeOptionalString$5(process.env.OPENMELD_AUTH_CLIENT_ID) ?? (resolveOpenMeldEnvPreset() === "dev-local" ? "openmeld-cli-dev" : "openmeld-cli");
207
207
  if (!DEVICE_CLIENT_ID_PATTERN.test(clientId)) throw new Error(`invalid client_id "${clientId}" (allowed: letters, numbers, . _ : -)`);
208
208
  return clientId;
209
209
  }
@@ -4806,11 +4806,18 @@ async function rejectAfter(operation, timeoutMs, createError) {
4806
4806
  }
4807
4807
  }
4808
4808
  const runGitCommand = async (input) => await new Promise((resolveCommand, rejectCommand) => {
4809
- execFile(input.command, input.args, {
4809
+ execFile(input.command, input.command === "git" ? [
4810
+ "-c",
4811
+ "core.fsmonitor=false",
4812
+ "-c",
4813
+ "core.hooksPath=/dev/null",
4814
+ ...input.args
4815
+ ] : input.args, {
4810
4816
  encoding: "utf8",
4811
4817
  windowsHide: true,
4812
4818
  maxBuffer: 1024 * 1024,
4813
- timeout: input.timeoutMs
4819
+ timeout: input.timeoutMs,
4820
+ ...input.command === "git" ? { env: createServiceGitEnvironment() } : {}
4814
4821
  }, (error, stdout, stderr) => {
4815
4822
  if (!error) {
4816
4823
  resolveCommand({
@@ -6156,7 +6163,13 @@ async function runDaemonSocketSession(input) {
6156
6163
  };
6157
6164
  }
6158
6165
  async function sendHeartbeat(options = {}) {
6159
- if (closed) return;
6166
+ if (closed) {
6167
+ if (options.requireAcknowledgement) throw new DaemonServiceRunError({
6168
+ code: "daemon.run.socket_closed",
6169
+ message: "Transport closed before the final heartbeat."
6170
+ });
6171
+ return;
6172
+ }
6160
6173
  if (heartbeatInFlight) {
6161
6174
  if (options.publishAdmissionAfterInFlight) admissionHeartbeatPending = true;
6162
6175
  return;
@@ -6204,6 +6217,10 @@ async function runDaemonSocketSession(input) {
6204
6217
  timeoutMs: HEARTBEAT_RESPONSE_TIMEOUT_MS,
6205
6218
  waiters
6206
6219
  });
6220
+ if (!heartbeatResponse.ok) throw new DaemonServiceRunError({
6221
+ code: "daemon.run.heartbeat_rejected",
6222
+ message: "Core rejected the service heartbeat."
6223
+ });
6207
6224
  pruneStaleLeases({
6208
6225
  leasesByProfileId,
6209
6226
  staleLeases: heartbeatResponse.staleLeases
@@ -6251,7 +6268,7 @@ async function runDaemonSocketSession(input) {
6251
6268
  startRouteCatalogSyncIfDue();
6252
6269
  startSupplementalEvidenceSyncs();
6253
6270
  } catch (error) {
6254
- if (recordHeartbeatFailure(error)) {
6271
+ if (recordHeartbeatFailure(error) && !options.requireAcknowledgement) {
6255
6272
  admissionHeartbeatPending = false;
6256
6273
  input.socket.terminate();
6257
6274
  return;
@@ -6264,6 +6281,7 @@ async function runDaemonSocketSession(input) {
6264
6281
  delayMs: MIN_HEARTBEAT_INTERVAL_MS,
6265
6282
  reason: "heartbeat_retry"
6266
6283
  });
6284
+ if (options.requireAcknowledgement) throw error;
6267
6285
  } finally {
6268
6286
  heartbeatInFlight = false;
6269
6287
  const publishPendingAdmission = admissionHeartbeatPending;
@@ -6409,7 +6427,7 @@ async function runDaemonSocketSession(input) {
6409
6427
  profileConfigurationRevision: hasCompleteProfileConfigurationRevisions(routeCatalog)
6410
6428
  }),
6411
6429
  runtimeContract: { epoch: DAEMON_RUNTIME_CONTRACT_EPOCH },
6412
- connectedAtMs: Date.now()
6430
+ connectedAtMs: socketConnectedAtMs
6413
6431
  });
6414
6432
  if (!registerPayload.success) throw new DaemonServiceRunError({
6415
6433
  code: "daemon.run.register_payload_invalid",
@@ -7059,12 +7077,17 @@ async function runDaemonSocketSession(input) {
7059
7077
  code: "daemon.run.controlled_shutdown_inflight_heartbeat_completed",
7060
7078
  text: "Controlled shutdown finished waiting for the active heartbeat."
7061
7079
  });
7062
- await sendHeartbeat();
7063
- emitRunLine({
7064
- presenter: input.presenter,
7065
- code: "daemon.run.controlled_shutdown_final_heartbeat_completed",
7066
- text: "Controlled shutdown completed its final heartbeat."
7067
- });
7080
+ let finalHeartbeatError;
7081
+ try {
7082
+ await sendHeartbeat({ requireAcknowledgement: true });
7083
+ emitRunLine({
7084
+ presenter: input.presenter,
7085
+ code: "daemon.run.controlled_shutdown_final_heartbeat_completed",
7086
+ text: "Controlled shutdown completed its final heartbeat."
7087
+ });
7088
+ } catch (error) {
7089
+ finalHeartbeatError = error;
7090
+ }
7068
7091
  emitRunLine({
7069
7092
  presenter: input.presenter,
7070
7093
  code: "daemon.run.controlled_shutdown_draining",
@@ -7072,6 +7095,7 @@ async function runDaemonSocketSession(input) {
7072
7095
  });
7073
7096
  await input.executionHost.call("drain", {}, { timeoutMs: null });
7074
7097
  const result = await input.executionHost.call("settleResults", {});
7098
+ if (finalHeartbeatError) throw finalHeartbeatError;
7075
7099
  if (result.status === "connection_closed") return false;
7076
7100
  if (result.status === "timeout") emitRunLine({
7077
7101
  presenter: input.presenter,
@@ -7105,12 +7129,18 @@ async function runDaemonSocketSession(input) {
7105
7129
  kind: "shutdown_requested",
7106
7130
  stopCause
7107
7131
  })) ?? new Promise(() => void 0)]);
7108
- if (sessionExit.kind === "shutdown_requested" && !closed) controlledShutdownCompleted = await finishControlledShutdown(sessionExit.stopCause);
7109
- hostLink.detach().catch(reportHostFailure);
7110
- input.attachRouteCatalogSyncInvoker?.(null);
7111
- clearHeartbeatTimer();
7112
- keepalive.stop();
7113
- clearCatalogSyncSignalTimer();
7132
+ try {
7133
+ if (sessionExit.kind === "shutdown_requested" && !closed) controlledShutdownCompleted = await finishControlledShutdown(sessionExit.stopCause);
7134
+ } catch (error) {
7135
+ input.socket.terminate();
7136
+ throw error;
7137
+ } finally {
7138
+ hostLink.detach().catch(reportHostFailure);
7139
+ input.attachRouteCatalogSyncInvoker?.(null);
7140
+ clearHeartbeatTimer();
7141
+ keepalive.stop();
7142
+ clearCatalogSyncSignalTimer();
7143
+ }
7114
7144
  if (controlledShutdownCompleted || closeCode === 1e3 && closeReason === "shutdown") return;
7115
7145
  throw new DaemonServiceRunError({
7116
7146
  code: "daemon.run.socket_closed",
@@ -16010,4 +16040,4 @@ function parseDaemonRunMode(rawMode) {
16010
16040
  //#endregion
16011
16041
  export { buildAuthStatusSnapshot as $, buildDaemonStartNeedsAttentionCard as A, resolveDaemonServiceParticipationStatus as B, buildProfileWorkspaceRows as C, createDelayedSpinner as D, emitDaemonAgentOverview as E, emitCliJsonEnvelope as F, ensureCommandAuthenticationOrCancel as G, validateLocalProjectConnectionPath as H, runDaemonStartupPreflight as I, runAuthLogout as J, evaluateCommandAuthentication as K, readDaemonIncidentLogTail as L, buildHumanErrorCopy as M, renderHumanErrorCard as N, shouldEmitAgentOverview as O, renderHumanTextErrorCard as P, buildAuthStatusRows as Q, resolveLocalComponentsStatus as R, buildProfileWorkspacePresentation as S, createQuietPresenter as T, connectWebSocket as U, LocalProjectConnectionError as V, buildCommandAuthenticationPromptMessage as W, runAuthStatus as X, runAuthMenu as Y, exchangeOneTimeTokenAuthSession as Z, buildDaemonBackgroundStartFailure as _, resolveDeviceTokenExpiresAt as _t, runDaemonBackgroundStartForDecision as a, promptTextEntry as at, formatServiceRuntimeHeadline as b, runDaemonInterrupt as c, finishCurrentCommandCheckScope as ct, runDaemonServiceDetached as d, resetCurrentCommandCheckState as dt, formatActiveOrganizationLabel as et, runDaemonSnapshot as f, startCurrentCommandCheckScope as ft, runDaemonUninstall as g, resolveDeviceAuthClientId as gt, runDaemonTeardownStrict as h, requestDeviceToken as ht, runDaemonAutostart as i, buildUnifiedCardFrame as it, runDaemonStartDecisionPrompt as j, buildDaemonStartDeferredCard as k, runDaemonReinstall as l, getCurrentCommandCheckState as lt, runDaemonStop as m, fetchAuthUserSnapshot as mt, isManagedSystemServiceBootstrapRun as n, renderInfoCard as nt, runDaemonCancel as o, isReturnKeypress as ot, runDaemonStatusFlow as p, extractAuthApiErrorMessage as pt, runAuthLogin as q, runDaemon as r, renderTextInfoCard as rt, runDaemonInstall as s, runInteractivePrompt as st, bestEffortStopCurrentLaneDaemonService as t, buildTextInfoCardLines as tt, runDaemonRunAfterEntryChecks as u, isCurrentCommandCheckScopeActive as ut, buildSystemServiceStartupFailureReportFromVerdict as v, revokeAuthAccessToken as vt, reconcileCliVersionView as w, resolveServiceParticipationReadiness as x, formatServiceParticipationReadinessLabel as y, writeInstalledLocalComponentsSnapshot as z };
16012
16042
 
16013
- //# sourceMappingURL=service-D9QVc4_y.js.map
16043
+ //# sourceMappingURL=service-CMNaJrvV.js.map