openmeld 0.3.291 → 0.3.293

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 (70) hide show
  1. package/dist/{add-me-membership-CyjPMpL8.js → add-me-membership-CCs8sUQS.js} +2 -2
  2. package/dist/{add-me-membership-CyjPMpL8.js.map → add-me-membership-CCs8sUQS.js.map} +1 -1
  3. package/dist/{agents-TD36Nt36.js → agents-Ow9keQaE.js} +5 -5
  4. package/dist/{agents-TD36Nt36.js.map → agents-Ow9keQaE.js.map} +1 -1
  5. package/dist/{channel--QXaQfMz.js → channel-DfaHRitM.js} +2 -2
  6. package/dist/{channel--QXaQfMz.js.map → channel-DfaHRitM.js.map} +1 -1
  7. package/dist/{command-B-lmrdLm.js → command-Bjok_ELo.js} +9 -9
  8. package/dist/{command-B-lmrdLm.js.map → command-Bjok_ELo.js.map} +1 -1
  9. package/dist/{computer-connection-review-B6Ugk2EF.js → computer-connection-review-EUXp_Wi8.js} +2 -2
  10. package/dist/{computer-connection-review-B6Ugk2EF.js.map → computer-connection-review-EUXp_Wi8.js.map} +1 -1
  11. package/dist/{computer-disconnect-D6KKrGlt.js → computer-disconnect-BkFLO8pE.js} +3 -3
  12. package/dist/{computer-disconnect-D6KKrGlt.js.map → computer-disconnect-BkFLO8pE.js.map} +1 -1
  13. package/dist/{computer-setup-continuation-M-93Wtan.js → computer-setup-continuation-twvv8WGB.js} +3 -3
  14. package/dist/{computer-setup-continuation-M-93Wtan.js.map → computer-setup-continuation-twvv8WGB.js.map} +1 -1
  15. package/dist/{daemon-device-id-esUdfenn.js → daemon-device-id-B-iuoFzM.js} +32 -2
  16. package/dist/daemon-device-id-B-iuoFzM.js.map +1 -0
  17. package/dist/{daemon-lifecycle-journal-YJs8sCNg.js → daemon-lifecycle-journal-ywEIaUn3.js} +2 -2
  18. package/dist/{daemon-lifecycle-journal-YJs8sCNg.js.map → daemon-lifecycle-journal-ywEIaUn3.js.map} +1 -1
  19. package/dist/{daemon-service-runtime-DZ_032oj.js → daemon-service-runtime-Dg8V-t-u.js} +2 -2
  20. package/dist/{daemon-service-runtime-DZ_032oj.js.map → daemon-service-runtime-Dg8V-t-u.js.map} +1 -1
  21. package/dist/{dispatch-owned-runtime-BqSvsAjN.js → dispatch-owned-runtime-DlpQwB6N.js} +3 -3
  22. package/dist/{dispatch-owned-runtime-BqSvsAjN.js.map → dispatch-owned-runtime-DlpQwB6N.js.map} +1 -1
  23. package/dist/{dist-lfiZbuqV.js → dist-B6YM6pO6.js} +13 -13
  24. package/dist/{dist-ChSkwbjI.js → dist-W42Tu_IN.js} +2 -2
  25. package/dist/{dual-view-guide-catalog-C9aFCiSE.js → dual-view-guide-catalog-DE3NLJFV.js} +2 -2
  26. package/dist/{dual-view-guide-catalog-C9aFCiSE.js.map → dual-view-guide-catalog-DE3NLJFV.js.map} +1 -1
  27. package/dist/{entry-BnsP9JAM.js → entry-CVzIpV2o.js} +5 -5
  28. package/dist/{entry-BnsP9JAM.js.map → entry-CVzIpV2o.js.map} +1 -1
  29. package/dist/{installation-inventory-hq8m9ORg.js → installation-inventory-C0tUL2nW.js} +3 -3
  30. package/dist/{installation-inventory-hq8m9ORg.js.map → installation-inventory-C0tUL2nW.js.map} +1 -1
  31. package/dist/{installer-DzxFdbnD.js → installer-BDOyjY1v.js} +2 -2
  32. package/dist/{installer-DzxFdbnD.js.map → installer-BDOyjY1v.js.map} +1 -1
  33. package/dist/{meta-api-BymC6Zst.js → meta-api-tolnQVpU.js} +3 -3
  34. package/dist/{meta-api-BymC6Zst.js.map → meta-api-tolnQVpU.js.map} +1 -1
  35. package/dist/{openmeld-YyY3x2Gv.js → openmeld-ClgSnNPJ.js} +23 -23
  36. package/dist/{openmeld-YyY3x2Gv.js.map → openmeld-ClgSnNPJ.js.map} +1 -1
  37. package/dist/{openmeld-maintenance-worker-BiziGPdh.js → openmeld-maintenance-worker-Btj47phf.js} +9 -9
  38. package/dist/{openmeld-maintenance-worker-BiziGPdh.js.map → openmeld-maintenance-worker-Btj47phf.js.map} +1 -1
  39. package/dist/{openmeld-tools-update-coordinator-DCzOm9qr.js → openmeld-tools-update-coordinator-C3W6sFnm.js} +5 -5
  40. package/dist/{openmeld-tools-update-coordinator-DCzOm9qr.js.map → openmeld-tools-update-coordinator-C3W6sFnm.js.map} +1 -1
  41. package/dist/openmeld.js +5 -5
  42. package/dist/{prepare-provider-runtime-BnzroQaJ.js → prepare-provider-runtime-CQ7ZJMG8.js} +6 -3
  43. package/dist/{prepare-provider-runtime-BnzroQaJ.js.map → prepare-provider-runtime-CQ7ZJMG8.js.map} +1 -1
  44. package/dist/{prepare-session-executor-CDA2_-ZD.js → prepare-session-executor-Cum_2pFY.js} +12 -12
  45. package/dist/{prepare-session-executor-CDA2_-ZD.js.map → prepare-session-executor-Cum_2pFY.js.map} +1 -1
  46. package/dist/{process-channel-DkFUtjSM.js → process-channel-Dx1KqiZj.js} +2 -2
  47. package/dist/{process-channel-DkFUtjSM.js.map → process-channel-Dx1KqiZj.js.map} +1 -1
  48. package/dist/{runtime-agent-controller-reporting-submission-DoS9pSCE.js → runtime-agent-controller-reporting-submission-BgAI8B4L.js} +4 -4
  49. package/dist/{runtime-agent-controller-reporting-submission-DoS9pSCE.js.map → runtime-agent-controller-reporting-submission-BgAI8B4L.js.map} +1 -1
  50. package/dist/{runtime-B5tB_LmO.js → runtime-ogScfw4m.js} +22 -16
  51. package/dist/{runtime-B5tB_LmO.js.map → runtime-ogScfw4m.js.map} +1 -1
  52. package/dist/{service-BrVsNzfj.js → service-CML_ZTQ7.js} +135 -55
  53. package/dist/service-CML_ZTQ7.js.map +1 -0
  54. package/dist/{service-account-control-11SOgZGs.js → service-account-control-Bkgjt8Hs.js} +5 -5
  55. package/dist/{service-account-control-11SOgZGs.js.map → service-account-control-Bkgjt8Hs.js.map} +1 -1
  56. package/dist/{service-control-capabilities-2ubvfkoo.js → service-control-capabilities-Bvhzddzv.js} +2 -2
  57. package/dist/{service-control-capabilities-2ubvfkoo.js.map → service-control-capabilities-Bvhzddzv.js.map} +1 -1
  58. package/dist/{service-control-capabilities-DgrNCUxS.js → service-control-capabilities-CUfHlN2t.js} +1 -1
  59. package/dist/{state-BvUx6rev.js → state-DI3VCm3Z.js} +2 -2
  60. package/dist/{state-BvUx6rev.js.map → state-DI3VCm3Z.js.map} +1 -1
  61. package/dist/{updates-api-DPoJOTdk.js → updates-api-C0n06BJr.js} +5 -5
  62. package/dist/{updates-api-DPoJOTdk.js.map → updates-api-C0n06BJr.js.map} +1 -1
  63. package/dist/upgrade-DVlicVyI.js +3 -0
  64. package/dist/{upgrade-DAKyvk3S.js → upgrade-wV53HJsz.js} +5 -5
  65. package/dist/{upgrade-DAKyvk3S.js.map → upgrade-wV53HJsz.js.map} +1 -1
  66. package/dist/windows/openmeld-windows-process.exe +0 -0
  67. package/package.json +7 -7
  68. package/dist/daemon-device-id-esUdfenn.js.map +0 -1
  69. package/dist/service-BrVsNzfj.js.map +0 -1
  70. package/dist/upgrade-ch0Td9W0.js +0 -3
@@ -6,19 +6,19 @@ import { r as resolveAuthBaseUrl } from "./auth-url-CzfXOINs.js";
6
6
  import { lt as daemonServiceLaneSchema } from "./dist-CfBtqP8H.js";
7
7
  import { tt as sanitizeDispatchErrorSummary } from "./task-result-CWH3TdDu.js";
8
8
  import { Db as COMPUTER_POWER_CAPABILITY_HEADER, El as SESSION_HISTORY_CAPABILITY_HEADER, En as createServiceConnectionEvidenceApi, Ja as BETTER_AUTH_DEVICE_AUTHORIZATION_GRANT_TYPE, Ll as sessionHistoryRequestFrameSchema, Ol as SESSION_HISTORY_RUNTIME_CAPABILITY, Pl as sessionHistoryPolicySchema, Py as localProjectControlDaemonFrameSchema, Ry as localProjectControlDiscoverProjectsResponseSchema, Tg as serviceConnectionEvidenceJournalSchema, Xa as betterAuthDeviceAuthorizationCodeRequestSchema, Za as betterAuthDeviceAuthorizationCodeResponseSchema, eo as betterAuthDeviceAuthorizationErrorResponseSchema, fb as computerFileAccessDaemonFrameSchema, io as betterAuthSessionSnapshotResponseSchema, kl as sessionHistoryAuditSchema, lb as COMPUTER_FILE_ACCESS_RUNTIME_CAPABILITY, no as betterAuthDeviceAuthorizationTokenRequestSchema, ro as betterAuthDeviceAuthorizationTokenResponseSchema, ub as OPENMELD_RUNTIME_CAPABILITIES_HEADER, ur as DAEMON_STREAM_KEEPALIVE_PING, wg as serviceConnectionEvidenceEventSchema, zl as sessionHistoryResultFrameSchema } from "./dist-B08nRCGz.js";
9
- import { $ as bindProject, At as listAgentTargetStates, C as syncDaemonRouteCatalogState, G as resolveConfiguredProfileWorkspacePathForAccount, H as readProfileWorkspaceConfigForAccount, I as ensureOpenMeldManagedProfileWorkspace, Jn as resolveInstalledCodexLaunchCandidates, K as setCustomProfileWorkspace, Kr as DaemonServiceRunError, Kt as resolveRegistryRuntimeAdapterCapabilitySnapshot, Q as ProjectBindingStoreUpdateRequiredError, S as summarizeSkippedDaemonProfiles, St as emitReconcileStartedEvidence, U as readSavedProfileWorkspaceForAccount, Z as ProjectBindingOperationError, b as createRouteCatalogFromMutableState, bt as emitDriftDetectedEvidence, ct as removeProjectConnection, dn as MIN_HEARTBEAT_INTERVAL_MS, dt as setDefaultProjectConnection, fn as applyAcceptedLeases, gn as resolveCatalogSyncIntervalMs, hn as resolveAdaptiveHeartbeatIntervalMs, ht as resolveLocalProjectConnectionForPath, it as listProjectConnectionsWithStatus, ln as ADAPTIVE_HEARTBEAT_JITTER_RATIO, mn as pruneStaleLeases, mt as isProjectConnectionReadableByOwner, pn as applyIntervalJitterMs$1, rt as listProjectBindings, sn as resolveRouteRegistrationReconcileDecision, st as removeMissingProjectConnections, un as MAX_HEARTBEAT_INTERVAL_MS, xt as emitReconcileCompletedEvidence, y as createMutableRouteCatalogState, yt as syncDeviceRuntimeStateProjection } from "./prepare-provider-runtime-BnzroQaJ.js";
9
+ import { $ as bindProject, At as listAgentTargetStates, C as syncDaemonRouteCatalogState, G as resolveConfiguredProfileWorkspacePathForAccount, H as readProfileWorkspaceConfigForAccount, I as ensureOpenMeldManagedProfileWorkspace, Jn as resolveInstalledCodexLaunchCandidates, K as setCustomProfileWorkspace, Kr as DaemonServiceRunError, Kt as resolveRegistryRuntimeAdapterCapabilitySnapshot, Q as ProjectBindingStoreUpdateRequiredError, S as summarizeSkippedDaemonProfiles, St as emitReconcileStartedEvidence, U as readSavedProfileWorkspaceForAccount, Z as ProjectBindingOperationError, b as createRouteCatalogFromMutableState, bt as emitDriftDetectedEvidence, ct as removeProjectConnection, dn as MIN_HEARTBEAT_INTERVAL_MS, dt as setDefaultProjectConnection, fn as applyAcceptedLeases, gn as resolveCatalogSyncIntervalMs, hn as resolveAdaptiveHeartbeatIntervalMs, ht as resolveLocalProjectConnectionForPath, it as listProjectConnectionsWithStatus, ln as ADAPTIVE_HEARTBEAT_JITTER_RATIO, mn as pruneStaleLeases, mt as isProjectConnectionReadableByOwner, pn as applyIntervalJitterMs$1, rt as listProjectBindings, sn as resolveRouteRegistrationReconcileDecision, st as removeMissingProjectConnections, un as MAX_HEARTBEAT_INTERVAL_MS, xt as emitReconcileCompletedEvidence, y as createMutableRouteCatalogState, yt as syncDeviceRuntimeStateProjection } from "./prepare-provider-runtime-CQ7ZJMG8.js";
10
10
  import { $ as runtimeTransportOpenMeldToolsControlFramePayloadSchema, Ca as localFolderPickerHelperProtocolResultSchema, J as runtimeTransportLocalAgentControlRefreshCatalogFramePayloadSchema, K as runtimeTransportLocalAgentControlManageProfileFoldersFramePayloadSchema, X as runtimeTransportLocalAgentControlSetProfileWorkspaceFramePayloadSchema, Xn as SPACE_WORK_HANDOFF_CAPABILITY_HEADER, _a as LOCAL_FOLDER_PICKER_RUNTIME_CAPABILITY, ba as localFolderPickerDaemonFrameSchema, cr as OPENMELD_COMPUTER_CARE_HEADER, ct as runtimeTransportRouteCatalogChangedFramePayloadSchema, et as runtimeTransportOpenMeldToolsControlResultFramePayloadSchema, f as localWakeRouteWorkingFolderObservationSchema, i as OPENMELD_EXECUTION_ADMISSION_HEADER, ia as OPENMELD_REASONING_STREAM_HEADER, nt as runtimeTransportRegisterSessionRequestSchema, q as runtimeTransportLocalAgentControlReadProfileWorkspaceFramePayloadSchema, r as OPENMELD_ADMISSION_EVIDENCE_HEADER, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, va as OPENMELD_LOCAL_FOLDER_PICKER_CAPABILITY_HEADER, wa as localFolderPickerHelperResultSchema, z as runtimeTransportHeartbeatRequestSchema } from "./runtime-transport-DNkqgRhX.js";
11
11
  import { a as formatLocalSetupActionLabel, i as formatLocalSetupActionDescription, n as formatLocalComponentsSummaryDescription, o as installedLocalComponentsSnapshotSchema, r as formatLocalComponentsSummaryLabel } from "./local-components-DlEpUgN3.js";
12
12
  import { c as resolveCliBinaryPlatform } from "./cli-binary-manifest-t_TXQ6-t.js";
13
+ import { A as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS, F as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS, I as REGISTER_RESPONSE_TIMEOUT_MS, L as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS, M as HEARTBEAT_RESPONSE_TIMEOUT_MS, N as MAX_RECONNECT_DELAY_MS, O as DAEMON_STREAM_CONNECT_TIMEOUT_MS, P as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS, R as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS, S as CONTROLLED_SHUTDOWN_REQUEST_TIMEOUT_MS, T as DAEMON_RUNTIME_CONTRACT_EPOCH, b as CATALOG_SYNC_RETRY_INTERVAL_MS, c as logComputerControlStage, d as normalizeOptionalText$2, f as normalizeText$1, i as resolvePreferredDaemonDeviceId, j as DEFAULT_RECONNECT_DELAY_MS, k as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS, l as normalizeHeartbeatIntervalMs, n as ensureDaemonRuntimePaths, p as nowIsoString, r as resolveDaemonDeviceId, s as emitRunLine, v as toErrorMessage$6, w as CONTROLLED_SHUTDOWN_SOCKET_CLOSE_TIMEOUT_MS, x as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS, y as warnDaemonEvent, z as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS } from "./daemon-device-id-B-iuoFzM.js";
13
14
  import { d as openMeldDaemonControlPlaneRequestSchema, f as openMeldDaemonControlPlaneResponseSchema } from "./control-plane-CDbk-45J.js";
14
- import { A as DEFAULT_RECONNECT_DELAY_MS, 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, R as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS, _ as toErrorMessage$6, b as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS, c as normalizeHeartbeatIntervalMs, d as normalizeText$1, f as nowIsoString, i as resolvePreferredDaemonDeviceId, j as HEARTBEAT_RESPONSE_TIMEOUT_MS, k as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS, n as ensureDaemonRuntimePaths, r as resolveDaemonDeviceId, s as emitRunLine, u as normalizeOptionalText$2, 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-esUdfenn.js";
15
- import { _ as localExecutionInputFrameSchema, b as localExecutionInputResponseSchema, h as LOCAL_EXECUTION_INPUT_CAPABILITY_HEADER, m as serviceExecutionHostSnapshotSchema, n as createExecutionHostClient, t as ExecutionHostError, u as serviceExecutionHostMethods } from "./channel--QXaQfMz.js";
16
- import { m as hashBundledSkillAssets, p as computeDirectoryContentHash, u as loadSelectedSkillAssets } from "./state-BvUx6rev.js";
17
- import { $ as resolveNextRuntimeAgentControllerReportSyncAtMs, Ln as cliJsonOutputEnvelopeSchema, V as buildRepositoryFingerprint, a as createCodexJsonRpcClient, at as updateComputerFileAccessPolicy, c as sendDaemonFrame, et as emitDaemonDispatchJournalEvent, it as resolveComputerFileAccessStorePath, l as ProfileFolderOperationError, n as assertDispatchOwnedRuntimeServiceMutationAllowed, nt as ComputerFileAccessStoreError, o as handleDaemonTransportFrame, ot as isSameOrDescendantPath, p as collectObservedSessionWorkingDirectories, rt as readComputerFileAccessPolicy, s as parseDaemonFrame, u as applyProfileFolderOperation, w as resolveOpenCodeDatabasePath, x as queryOpenCodeReadOnly, z as createServiceGitEnvironment } from "./dispatch-owned-runtime-BqSvsAjN.js";
18
- 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-DZ_032oj.js";
15
+ import { _ as localExecutionInputFrameSchema, b as localExecutionInputResponseSchema, h as LOCAL_EXECUTION_INPUT_CAPABILITY_HEADER, m as serviceExecutionHostSnapshotSchema, n as createExecutionHostClient, t as ExecutionHostError, u as serviceExecutionHostMethods } from "./channel-DfaHRitM.js";
16
+ import { m as hashBundledSkillAssets, p as computeDirectoryContentHash, u as loadSelectedSkillAssets } from "./state-DI3VCm3Z.js";
17
+ import { $ as resolveNextRuntimeAgentControllerReportSyncAtMs, Ln as cliJsonOutputEnvelopeSchema, V as buildRepositoryFingerprint, a as createCodexJsonRpcClient, at as updateComputerFileAccessPolicy, c as sendDaemonFrame, et as emitDaemonDispatchJournalEvent, it as resolveComputerFileAccessStorePath, l as ProfileFolderOperationError, n as assertDispatchOwnedRuntimeServiceMutationAllowed, nt as ComputerFileAccessStoreError, o as handleDaemonTransportFrame, ot as isSameOrDescendantPath, p as collectObservedSessionWorkingDirectories, rt as readComputerFileAccessPolicy, s as parseDaemonFrame, u as applyProfileFolderOperation, w as resolveOpenCodeDatabasePath, x as queryOpenCodeReadOnly, z as createServiceGitEnvironment } from "./dispatch-owned-runtime-DlpQwB6N.js";
18
+ 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-Dg8V-t-u.js";
19
19
  import { i as writeDaemonRuntimeLease, r as readDaemonRuntimeLease } from "./daemon-runtime-lease-BMT2SIW9.js";
20
20
  import { a as readPendingDaemonServiceUpdate } from "./daemon-service-update-state-BclTmkAC.js";
21
- import { A as resolveDaemonStatusSnapshot, B as formatDaemonServiceRefreshReliabilityMessage, Bt as classifyDaemonServiceRunStartability, C as isSystemServiceStartupTimeoutError, D as captureDaemonServiceEvidence, E as startDaemonSystemServiceWithAutoRepair, Et as resolveCurrentDaemonExpectedVersion, F as buildDaemonServiceRefreshNextStep, G as buildDaemonServiceDependencyDetails, Ht as ensureDaemonSystemServiceCommandFiles, I as buildDaemonServiceRefreshPromptMessage, It as DAEMON_SERVICE_AUTO_HEAL_ANOMALIES, J as buildDaemonServiceDependencySummary, K as buildDaemonServiceDependencyMeaning, Lt as DAEMON_SERVICE_FULL_ALIGNMENT_ANOMALIES, M as resolveDaemonStatusAuthenticationAttention, Mt as buildDaemonServiceTargetSpec, N as resolveServiceReadiness, Nt as resolveDaemonServiceAlignmentDecision, O as captureDaemonServiceEvidenceBestEffort, Pt as isVersionDowngrade, R as buildDaemonServiceStatusReadOnlyDetail, Rt as DAEMON_SERVICE_REPAIR_ANOMALIES, S as isDaemonInventoryRunningAndStartReady$1, T as waitForSystemServiceStartup$1, Tt as readDaemonRuntimeContractRepairReport, U as clearDaemonStartFailureState, Ut as resolveInstalledDaemonSystemServiceCommandSpec, V as formatDaemonServiceUpdateRequiredMessage, Vt as classifyDaemonServiceWakeability, W as writeDaemonStartFailureState, X as resolveDaemonServiceDependencyDiagnostics, Y as buildDaemonServiceDependencyTitle, _ as runDaemonServiceLifecycle, _t as hasActiveDaemonOwners, a as resolveServiceUpdateUrgency, b as startDaemonServiceUpdateWorker, bt as resolveStoppedContractWriteBlockedReason, c as readCurrentLocalRuntimeReplyReadiness, d as assessCliUpdate, g as DaemonServiceLifecycleDrainTimeoutError, gt as formatDaemonOwnerSummaryLabel, h as scheduleDaemonServiceUpdate, ht as buildDaemonOwnerSnapshotFromObservedState, i as writeOpenMeldToolsMaintenancePolicy, j as resolveDaemonStatusAttention, jt as writeDaemonServiceContract, k as formatDaemonFailureContextText, mt as inspectDaemonServiceInventory, n as readOpenMeldToolsMaintenancePolicy, o as assessServerRequiredVersion, p as readOpenMeldToolsUpdateContextFromEnv, pt as resolveLocalServiceDemand, q as buildDaemonServiceDependencyNextStep, r as resolveOpenMeldToolsMaintenanceProjection, s as describeServerRequiredVersionUnavailableReason, t as createOpenMeldToolsUpdateCoordinator, v as ensureDaemonServiceMaintenanceInstalled, vt as readCurrentDaemonOwnerSnapshot, w as resolveSystemServiceStartupWaitMs, wt as ensureDaemonRuntimeContractState, x as uninstallDaemonServiceUpdateWorker, xt as summarizeDaemonOwnerSnapshot, yt as resolveDaemonStopStrategy, z as buildDaemonServiceUpdateRequiredNextStep, zt as DAEMON_SERVICE_WAKEABILITY_ADVISORY_ANOMALIES } from "./openmeld-tools-update-coordinator-DCzOm9qr.js";
21
+ import { A as resolveDaemonStatusSnapshot, B as formatDaemonServiceRefreshReliabilityMessage, Bt as classifyDaemonServiceRunStartability, C as isSystemServiceStartupTimeoutError, D as captureDaemonServiceEvidence, E as startDaemonSystemServiceWithAutoRepair, Et as resolveCurrentDaemonExpectedVersion, F as buildDaemonServiceRefreshNextStep, G as buildDaemonServiceDependencyDetails, Ht as ensureDaemonSystemServiceCommandFiles, I as buildDaemonServiceRefreshPromptMessage, It as DAEMON_SERVICE_AUTO_HEAL_ANOMALIES, J as buildDaemonServiceDependencySummary, K as buildDaemonServiceDependencyMeaning, Lt as DAEMON_SERVICE_FULL_ALIGNMENT_ANOMALIES, M as resolveDaemonStatusAuthenticationAttention, Mt as buildDaemonServiceTargetSpec, N as resolveServiceReadiness, Nt as resolveDaemonServiceAlignmentDecision, O as captureDaemonServiceEvidenceBestEffort, Pt as isVersionDowngrade, R as buildDaemonServiceStatusReadOnlyDetail, Rt as DAEMON_SERVICE_REPAIR_ANOMALIES, S as isDaemonInventoryRunningAndStartReady$1, T as waitForSystemServiceStartup$1, Tt as readDaemonRuntimeContractRepairReport, U as clearDaemonStartFailureState, Ut as resolveInstalledDaemonSystemServiceCommandSpec, V as formatDaemonServiceUpdateRequiredMessage, Vt as classifyDaemonServiceWakeability, W as writeDaemonStartFailureState, X as resolveDaemonServiceDependencyDiagnostics, Y as buildDaemonServiceDependencyTitle, _ as runDaemonServiceLifecycle, _t as hasActiveDaemonOwners, a as resolveServiceUpdateUrgency, b as startDaemonServiceUpdateWorker, bt as resolveStoppedContractWriteBlockedReason, c as readCurrentLocalRuntimeReplyReadiness, d as assessCliUpdate, g as DaemonServiceLifecycleDrainTimeoutError, gt as formatDaemonOwnerSummaryLabel, h as scheduleDaemonServiceUpdate, ht as buildDaemonOwnerSnapshotFromObservedState, i as writeOpenMeldToolsMaintenancePolicy, j as resolveDaemonStatusAttention, jt as writeDaemonServiceContract, k as formatDaemonFailureContextText, mt as inspectDaemonServiceInventory, n as readOpenMeldToolsMaintenancePolicy, o as assessServerRequiredVersion, p as readOpenMeldToolsUpdateContextFromEnv, pt as resolveLocalServiceDemand, q as buildDaemonServiceDependencyNextStep, r as resolveOpenMeldToolsMaintenanceProjection, s as describeServerRequiredVersionUnavailableReason, t as createOpenMeldToolsUpdateCoordinator, v as ensureDaemonServiceMaintenanceInstalled, vt as readCurrentDaemonOwnerSnapshot, w as resolveSystemServiceStartupWaitMs, wt as ensureDaemonRuntimeContractState, x as uninstallDaemonServiceUpdateWorker, xt as summarizeDaemonOwnerSnapshot, yt as resolveDaemonStopStrategy, z as buildDaemonServiceUpdateRequiredNextStep, zt as DAEMON_SERVICE_WAKEABILITY_ADVISORY_ANOMALIES } from "./openmeld-tools-update-coordinator-C3W6sFnm.js";
22
22
  import { E as withAdmittedServiceSession, S as recordInterruptedComputerAuthSessionRecoveryFailure, a as beginAuthSessionTransition, c as completeInterruptedComputerAuthSessionRecovery, ct as formatOpenMeldCliCommands, d as getAuthSessionState, g as markInterruptedComputerAuthSessionRecovery, i as assertAuthSessionMutationAvailable, k as ServiceAccountAdmissionError, m as hasInterruptedComputerAuthSessionTransition, n as AuthSessionRecoveryInProgressError, o as buildStoredAuthSessionIdentity, ot as formatInlineOpenMeldCliCommands, p as getInterruptedComputerAuthSessionRecovery, s as clearAuthSession, st as formatOpenMeldCliCommand, ut as formatOpenMeldCliTextBlock, v as onAuthSessionCredentialAvailable, w as setAuthSession, y as onAuthSessionCredentialObservation } from "./auth-session-GYsWoDuJ.js";
23
23
  import { D as createServiceSpawnPendingIssue, S as resolveOpenMeldLaneDescriptor, a as isOpenMeldLockError, d as resolveOpenMeldOrphanedLockIssue, j as formatLocalMachineIssueMessage, w as assessLocalMachineFailure } from "./lock-B0YzvcUu.js";
24
24
  import { i as readProcessStartIdentity, n as isPreciseProcessStartIdentity, t as CURRENT_PROCESS_START_IDENTITY } from "./process-identity-DsKKbftl.js";
@@ -34,16 +34,16 @@ import { i as readDaemonServiceContract, n as isDaemonServiceContractIdentityReu
34
34
  import { t as resolveOpenMeldEnvironmentTarget } from "./openmeld-environment-target-BOA_c8yO.js";
35
35
  import { t as admitServiceAccountStop } from "./service-account-authorization-DbbHAoMV.js";
36
36
  import { i as requestLocalDaemonShutdown, r as requestLocalDaemonServiceUpdateReadiness, s as sendLocalDaemonControlPlaneRequest, t as LocalDaemonControlPlaneClientError } from "./client-BPUPVl9o.js";
37
- import { 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 } from "./daemon-lifecycle-journal-YJs8sCNg.js";
37
+ import { 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 } from "./daemon-lifecycle-journal-ywEIaUn3.js";
38
38
  import { r as readWindowsManagedCliInstallation } from "./windows-managed-install-BVlswqjA.js";
39
39
  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-CSD613gh.js";
40
- import { P as getCommandEntryContract, Z as validateDaemonControlTargetInput, at as buildAgentOverviewFromContract, t as createAuthLoginGuideError } from "./dual-view-guide-catalog-C9aFCiSE.js";
40
+ import { P as getCommandEntryContract, Z as validateDaemonControlTargetInput, at as buildAgentOverviewFromContract, t as createAuthLoginGuideError } from "./dual-view-guide-catalog-DE3NLJFV.js";
41
41
  import { a as formatDaemonServiceDowngradeBlockedRecommendation, d as formatDaemonServiceMissingStatus, f as getDaemonDowngradeBlockedTitle, i as formatDaemonInstallFailedMessage, l as formatDaemonServiceMissingRunStepOne, m as canUseInteractivePrompts, n as resolveElapsedTimeMs, o as formatDaemonServiceMissingAction, p as runDaemonInstallDecisionPrompt, r as formatDaemonDowngradeBlockedNextStep, s as formatDaemonServiceMissingMeaning, t as formatElapsedTime, u as formatDaemonServiceMissingRunStepTwo } from "./elapsed-time-FUf-2Hna.js";
42
42
  import { a as readPendingOpenMeldToolsUpdateAttempt } from "./openmeld-tools-update-attempt-state-D8oDuOp9.js";
43
43
  import { i as resolveOpenMeldToolsUpdateOperationProjection, n as waitForExternalOpenMeldToolsUpdate, r as waitForOpenMeldToolsUpdateCompletion, t as resolveExternalOpenMeldToolsUpdate } from "./openmeld-tools-update-join-CDWWs9KY.js";
44
44
  import { t as createSetupUpdateObserver } from "./setup-update-progress-pq_ZnoqB.js";
45
- import { t as childExecutionHostChannel } from "./process-channel-DkFUtjSM.js";
46
- import { n as collectSkillsReadinessSnapshot } from "./installation-inventory-hq8m9ORg.js";
45
+ import { t as childExecutionHostChannel } from "./process-channel-Dx1KqiZj.js";
46
+ import { n as collectSkillsReadinessSnapshot } from "./installation-inventory-C0tUL2nW.js";
47
47
  import { createHash, randomUUID } from "node:crypto";
48
48
  import { homedir } from "node:os";
49
49
  import { delimiter, dirname, isAbsolute, join, resolve } from "node:path";
@@ -5967,7 +5967,11 @@ function createExecutionHostSocketLink(input) {
5967
5967
  const stopEvents = input.host.onEvent((event) => {
5968
5968
  if (closed) return;
5969
5969
  if (event.type === "frame") {
5970
- if (event.connectionGeneration === generation) input.socket.send(JSON.stringify(event.frame));
5970
+ if (event.connectionGeneration === generation) {
5971
+ logComputerControlStage(event.frame, "result_send_started", { connectionGeneration: generation });
5972
+ input.socket.send(JSON.stringify(event.frame));
5973
+ logComputerControlStage(event.frame, "result_send_returned", { connectionGeneration: generation });
5974
+ } else logComputerControlStage(event.frame, "result_stale_generation", { connectionGeneration: event.connectionGeneration });
5971
5975
  } else if (event.type === "authentication_failure") {
5972
5976
  if (event.connectionGeneration === null || event.connectionGeneration === generation) input.onAuthenticationFailure(event.failure);
5973
5977
  else warnDaemonEvent("[openmeld.runtime_reporting.auth_recovery_ignored]", {
@@ -6058,20 +6062,42 @@ function createExecutionHostSocketLink(input) {
6058
6062
  ...frame
6059
6063
  }
6060
6064
  });
6061
- if (!request.success) return false;
6065
+ if (!request.success) {
6066
+ logComputerControlStage(frame, "host_frame_invalid", { connectionGeneration: generation });
6067
+ return false;
6068
+ }
6062
6069
  if (closed || generation === null || queuedFrames >= 60) {
6070
+ logComputerControlStage(frame, "host_forward_unavailable", {
6071
+ connectionGeneration: generation,
6072
+ queuedFrames,
6073
+ closed
6074
+ });
6063
6075
  input.onError(new ExecutionHostError("host.busy", "Host forwarding is not available; the source retains delivery ownership."));
6064
6076
  return true;
6065
6077
  }
6066
6078
  queuedFrames += 1;
6067
6079
  const expectedGeneration = generation;
6080
+ logComputerControlStage(frame, "waiting_for_host_configuration", {
6081
+ connectionGeneration: expectedGeneration,
6082
+ queuedFrames
6083
+ });
6068
6084
  configuration.then(async () => {
6069
- if (closed || generation !== expectedGeneration) return;
6085
+ if (closed || generation !== expectedGeneration) {
6086
+ logComputerControlStage(frame, "host_connection_replaced", { connectionGeneration: expectedGeneration });
6087
+ return;
6088
+ }
6089
+ logComputerControlStage(frame, "host_call_started", { connectionGeneration: expectedGeneration });
6070
6090
  await input.host.call("handleFrame", {
6071
6091
  ...request.data,
6072
6092
  connectionGeneration: expectedGeneration
6073
6093
  });
6074
- }).catch(input.onError).finally(() => {
6094
+ }).catch((error) => {
6095
+ logComputerControlStage(frame, "host_forward_failed", {
6096
+ connectionGeneration: expectedGeneration,
6097
+ reasonCode: admissionDetailCode(error, "host.forward_failed")
6098
+ });
6099
+ input.onError(error);
6100
+ }).finally(() => {
6075
6101
  queuedFrames -= 1;
6076
6102
  });
6077
6103
  return true;
@@ -8143,7 +8169,7 @@ async function runDaemonSocketSession(input) {
8143
8169
  let closeReason = "closed";
8144
8170
  const socketConnectedAtMs = Date.now();
8145
8171
  let heartbeatInFlight = false;
8146
- let admissionHeartbeatPending = false;
8172
+ let pendingHeartbeatPublication = null;
8147
8173
  const heartbeatIdleWaiters = [];
8148
8174
  let acceptingDispatches = false;
8149
8175
  let shutdownAdmissionEvidence = null;
@@ -8245,7 +8271,7 @@ async function runDaemonSocketSession(input) {
8245
8271
  function retireTransport(error) {
8246
8272
  if (closed) return;
8247
8273
  closed = true;
8248
- admissionHeartbeatPending = false;
8274
+ pendingHeartbeatPublication = null;
8249
8275
  clearHeartbeatTimer();
8250
8276
  clearRuntimeAgentControllerReportSyncTimer();
8251
8277
  keepalive.stop();
@@ -8424,7 +8450,7 @@ async function runDaemonSocketSession(input) {
8424
8450
  return;
8425
8451
  }
8426
8452
  if (heartbeatInFlight) {
8427
- if (options.publishAdmissionAfterInFlight) admissionHeartbeatPending = true;
8453
+ if (options.publishAfterInFlight) pendingHeartbeatPublication = options.publishAfterInFlight;
8428
8454
  return;
8429
8455
  }
8430
8456
  heartbeatInFlight = true;
@@ -8433,7 +8459,7 @@ async function runDaemonSocketSession(input) {
8433
8459
  profileId,
8434
8460
  leaseEpoch
8435
8461
  })).sort((left, right) => left.profileId.localeCompare(right.profileId));
8436
- const localComponentsStatus = readSessionLocalComponentsStatus();
8462
+ const localComponentsStatus = input.localComponentsObservation.read(onLocalComponentsRefreshed);
8437
8463
  const heartbeatRequest = runtimeTransportHeartbeatRequestSchema.safeParse({
8438
8464
  v: 1,
8439
8465
  ownerUserId: input.ownerUserId,
@@ -8522,7 +8548,7 @@ async function runDaemonSocketSession(input) {
8522
8548
  startSupplementalEvidenceSyncs();
8523
8549
  } catch (error) {
8524
8550
  if (recordHeartbeatFailure(error) && !options.requireAcknowledgement) {
8525
- admissionHeartbeatPending = false;
8551
+ pendingHeartbeatPublication = null;
8526
8552
  terminateForReconnect("heartbeat_failed");
8527
8553
  return;
8528
8554
  }
@@ -8537,11 +8563,11 @@ async function runDaemonSocketSession(input) {
8537
8563
  if (options.requireAcknowledgement) throw error;
8538
8564
  } finally {
8539
8565
  heartbeatInFlight = false;
8540
- const publishPendingAdmission = admissionHeartbeatPending;
8541
- admissionHeartbeatPending = false;
8542
- if (!closed && publishPendingAdmission) scheduleHeartbeat({
8566
+ const pendingPublication = pendingHeartbeatPublication;
8567
+ pendingHeartbeatPublication = null;
8568
+ if (!closed && pendingPublication) scheduleHeartbeat({
8543
8569
  delayMs: 0,
8544
- reason: "execution_host_admission_changed"
8570
+ reason: pendingPublication
8545
8571
  });
8546
8572
  resolveHeartbeatIdleWaiters(heartbeatIdleWaiters);
8547
8573
  schedulePendingLocalExecutionEvidenceRefreshIfNeeded();
@@ -8556,8 +8582,9 @@ async function runDaemonSocketSession(input) {
8556
8582
  function scheduleHeartbeat(inputSchedule) {
8557
8583
  if (closed) return;
8558
8584
  const normalizedDelayMs = Math.max(0, Math.trunc(inputSchedule.delayMs));
8559
- if (heartbeatInFlight && inputSchedule.reason === "execution_host_admission_changed") {
8560
- admissionHeartbeatPending = true;
8585
+ const publication = inputSchedule.reason === "execution_host_admission_changed" || inputSchedule.reason === "local_components_refreshed" ? inputSchedule.reason : void 0;
8586
+ if (heartbeatInFlight && publication) {
8587
+ pendingHeartbeatPublication = publication;
8561
8588
  return;
8562
8589
  }
8563
8590
  const dueAtMs = Date.now() + normalizedDelayMs;
@@ -8568,8 +8595,8 @@ async function runDaemonSocketSession(input) {
8568
8595
  heartbeatTimer = null;
8569
8596
  heartbeatTimerDueAtMs = null;
8570
8597
  sendHeartbeat({
8571
- advanceIdleCadence: inputSchedule.reason !== "execution_host_admission_changed",
8572
- publishAdmissionAfterInFlight: inputSchedule.reason === "execution_host_admission_changed"
8598
+ advanceIdleCadence: publication === void 0,
8599
+ publishAfterInFlight: publication
8573
8600
  }).catch((error) => {
8574
8601
  emitRunLine({
8575
8602
  presenter: input.presenter,
@@ -8648,15 +8675,22 @@ async function runDaemonSocketSession(input) {
8648
8675
  let computerCareSupported = false;
8649
8676
  let executionAdmissionSupported = false;
8650
8677
  let admissionEvidenceSupported = false;
8651
- const readSessionLocalComponentsStatus = () => input.localComponentsObservation.read(() => {
8652
- if (lastHeartbeatSentAtMs !== null) scheduleHeartbeat({
8678
+ const onLocalComponentsRefreshed = () => {
8679
+ if (heartbeatInFlight || lastHeartbeatSentAtMs !== null) scheduleHeartbeat({
8653
8680
  delayMs: 0,
8654
8681
  reason: "local_components_refreshed"
8655
8682
  });
8656
- });
8683
+ };
8657
8684
  const registerDaemonSession = async (routeCatalog) => {
8658
8685
  const connectionGeneration = activeConnectionGeneration;
8659
- const localComponentsStatus = readSessionLocalComponentsStatus();
8686
+ const localComponentsStatus = input.localComponentsObservation.read(onLocalComponentsRefreshed, (detail) => {
8687
+ warnDaemonEvent("[openmeld.registration_component_status_missing]", {
8688
+ daemonSessionId: input.daemonSessionId,
8689
+ deviceId: input.deviceId,
8690
+ connectionGeneration,
8691
+ ...detail
8692
+ });
8693
+ });
8660
8694
  const registerPayload = runtimeTransportRegisterSessionRequestSchema.safeParse({
8661
8695
  v: 1,
8662
8696
  ownerUserId: input.ownerUserId,
@@ -9014,8 +9048,15 @@ async function runDaemonSocketSession(input) {
9014
9048
  });
9015
9049
  };
9016
9050
  const handleLocalAgentControlRefreshCatalogFrame = async (payload) => {
9051
+ const frame = {
9052
+ code: "daemon.local_agent_control.refresh_catalog",
9053
+ payload
9054
+ };
9055
+ const context = { connectionGeneration: activeConnectionGeneration };
9056
+ const record = (stage) => logComputerControlStage(frame, stage, context);
9017
9057
  const parsed = runtimeTransportLocalAgentControlRefreshCatalogFramePayloadSchema.safeParse(payload);
9018
9058
  if (!parsed.success) {
9059
+ record("invalid_request");
9019
9060
  emitRunLine({
9020
9061
  presenter: input.presenter,
9021
9062
  code: "daemon.run.local_agent_control_frame_invalid",
@@ -9023,7 +9064,9 @@ async function runDaemonSocketSession(input) {
9023
9064
  });
9024
9065
  return;
9025
9066
  }
9026
- const responsePayload = await applyLocalAgentControlRefreshCatalog(parsed.data.payload.reason);
9067
+ const responsePayload = await applyLocalAgentControlRefreshCatalog(parsed.data.payload.reason, record);
9068
+ if (!responsePayload.accepted) record("catalog_refresh_failed");
9069
+ record("result_send_started");
9027
9070
  sendDaemonFrame(input.socket, {
9028
9071
  code: "daemon.local_agent_control.result",
9029
9072
  payload: {
@@ -9031,6 +9074,7 @@ async function runDaemonSocketSession(input) {
9031
9074
  payload: responsePayload
9032
9075
  }
9033
9076
  });
9077
+ record("result_send_returned");
9034
9078
  };
9035
9079
  const handleLocalAgentControlReadProfileWorkspaceFrame = async (payload) => {
9036
9080
  const parsed = runtimeTransportLocalAgentControlReadProfileWorkspaceFramePayloadSchema.safeParse(payload);
@@ -9151,17 +9195,25 @@ async function runDaemonSocketSession(input) {
9151
9195
  };
9152
9196
  }
9153
9197
  };
9154
- const applyLocalAgentControlRefreshCatalog = async (reason) => {
9198
+ const applyLocalAgentControlRefreshCatalog = async (reason, record) => {
9199
+ const failStep = (stage, error) => {
9200
+ record(stage);
9201
+ throw error;
9202
+ };
9155
9203
  try {
9156
- const [result] = await Promise.all([requestRouteCatalogSync(reason), requestFreshRuntimeAgentControllerReportSync()]);
9204
+ record("catalog_refresh_started");
9205
+ const [result] = await Promise.all([requestRouteCatalogSync(reason).then((value) => {
9206
+ record(value.status === "failed" ? "route_catalog_sync_failed" : "route_catalog_sync_completed");
9207
+ return value;
9208
+ }, (error) => failStep("route_catalog_sync_failed", error)), requestFreshRuntimeAgentControllerReportSync().then(() => record("controller_report_sync_completed"), (error) => failStep("controller_report_sync_failed", error))]);
9157
9209
  const payload = projectRouteCatalogSyncPayload({
9158
9210
  knownProfileIds: input.routeCatalogState.profileIds,
9159
9211
  result
9160
9212
  });
9161
9213
  emitRunLine({
9162
9214
  presenter: input.presenter,
9163
- code: "daemon.run.local_agent_control_refresh_catalog",
9164
- text: `local agent catalog check completed (${payload.syncStatus}).`,
9215
+ code: payload.accepted ? "daemon.run.local_agent_control_refresh_catalog" : "daemon.run.local_agent_control_refresh_catalog_failed",
9216
+ text: payload.accepted ? `local agent catalog check completed (${payload.syncStatus}).` : "local agent catalog check failed.",
9165
9217
  payload: {
9166
9218
  profileCount: payload.profileIds.length,
9167
9219
  syncStatus: payload.syncStatus
@@ -9258,6 +9310,7 @@ async function runDaemonSocketSession(input) {
9258
9310
  });
9259
9311
  return;
9260
9312
  }
9313
+ logComputerControlStage(parsedFrame, "socket_received", { connectionGeneration: activeConnectionGeneration });
9261
9314
  if (parsedFrame.code === "daemon.route_catalog.changed") {
9262
9315
  const payload = runtimeTransportRouteCatalogChangedFramePayloadSchema.safeParse(parsedFrame.payload);
9263
9316
  requestLocalExecutionEvidenceRefresh({
@@ -10022,29 +10075,56 @@ function normalizeOptionalString(value) {
10022
10075
  //#region src/local-service/carrier/service-local-components-observation.ts
10023
10076
  function createServiceLocalComponentsObservation(input) {
10024
10077
  let observation = null;
10025
- let pending = null;
10078
+ let inspectionStartedAtMs = null;
10026
10079
  let onRefresh;
10027
10080
  let disposed = false;
10081
+ async function refresh() {
10082
+ try {
10083
+ observation = {
10084
+ value: await (input.inspect ?? resolveLocalComponentsStatus)(),
10085
+ observedAtMs: Date.now(),
10086
+ failed: false
10087
+ };
10088
+ if (!disposed) onRefresh?.();
10089
+ } catch (error) {
10090
+ observation = {
10091
+ value: null,
10092
+ observedAtMs: Date.now(),
10093
+ failed: true
10094
+ };
10095
+ if (!disposed) input.onError(error);
10096
+ } finally {
10097
+ inspectionStartedAtMs = null;
10098
+ }
10099
+ }
10028
10100
  return {
10029
- read(notify) {
10101
+ read(notify, onMissing) {
10030
10102
  if (disposed) return null;
10031
10103
  onRefresh = notify;
10032
- if (observation && Date.now() - observation.observedAtMs < 3e4) return observation.value;
10033
- if (!pending) pending = (input.inspect ?? resolveLocalComponentsStatus)().then((value) => {
10034
- observation = {
10035
- value,
10036
- observedAtMs: Date.now()
10037
- };
10038
- if (!disposed) onRefresh?.();
10039
- }).catch((error) => {
10040
- observation = {
10041
- value: null,
10042
- observedAtMs: Date.now()
10043
- };
10044
- if (!disposed) input.onError(error);
10045
- }).finally(() => {
10046
- pending = null;
10104
+ const now = Date.now();
10105
+ const observationAgeMs = observation ? now - observation.observedAtMs : null;
10106
+ if (observation && observationAgeMs !== null && observationAgeMs < 3e4) {
10107
+ if (!observation.value) onMissing?.({
10108
+ reason: observation.failed ? "inspection_failed" : "empty_result",
10109
+ observationAgeMs,
10110
+ inspectionAgeMs: null
10111
+ });
10112
+ return observation.value;
10113
+ }
10114
+ if (inspectionStartedAtMs !== null) onMissing?.({
10115
+ reason: "inspection_pending",
10116
+ observationAgeMs,
10117
+ inspectionAgeMs: now - inspectionStartedAtMs
10047
10118
  });
10119
+ else {
10120
+ onMissing?.({
10121
+ reason: observation ? "observation_expired" : "first_inspection",
10122
+ observationAgeMs,
10123
+ inspectionAgeMs: null
10124
+ });
10125
+ inspectionStartedAtMs = now;
10126
+ refresh();
10127
+ }
10048
10128
  return null;
10049
10129
  },
10050
10130
  dispose() {
@@ -18209,4 +18289,4 @@ function parseDaemonRunMode(rawMode) {
18209
18289
  //#endregion
18210
18290
  export { renderHumanTextErrorCard as $, resolveLocalComponentsStatus as A, runAuthMenu as B, createQuietPresenter as C, emitCliJsonEnvelope as D, shouldEmitAgentOverview as E, buildCommandAuthenticationPromptMessage as F, recoverInterruptedComputerAuthHandoff as G, exchangeOneTimeTokenAuthSession as H, ensureCommandAuthenticationOrCancel as I, runDaemonServiceParticipationGate as J, exchangeComputerAuthorizationGrant as K, evaluateCommandAuthentication as L, LocalProjectConnectionError as M, validateLocalProjectConnectionPath as N, runDaemonStartupPreflight as O, connectWebSocket as P, renderHumanErrorCard as Q, runAuthLogin as R, reconcileCliVersionView as S, createDelayedSpinner as T, emitUnusedSetupSessionCleanupWarning as U, runAuthStatus as V, formatComputerAuthCleanupFailureSuffix as W, runDaemonStartDecisionPrompt as X, resolveDaemonServiceParticipationStatus as Y, buildHumanErrorCopy as Z, formatServiceParticipationReadinessLabel as _, runDaemonBackgroundStartForDecision as a, renderTextInfoCard as at, buildProfileWorkspacePresentation as b, runDaemonInterrupt as c, isReturnKeypress as ct, runDaemonServiceDetached as d, getCurrentCommandCheckState as dt, buildAuthStatusRows as et, runDaemonSnapshot as f, isCurrentCommandCheckScopeActive as ft, runDaemonUninstall as g, SERVICE_CONNECTION_ID_QUERY_PARAMETER as gt, runDaemonTeardownStrict as h, fetchAuthUserSnapshot as ht, runDaemonAutostart as i, renderInfoCard as it, writeInstalledLocalComponentsSnapshot as j, readDaemonIncidentLogTail as k, runDaemonReinstall as l, runInteractivePrompt as lt, runDaemonStop as m, startCurrentCommandCheckScope as mt, isManagedSystemServiceBootstrapRun as n, formatActiveOrganizationLabel as nt, runDaemonCancel as o, buildUnifiedCardFrame as ot, runDaemonStatusFlow as p, resetCurrentCommandCheckState as pt, revokePreparedAuthSession as q, runDaemon as r, buildTextInfoCardLines as rt, runDaemonInstall as s, promptTextEntry as st, bestEffortStopCurrentLaneDaemonService as t, buildAuthStatusSnapshot as tt, runDaemonRunAfterEntryChecks as u, finishCurrentCommandCheckScope as ut, formatServiceRuntimeHeadline as v, emitDaemonAgentOverview as w, buildProfileWorkspaceRows as x, resolveServiceParticipationReadiness as y, runAuthLogout as z };
18211
18291
 
18212
- //# sourceMappingURL=service-BrVsNzfj.js.map
18292
+ //# sourceMappingURL=service-CML_ZTQ7.js.map