openmeld 0.3.152 → 0.3.153
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.
- package/dist/{add-me-membership-D8gJ8GVZ.js → add-me-membership-zUO4mP7J.js} +2 -2
- package/dist/{add-me-membership-D8gJ8GVZ.js.map → add-me-membership-zUO4mP7J.js.map} +1 -1
- package/dist/{api-client-foundation-D_LFUhPR.js → api-client-foundation-CLOdRX5Y.js} +3 -3
- package/dist/{api-client-foundation-D_LFUhPR.js.map → api-client-foundation-CLOdRX5Y.js.map} +1 -1
- package/dist/{auth-session-DjqQNk5F.js → auth-session-Bg4ATgGF.js} +2 -2
- package/dist/{auth-session-DjqQNk5F.js.map → auth-session-Bg4ATgGF.js.map} +1 -1
- package/dist/{command-5l6nj4IO.js → command-C5YPLwZM.js} +485 -258
- package/dist/{command-5l6nj4IO.js.map → command-C5YPLwZM.js.map} +1 -1
- package/dist/{daemon-runtime-lease-6DIprlJy.js → daemon-runtime-lease-Dqmxqrzi.js} +40 -40
- package/dist/daemon-runtime-lease-Dqmxqrzi.js.map +1 -0
- package/dist/{dist-H9F26fYn.js → dist-Bu7QFqmt.js} +24 -3
- package/dist/{dist-H9F26fYn.js.map → dist-Bu7QFqmt.js.map} +1 -1
- package/dist/openmeld.js +7 -7
- package/dist/{runtime-transport-4sib9j0_.js → runtime-transport-21JL5nu5.js} +99 -6
- package/dist/runtime-transport-21JL5nu5.js.map +1 -0
- package/package.json +2 -2
- package/dist/daemon-runtime-lease-6DIprlJy.js.map +0 -1
- package/dist/runtime-transport-4sib9j0_.js.map +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { $ as resolveOpenMeldOrphanedLockIssue, $t as systemDir, At as legacyAccountProfileSpacesDir, B as toSpaceRemoveMembersUrl, C as updateConfiguredDeviceRuntimeState, Ct as accountProfileViewPath, D as normalizeBaseUrl, Dt as deviceOpenClawProfileDir, Et as deviceOpenClawProfileBootstrapPath, Ft as openMeldManagedBinaryPath, G as acquireLock, H as toSpaceUpdatesUrl, I as toSpaceLeaveUrl, It as openMeldManagedVersionBinaryPath, J as isOpenMeldOrphanedLockError, Jt as resolveOpenMeldRootDir, Kt as resolveOpenMeldEnvPreset, L as toSpaceMembersUrl, Lt as openMeldManagedVersionDir, M as toSpaceCursorUrl, Mt as normalizeOpenMeldProfileId, N as toSpaceDeleteUrl, Nt as openMeldBackupsDir, O as toDaemonRouteObservationUrl, Ot as deviceOpenClawProfileWorkspaceDir, Pt as openMeldBinDir, R as toSpaceMetaUrl, Rt as openMeldRootDir, S as setConfiguredSkillsConfig, St as accountProfileSpaceCacheDir, T as updateConfiguredSkillsConfig, Tt as accountsDir, U as toSpaceWsUrl, Ut as resolveDefaultOpenMeldHomeDirname, W as isLoopbackHostname, Wt as resolveExplicitOpenMeldEnvPreset, Xt as runtimeLogsDir, Yt as runtimeDir, Zt as skillsDir, _ as getConfiguredViewCustomization, _n as normalizeBuiltinAgentControllerId, a as resolveBaseUrl, an as runtimeStreamingModeSchema, at as readCliContextState, bt as OPENMELD_HOME_ENV_KEY, c as resolveExplicitGatewayUrlOrThrow, cn as buildAgentControllerConversationRef, ct as writeCliContextState, d as createDefaultRuntimeAgentControllerSettings, dn as HOSTED_CENTER_AGENT_CONTROLLER_REF, en as formatLocalMachineIssueMessage, et as runWithHeldLock, f as getConfiguredDaemonDispatchLimits, fn as HOSTED_CENTER_AGENT_CONTROLLER_REF_ID, ft as assessLocalMachineFailure, g as getConfiguredSkillsConfig, gn as canonicalizeBuiltinAgentControllerRef, h as getConfiguredOpenMeldToolsMaintenance, hn as canonicalizeAgentControllerRef, i as normalizeGatewayBaseUrlOrNull, it as listCliContextStates, j as toSpaceCreateUrl, jt as normalizeAccountKey, kt as isPublishedOpenMeldHome, l as DEFAULT_RUNTIME_AGENT_TRANSPORT_MODE, ln as conversationPolicySchema, mn as buildAgentControllerRoutingKey, mt as createBackgroundExecutionBlockedIssue, nn as runtimeAgentControllerConversationIdMappingSpecSchema, o as resolveBaseUrlOrNull, on as runtimeTransportModeSchema, ot as resolveCliContext, p as getConfiguredDeviceRuntimeState, q as isOpenMeldLockError, qt as resolveOpenMeldPresetOwnedPathInput, r as normalizeGatewayBaseUrl, rn as runtimeAgentControllerLaunchContractSchema, s as resolveDefaultGatewayBaseUrl, st as resolveCliContextId, un as resolveBuiltinAgentControllerConversationKind, ut as resolveOpenMeldLaneDescriptor, v as getRuntimeConfigReadHealth, vn as normalizeKnownBuiltinAgentControllerId, vt as CURRENT_PROCESS_START_IDENTITY, wt as accountProfileWorkspacePath, x as setConfiguredOpenMeldToolsMaintenance, xt as accountProfileLocalMetaPath, y as resolveRuntimeSkillsCustomTargetId, yn as parseAgentControllerRef$1, yt as isProcessIdentityAlive, z as toSpacePasswordUrl, zt as openMeldVersionsDir } from "./base-url-CY_j4bLH.js";
|
|
4
|
-
import { $ as submitAgentControllerTaskLifecycleEventItemSchema, $t as spaceMemberDirectoryAllowedRelationsSchema, A as MAX_TEXT_LENGTH, At as submitFeedbackIssueRequestSchema, B as toErrorMessage$44, Bt as AGENT_ACTIVITY_PRESENCE_TTL_MAX_MS, C as createSpaceApi, Cn as agentControllerCollaborationModeSchema, Ct as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE, D as toStructuredApiClientFailure, Dt as profileCapabilitiesResponseSchema, E as resolveProfileSpaceHistoryGatewayHost, Et as authProfileManagedRoleSchema, F as OPENMELD_HEADER_PROFILE_ID, Ft as listCenterAgentRoutinesResponseSchema, Gt as agentActivitySnapshotResponseSchema, H as toErrorMessage$43, It as pauseCenterAgentRoutineResponseSchema, Jt as localProjectControlDiscoverProjectsResponseSchema, Kt as localProjectControlConnectionSchema, L as OPENMELD_HEADER_REQUEST_ID, Lt as resumeCenterAgentRoutineResponseSchema, M as parseIncoming$1, Mt as createCenterAgentRoutineResponseSchema, N as parseServerErrorFrame$1, Nt as deleteCenterAgentRoutineResponseSchema, O as DAEMON_STREAM_KEEPALIVE_PING, Ot as profileErrorResponseSchema, P as resolveCustomMentionAliasOverride, Pt as listCenterAgentRoutineRunsResponseSchema, Qt as spaceMemberAgentWakeAvailabilitySchema, R as OPENMELD_HEADER_SPACE_ADDRESSING_VERSION, Rt as updateCenterAgentRoutineResponseSchema, S as createRuntimeReportingApi, Sn as agentControllerPermissionModeSchema, St as organizationDirectoryResponseSchema, T as resolveAccountSpaceIndexGatewayHost, U as getSpaceUpdatesResponseSchema, V as sleep, Vt as agentActivityEventSchema, W as SPACE_DISPATCH_TRACE_PROMPT_PREVIEW_MAX_CHARS, Xt as postSpaceMembersResponseSchema, Yt as leaveSpaceResponseSchema, Zt as removeSpaceMembersResponseSchema, _t as listOrganizationSkillsResponseSchema, a as buildSpaceAttachmentDownloadPath, at as gatewayErrorEnvelopeSchema, bt as organizationSkillSummarySchema, c as createAgentProfileBindingApi, cn as observedLocalAgentSessionSchema, ct as computerFileAccessDaemonFrameSchema, d as createCurrentDeviceApi, dn as listProjectsResponseSchema, dt as modelCatalogSchema, en as spaceMemberDirectoryEntrySchema, fn as projectSchema, ft as organizationSpaceDirectoryWithMemberCountsResponseSchema, g as createOrganizationApi, gt as getOrganizationSkillResponseSchema, h as createOpenMeldApiClient, hn as openCodePermissionConfigSchema, ht as spaceMetaSchema, i as buildProfileSpaceHistoryUpsertPath, j as parseEnvelope$1, jt as submitFeedbackIssueResponseSchema, kt as organizationComputersResponseSchema, ln as archiveProjectResponseSchema, lt as computerFileAccessPolicyInputSchema, m as createLocalRuntimeExpectedRoutesApi, mn as centerAgentToolSpeakerSchema, mt as spaceCreatorSchema, n as OpenMeldApiClientInvalidResponseError, nn as spaceMemberKindSchema, o as createAccountSpaceIndexApi, on as agentActivitySessionInventoryResponseSchema, ot as COMPUTER_FILE_ACCESS_RUNTIME_CAPABILITY, p as createFetchTransport, pn as updateProjectResponseSchema, pt as resolveInitialSpaceAccessMode, qt as localProjectControlDaemonFrameSchema, r as buildProfileSpaceHistoryStatusPath, s as createAgentActivityApi, st as OPENMELD_RUNTIME_CAPABILITIES_HEADER, t as OpenMeldApiClientHttpError, tn as spaceMemberDirectorySchema, un as createProjectResponseSchema, ut as computerFileAccessPolicySchema, wn as toCompatibleSpaceAddressingRequestWireValue, wt as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, y as createProfileSpaceHistoryApi, yt as organizationSkillReleaseSummarySchema } from "./dist-
|
|
5
|
-
import { $r as
|
|
4
|
+
import { $ as submitAgentControllerTaskLifecycleEventItemSchema, $t as spaceMemberDirectoryAllowedRelationsSchema, A as MAX_TEXT_LENGTH, At as submitFeedbackIssueRequestSchema, B as toErrorMessage$44, Bt as AGENT_ACTIVITY_PRESENCE_TTL_MAX_MS, C as createSpaceApi, Cn as agentControllerCollaborationModeSchema, Ct as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE, D as toStructuredApiClientFailure, Dt as profileCapabilitiesResponseSchema, E as resolveProfileSpaceHistoryGatewayHost, Et as authProfileManagedRoleSchema, F as OPENMELD_HEADER_PROFILE_ID, Ft as listCenterAgentRoutinesResponseSchema, Gt as agentActivitySnapshotResponseSchema, H as toErrorMessage$43, It as pauseCenterAgentRoutineResponseSchema, Jt as localProjectControlDiscoverProjectsResponseSchema, Kt as localProjectControlConnectionSchema, L as OPENMELD_HEADER_REQUEST_ID, Lt as resumeCenterAgentRoutineResponseSchema, M as parseIncoming$1, Mt as createCenterAgentRoutineResponseSchema, N as parseServerErrorFrame$1, Nt as deleteCenterAgentRoutineResponseSchema, O as DAEMON_STREAM_KEEPALIVE_PING, Ot as profileErrorResponseSchema, P as resolveCustomMentionAliasOverride, Pt as listCenterAgentRoutineRunsResponseSchema, Qt as spaceMemberAgentWakeAvailabilitySchema, R as OPENMELD_HEADER_SPACE_ADDRESSING_VERSION, Rt as updateCenterAgentRoutineResponseSchema, S as createRuntimeReportingApi, Sn as agentControllerPermissionModeSchema, St as organizationDirectoryResponseSchema, T as resolveAccountSpaceIndexGatewayHost, U as getSpaceUpdatesResponseSchema, V as sleep, Vt as agentActivityEventSchema, W as SPACE_DISPATCH_TRACE_PROMPT_PREVIEW_MAX_CHARS, Xt as postSpaceMembersResponseSchema, Yt as leaveSpaceResponseSchema, Zt as removeSpaceMembersResponseSchema, _t as listOrganizationSkillsResponseSchema, a as buildSpaceAttachmentDownloadPath, at as gatewayErrorEnvelopeSchema, bt as organizationSkillSummarySchema, c as createAgentProfileBindingApi, cn as observedLocalAgentSessionSchema, ct as computerFileAccessDaemonFrameSchema, d as createCurrentDeviceApi, dn as listProjectsResponseSchema, dt as modelCatalogSchema, en as spaceMemberDirectoryEntrySchema, fn as projectSchema, ft as organizationSpaceDirectoryWithMemberCountsResponseSchema, g as createOrganizationApi, gt as getOrganizationSkillResponseSchema, h as createOpenMeldApiClient, hn as openCodePermissionConfigSchema, ht as spaceMetaSchema, i as buildProfileSpaceHistoryUpsertPath, j as parseEnvelope$1, jt as submitFeedbackIssueResponseSchema, kt as organizationComputersResponseSchema, ln as archiveProjectResponseSchema, lt as computerFileAccessPolicyInputSchema, m as createLocalRuntimeExpectedRoutesApi, mn as centerAgentToolSpeakerSchema, mt as spaceCreatorSchema, n as OpenMeldApiClientInvalidResponseError, nn as spaceMemberKindSchema, o as createAccountSpaceIndexApi, on as agentActivitySessionInventoryResponseSchema, ot as COMPUTER_FILE_ACCESS_RUNTIME_CAPABILITY, p as createFetchTransport, pn as updateProjectResponseSchema, pt as resolveInitialSpaceAccessMode, qt as localProjectControlDaemonFrameSchema, r as buildProfileSpaceHistoryStatusPath, s as createAgentActivityApi, st as OPENMELD_RUNTIME_CAPABILITIES_HEADER, t as OpenMeldApiClientHttpError, tn as spaceMemberDirectorySchema, un as createProjectResponseSchema, ut as computerFileAccessPolicySchema, wn as toCompatibleSpaceAddressingRequestWireValue, wt as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, y as createProfileSpaceHistoryApi, yt as organizationSkillReleaseSummarySchema } from "./dist-Bu7QFqmt.js";
|
|
5
|
+
import { $r as openMeldRequestContextSchema, A as runtimeTransportRegisterSessionRequestSchema, An as resolveMessageEnvelopeTargetField, Bn as agentInteractionRequestSchema, Br as normalizeSpacePasswordText, C as runtimeTransportLocalAgentControlManageInstallationFramePayloadSchema, Ci as resolveCommandAgentWorkActivity, Cr as string, Ct as sanitizeSignalTextPreview, D as runtimeTransportLookupRouteOwnerServiceEvidenceSchema, Dn as getSpaceMessageAddressingRelationSupportForTargetKind, E as runtimeTransportLocalAgentControlSetProfileWorkspaceFramePayloadSchema, En as formatCanonicalMentionLiteral, F as runtimeTransportRouteCatalogChangedFramePayloadSchema, G as openMeldDaemonTaskResultPayloadSchema, Gn as formatLocalSetupActionDescription, H as openMeldDaemonProviderAccessEvidenceSchema, Hr as resolveSingleSpaceMentionLabels, Ir as runtimeCoordinatorExecutionTokenEnvelopeSchema, J as LOCAL_FOLDER_PICKER_RUNTIME_CAPABILITY, Jn as localCliComponentUpdateProjectionSchema, Kn as formatLocalSetupActionLabel, L as runtimeTransportSubmitTaskResultRequestSchema, Lr as runtimeTransportDeliveryExecutionIdentitySchema, M as runtimeTransportRejectedProfileRegistrationSchema, Mr as parseOptionalClientMessageId, N as runtimeTransportResumeControllerConversationFramePayloadSchema, O as runtimeTransportOpenMeldToolsControlFramePayloadSchema, Or as url, P as runtimeTransportResumeControllerConversationResultFramePayloadSchema, Q as localFolderPickerHelperResultSchema, Qn as localServiceComponentUpdateProjectionSchema, Qr as openMeldProfileIdSchema, R as OPENMELD_ORIGINAL_ERROR_MAX_LENGTH, Rn as AGENT_INTERACTION_DEFAULT_TIMEOUT_MS, S as runtimeTransportLocalAgentControlInterruptFramePayloadSchema, Sr as strictObject, T as runtimeTransportLocalAgentControlSetEnabledFramePayloadSchema, Tn as collectCanonicalMentionTextFragments, U as openMeldDaemonTaskResultEnvelopeWriteSchema, Un as formatLocalComponentsSummaryDescription, Ur as resolveSpaceMentionLabels, Vn as agentInteractionResolutionSchema, W as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, Wn as formatLocalComponentsSummaryLabel, X as localFolderPickerDaemonFrameSchema, Y as OPENMELD_LOCAL_FOLDER_PICKER_CAPABILITY_HEADER, Z as localFolderPickerHelperProtocolResultSchema, Zt as spaceFileNameSchema, _ as runtimeTransportForkAgentSessionResultSchema, _i as resolvePublicAgentFailureRecovery, a as localWakeRouteWorkingFolderObservationSchema, an as openMeldDaemonControlPlaneResponseSchema, ar as openMeldToolsUpdateRequestSourceSchema, b as runtimeTransportLocalAgentControlCancelFramePayloadSchema, bt as SPACE_MEMBER_REMOVE_NOTICE_PURPOSE, c as runtimeTransportDispatchInteractionDeliveredRequestSchema, cn as providerDispatchRuntimeContextSchema, cr as boolean, d as runtimeTransportDispatchLifecycleRequestSchema, ei as MAX_PROFILE_WORKING_DIRECTORY_LENGTH, f as runtimeTransportDispatchPreviewEndRequestSchema, fi as trimmedStringFromUnknown, fr as enumFactory, g as runtimeTransportErrorCodeSchema, gi as resolvePublicAgentAvailabilityCopy, h as runtimeTransportDispatchToolActivityRequestSchema, hi as resolveMappedPublicAgentFailureReason, hr as literal, ht as CONVERSATION_CONTINUITY_WARNING_PURPOSE, i as localWakeRouteReportSchema, in as openMeldDaemonControlPlaneRequestSchema, j as runtimeTransportRegisterSessionResponseSchema, k as runtimeTransportOpenMeldToolsControlResultFramePayloadSchema, kn as normalizeMessageEnvelope, l as runtimeTransportDispatchInteractionRequestSchema, ln as conversationExecutionStateSchema, m as runtimeTransportDispatchRuntimeEvidenceRequestSchema, mr as iso, n as daemonExecutionCompatibilitySchema, ni as normalizeOptionalWorkingDirectory, nr as openMeldToolsUpdateOperationPhaseSchema, o as runtimeTransportCapabilitiesSchema, p as runtimeTransportDispatchPreviewRequestSchema, pi as MAX_TEXT_LENGTH$1, q as openMeldSpaceEgressActionSchema, qn as installedLocalComponentsSnapshotSchema, qt as resolveSpaceFileMimeType, r as daemonStreamFrameSchema, ri as openMeldRuntimeProfileIdSchema, s as runtimeTransportDeliverDispatchRequestSchema, si as profileWorkspaceModeSchema, sn as skippedDaemonProfileSchema, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, ti as agentProfileIdSchema, tr as openMeldToolsUpdateAttemptSchema, u as runtimeTransportDispatchInteractionResponseFramePayloadSchema, ur as discriminatedUnion, v as runtimeTransportHeartbeatRequestSchema, vi as sanitizeDispatchErrorSummary, w as runtimeTransportLocalAgentControlRefreshCatalogFramePayloadSchema, wn as MESSAGE_MENTION_TYPE_VALUES, x as runtimeTransportLocalAgentControlForkSessionFramePayloadSchema, xt as SPACE_MENTION_REJECT_NOTICE_PURPOSE, y as runtimeTransportHeartbeatResponseSchema, yi as shouldPreferMappedPublicAgentFailureReason, yt as SPACE_MEMBER_JOIN_NOTICE_PURPOSE, z as isOriginalErrorSafeForMessageDetails, zt as SPACE_FILE_MAX_SIZE_BYTES } from "./runtime-transport-21JL5nu5.js";
|
|
6
6
|
import { r as daemonServiceLaneSchema, t as daemonServiceContractSchema } from "./service-contract-CRyDcIIf.js";
|
|
7
|
-
import { A as
|
|
8
|
-
import { A as HEARTBEAT_RESPONSE_TIMEOUT_MS$1, B as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, C as DAEMON_RUNTIME_CONTRACT_EPOCH$1, D as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1, E as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, F as OPENCLAW_CLI_TIMEOUT_MS$1, H as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, I as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, L as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1, N as MIN_HEARTBEAT_INTERVAL_MS$2, O as DEFAULT_HEARTBEAT_INTERVAL_MS$1, R as REGISTER_RESPONSE_TIMEOUT_MS$1, S as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, T as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, V as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, a as beginAuthSessionTransition, h as setAuthSession, j as MAX_HEARTBEAT_INTERVAL_MS$2, l as getAuthSessionState, o as clearAuthSession, r as assertAuthSessionMutationAvailable, v as isBinaryDistribution, w as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, x as CATALOG_SYNC_RETRY_INTERVAL_MS$1, y as resolveOpenMeldDistribution } from "./auth-session-
|
|
9
|
-
import { a as AuthRequestCredentialError, c as buildOpenMeldRequestContextHeadersWithAuth, d as buildOpenMeldRequestContextFromProfile, f as buildOpenMeldRequestContextFromProfileIdentity, i as resolveSpaceRequestTimeoutMsForDiagnostics, l as buildRequestAuthHeaders, m as resolveAuthRequestCompatibility, n as createCliApiClientFoundation, o as buildOpenMeldProfileIdentityRequestHeadersWithAuth, p as deriveAuthBaseUrlFromGatewayUrl, r as fetchSpaceRequestWithTimeout, s as buildOpenMeldProfileRequestHeadersWithAuth, u as canAttachAuthTokenToRequest } from "./api-client-foundation-
|
|
7
|
+
import { A as daemonStatePath, B as releaseDaemonServiceLifecycleLock, C as daemonServiceLegacyExecutableWrapperPath, D as daemonServiceStableExecutableWrapperPath, E as daemonServiceStableBinaryExecutablePath, F as isDaemonServiceRuntimeHeartbeatStale, G as setDaemonServiceRuntimeState, H as resolveDaemonServiceRuntimeMetadata, I as readDaemonControlPlaneToken, J as withDaemonServiceRegistrationMutationLock, K as uninstallDaemon, L as readDaemonServiceLifecycleLockMeta, M as getDaemonRuntimeStatus, N as getDaemonStatus, O as daemonServiceStableLauncherPath, P as installDaemon, R as readDaemonServiceLifecycleLockMetaWithCleanup, S as daemonServiceExecutableWrapperPaths$1, T as daemonServiceRepairJournalPath, U as restoreDaemonInstallStateSnapshot, V as resolveDaemonControlPlaneEndpoint, W as rotateDaemonControlPlaneTokenIfExpired, X as withDaemonServiceStopLock, Y as withDaemonServiceRunLock, _ as daemonRuntimeDataPath, a as DAEMON_HEARTBEAT_STALE_MS, b as daemonRuntimeStateRootPath, c as DAEMON_SERVICE_RUNTIME_DETACHED_ENV, d as DAEMON_SERVICE_RUNTIME_SYSTEM_SERVICE_ENV, f as acquireDaemonServiceLifecycleLock, g as daemonRuntimeBundlesPath, h as daemonLifecycleJournalPath, i as writeDaemonLocalStateFile, j as ensureDaemonControlPlaneToken, k as daemonServiceUpdateWorkerBinaryExecutablePath, l as DAEMON_SERVICE_RUNTIME_MODE_ENV, m as daemonDispatchJournalPath, n as writeDaemonRuntimeLease, o as DAEMON_SERVICE_RUNTIME_AUTO_START_ENV, p as clearDaemonServiceRuntimeState, q as withDaemonServiceReconcileLock, r as readDaemonLocalStateFile, s as DAEMON_SERVICE_RUNTIME_CONTROLLER_ENV, t as readDaemonRuntimeLease, u as DAEMON_SERVICE_RUNTIME_STATE_SCHEMA, v as daemonRuntimeRootPath, w as daemonServiceRecognizedExecutablePaths$1, x as daemonServiceActiveBundleStatePath, y as daemonRuntimeServiceManagerPath, z as readDaemonServiceRuntimeSnapshot } from "./daemon-runtime-lease-Dqmxqrzi.js";
|
|
8
|
+
import { A as HEARTBEAT_RESPONSE_TIMEOUT_MS$1, B as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, C as DAEMON_RUNTIME_CONTRACT_EPOCH$1, D as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1, E as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, F as OPENCLAW_CLI_TIMEOUT_MS$1, H as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, I as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, L as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1, N as MIN_HEARTBEAT_INTERVAL_MS$2, O as DEFAULT_HEARTBEAT_INTERVAL_MS$1, R as REGISTER_RESPONSE_TIMEOUT_MS$1, S as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, T as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, V as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, a as beginAuthSessionTransition, h as setAuthSession, j as MAX_HEARTBEAT_INTERVAL_MS$2, l as getAuthSessionState, o as clearAuthSession, r as assertAuthSessionMutationAvailable, v as isBinaryDistribution, w as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, x as CATALOG_SYNC_RETRY_INTERVAL_MS$1, y as resolveOpenMeldDistribution } from "./auth-session-Bg4ATgGF.js";
|
|
9
|
+
import { a as AuthRequestCredentialError, c as buildOpenMeldRequestContextHeadersWithAuth, d as buildOpenMeldRequestContextFromProfile, f as buildOpenMeldRequestContextFromProfileIdentity, i as resolveSpaceRequestTimeoutMsForDiagnostics, l as buildRequestAuthHeaders, m as resolveAuthRequestCompatibility, n as createCliApiClientFoundation, o as buildOpenMeldProfileIdentityRequestHeadersWithAuth, p as deriveAuthBaseUrlFromGatewayUrl, r as fetchSpaceRequestWithTimeout, s as buildOpenMeldProfileRequestHeadersWithAuth, u as canAttachAuthTokenToRequest } from "./api-client-foundation-CLOdRX5Y.js";
|
|
10
10
|
import { createRequire } from "node:module";
|
|
11
11
|
import { homedir, tmpdir, userInfo } from "node:os";
|
|
12
12
|
import * as z$1 from "zod/v4";
|
|
@@ -1833,6 +1833,67 @@ function storePath$2(input) {
|
|
|
1833
1833
|
return join(input.rootDir ?? resolveOpenMeldRootDir(), "device", "agent-activity", "hook-projections.json");
|
|
1834
1834
|
}
|
|
1835
1835
|
//#endregion
|
|
1836
|
+
//#region src/local-service/state/catalog-sync-signal.ts
|
|
1837
|
+
const CATALOG_SYNC_SIGNAL_FILE = "catalog-sync-signal.json";
|
|
1838
|
+
const CATALOG_SYNC_SIGNAL_SCHEMA = "openmeld-daemon-catalog-sync-signal-v1";
|
|
1839
|
+
async function touchDaemonCatalogSyncSignal(input) {
|
|
1840
|
+
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
1841
|
+
const runtimeDataPath = resolveDaemonRuntimeDataPath(input.rootDir);
|
|
1842
|
+
const signalPath = daemonCatalogSyncSignalPath(runtimeDataPath);
|
|
1843
|
+
await mkdir(runtimeDataPath, { recursive: true });
|
|
1844
|
+
const next = {
|
|
1845
|
+
signalId: randomUUID(),
|
|
1846
|
+
v: 1,
|
|
1847
|
+
schema: CATALOG_SYNC_SIGNAL_SCHEMA,
|
|
1848
|
+
updatedAt: now,
|
|
1849
|
+
reason: normalizeReason$1(input.reason)
|
|
1850
|
+
};
|
|
1851
|
+
const tempPath = `${signalPath}.tmp-${process.pid}-${Date.now()}`;
|
|
1852
|
+
let shouldCleanupTemp = true;
|
|
1853
|
+
try {
|
|
1854
|
+
await writeFile(tempPath, `${JSON.stringify(next, null, 2)}\n`, "utf8");
|
|
1855
|
+
await rename(tempPath, signalPath);
|
|
1856
|
+
shouldCleanupTemp = false;
|
|
1857
|
+
} finally {
|
|
1858
|
+
if (shouldCleanupTemp) await rm(tempPath, { force: true }).catch(() => void 0);
|
|
1859
|
+
}
|
|
1860
|
+
}
|
|
1861
|
+
async function readDaemonCatalogSyncSignal(input = {}) {
|
|
1862
|
+
const raw = await readFile(daemonCatalogSyncSignalPath(resolveDaemonRuntimeDataPath(input.rootDir)), "utf8").catch(() => null);
|
|
1863
|
+
if (!raw) return null;
|
|
1864
|
+
try {
|
|
1865
|
+
const parsed = JSON.parse(raw);
|
|
1866
|
+
if (parsed.v !== 1) return null;
|
|
1867
|
+
if (parsed.schema !== CATALOG_SYNC_SIGNAL_SCHEMA || typeof parsed.updatedAt !== "string" || parsed.updatedAt.trim().length === 0 || typeof parsed.reason !== "string") return null;
|
|
1868
|
+
const updatedAt = parsed.updatedAt.trim();
|
|
1869
|
+
const updatedAtMs = Date.parse(updatedAt);
|
|
1870
|
+
if (!Number.isFinite(updatedAtMs) || updatedAtMs <= 0) return null;
|
|
1871
|
+
return {
|
|
1872
|
+
...typeof parsed.signalId === "string" && parsed.signalId.trim() ? { signalId: parsed.signalId.trim() } : {},
|
|
1873
|
+
updatedAt,
|
|
1874
|
+
updatedAtMs,
|
|
1875
|
+
reason: normalizeReason$1(parsed.reason)
|
|
1876
|
+
};
|
|
1877
|
+
} catch {
|
|
1878
|
+
return null;
|
|
1879
|
+
}
|
|
1880
|
+
}
|
|
1881
|
+
function daemonCatalogSyncSignalPath(runtimeDataPath) {
|
|
1882
|
+
return join(runtimeDataPath, CATALOG_SYNC_SIGNAL_FILE);
|
|
1883
|
+
}
|
|
1884
|
+
function resolveDaemonRuntimeDataPath(rootDir) {
|
|
1885
|
+
if (!rootDir) return daemonRuntimeDataPath();
|
|
1886
|
+
return daemonRuntimeDataPath({ env: {
|
|
1887
|
+
...process.env,
|
|
1888
|
+
[OPENMELD_HOME_ENV_KEY]: rootDir
|
|
1889
|
+
} });
|
|
1890
|
+
}
|
|
1891
|
+
function normalizeReason$1(value) {
|
|
1892
|
+
const normalized = value.trim();
|
|
1893
|
+
if (normalized.length > 0) return normalized;
|
|
1894
|
+
return "local_state_changed";
|
|
1895
|
+
}
|
|
1896
|
+
//#endregion
|
|
1836
1897
|
//#region src/agent-activity/project-binding-resolution.ts
|
|
1837
1898
|
async function canonicalizeLocalProjectPath(path) {
|
|
1838
1899
|
return await realpath(resolve(path)).catch((error) => {
|
|
@@ -2176,6 +2237,10 @@ async function writeStore$2(input, store) {
|
|
|
2176
2237
|
});
|
|
2177
2238
|
await rename(temporaryPath, path);
|
|
2178
2239
|
await chmod(path, 384);
|
|
2240
|
+
await touchDaemonCatalogSyncSignal({
|
|
2241
|
+
reason: "project_connections_changed",
|
|
2242
|
+
...input.rootDir ? { rootDir: input.rootDir } : {}
|
|
2243
|
+
}).catch(() => void 0);
|
|
2179
2244
|
} finally {
|
|
2180
2245
|
await rm(temporaryPath, { force: true }).catch(() => void 0);
|
|
2181
2246
|
}
|
|
@@ -18609,7 +18674,7 @@ function resolveOpenMeldAccountContext(input) {
|
|
|
18609
18674
|
};
|
|
18610
18675
|
}
|
|
18611
18676
|
async function resolveCurrentOpenMeldAccountContext() {
|
|
18612
|
-
const { getAuthSessionMetadata } = await import("./auth-session-
|
|
18677
|
+
const { getAuthSessionMetadata } = await import("./auth-session-Bg4ATgGF.js").then((n) => n.i);
|
|
18613
18678
|
return resolveOpenMeldAccountContext({ session: await getAuthSessionMetadata().catch(() => null) });
|
|
18614
18679
|
}
|
|
18615
18680
|
function resolveHostKey(baseUrl) {
|
|
@@ -19160,57 +19225,6 @@ async function removeDirectoryIfPresent(path) {
|
|
|
19160
19225
|
return true;
|
|
19161
19226
|
}
|
|
19162
19227
|
//#endregion
|
|
19163
|
-
//#region src/local-service/state/catalog-sync-signal.ts
|
|
19164
|
-
const CATALOG_SYNC_SIGNAL_FILE = "catalog-sync-signal.json";
|
|
19165
|
-
const CATALOG_SYNC_SIGNAL_SCHEMA = "openmeld-daemon-catalog-sync-signal-v1";
|
|
19166
|
-
async function touchDaemonCatalogSyncSignal(input) {
|
|
19167
|
-
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
19168
|
-
const signalPath = daemonCatalogSyncSignalPath();
|
|
19169
|
-
await mkdir(daemonRuntimeDataPath(), { recursive: true });
|
|
19170
|
-
const next = {
|
|
19171
|
-
v: 1,
|
|
19172
|
-
schema: CATALOG_SYNC_SIGNAL_SCHEMA,
|
|
19173
|
-
updatedAt: now,
|
|
19174
|
-
reason: normalizeReason$1(input.reason)
|
|
19175
|
-
};
|
|
19176
|
-
const tempPath = `${signalPath}.tmp-${process.pid}-${Date.now()}`;
|
|
19177
|
-
let shouldCleanupTemp = true;
|
|
19178
|
-
try {
|
|
19179
|
-
await writeFile(tempPath, `${JSON.stringify(next, null, 2)}\n`, "utf8");
|
|
19180
|
-
await rename(tempPath, signalPath);
|
|
19181
|
-
shouldCleanupTemp = false;
|
|
19182
|
-
} finally {
|
|
19183
|
-
if (shouldCleanupTemp) await rm(tempPath, { force: true }).catch(() => void 0);
|
|
19184
|
-
}
|
|
19185
|
-
}
|
|
19186
|
-
async function readDaemonCatalogSyncSignal() {
|
|
19187
|
-
const raw = await readFile(daemonCatalogSyncSignalPath(), "utf8").catch(() => null);
|
|
19188
|
-
if (!raw) return null;
|
|
19189
|
-
try {
|
|
19190
|
-
const parsed = JSON.parse(raw);
|
|
19191
|
-
if (parsed.v !== 1) return null;
|
|
19192
|
-
if (parsed.schema !== CATALOG_SYNC_SIGNAL_SCHEMA || typeof parsed.updatedAt !== "string" || parsed.updatedAt.trim().length === 0 || typeof parsed.reason !== "string") return null;
|
|
19193
|
-
const updatedAt = parsed.updatedAt.trim();
|
|
19194
|
-
const updatedAtMs = Date.parse(updatedAt);
|
|
19195
|
-
if (!Number.isFinite(updatedAtMs) || updatedAtMs <= 0) return null;
|
|
19196
|
-
return {
|
|
19197
|
-
updatedAt,
|
|
19198
|
-
updatedAtMs,
|
|
19199
|
-
reason: normalizeReason$1(parsed.reason)
|
|
19200
|
-
};
|
|
19201
|
-
} catch {
|
|
19202
|
-
return null;
|
|
19203
|
-
}
|
|
19204
|
-
}
|
|
19205
|
-
function daemonCatalogSyncSignalPath() {
|
|
19206
|
-
return join(daemonRuntimeDataPath(), CATALOG_SYNC_SIGNAL_FILE);
|
|
19207
|
-
}
|
|
19208
|
-
function normalizeReason$1(value) {
|
|
19209
|
-
const normalized = value.trim();
|
|
19210
|
-
if (normalized.length > 0) return normalized;
|
|
19211
|
-
return "local_state_changed";
|
|
19212
|
-
}
|
|
19213
|
-
//#endregion
|
|
19214
19228
|
//#region src/config/profile-creation-capability.ts
|
|
19215
19229
|
function assertAdditionalHumanProfileCreationEnabled(input) {
|
|
19216
19230
|
if (input.additionalHumanProfileCreationEnabled) return;
|
|
@@ -20151,8 +20165,8 @@ function splitSentences(message) {
|
|
|
20151
20165
|
var package_default = {
|
|
20152
20166
|
$schema: "https://www.schemastore.org/package.json",
|
|
20153
20167
|
name: "openmeld",
|
|
20154
|
-
version: "0.3.
|
|
20155
|
-
openMeldReleaseDate: "2026-09-
|
|
20168
|
+
version: "0.3.153",
|
|
20169
|
+
openMeldReleaseDate: "2026-09-04",
|
|
20156
20170
|
description: "OpenMeld CLI - https://openmeld.ai",
|
|
20157
20171
|
license: "MIT",
|
|
20158
20172
|
type: "module",
|
|
@@ -29254,9 +29268,6 @@ function resolveAgentExecutionStatus(input) {
|
|
|
29254
29268
|
...service.reasonCodes,
|
|
29255
29269
|
...runtime.reasonCodes,
|
|
29256
29270
|
...claim.reasonCodes,
|
|
29257
|
-
...providerAccount.reasonCodes,
|
|
29258
|
-
...providerConversation.reasonCodes,
|
|
29259
|
-
...readinessImpact.reasonCodes,
|
|
29260
29271
|
...route.reasonCodes
|
|
29261
29272
|
]);
|
|
29262
29273
|
const displayState = resolveDisplayState({
|
|
@@ -29266,8 +29277,6 @@ function resolveAgentExecutionStatus(input) {
|
|
|
29266
29277
|
executionFamily,
|
|
29267
29278
|
localServiceReachable: localService.reachable,
|
|
29268
29279
|
profile,
|
|
29269
|
-
providerAccountBlocked: providerAccount.blocked,
|
|
29270
|
-
readinessImpactBlocked: readinessImpact.blocked,
|
|
29271
29280
|
routeOnline: route.online,
|
|
29272
29281
|
runtimeReady: runtime.ready,
|
|
29273
29282
|
serviceExecutionCompatible: service.executionCompatible
|
|
@@ -29532,8 +29541,6 @@ function resolveDisplayState(input) {
|
|
|
29532
29541
|
if (input.bindingBlocked) return "blocked";
|
|
29533
29542
|
if (input.bindingRoutable && !input.serviceExecutionCompatible) return "blocked";
|
|
29534
29543
|
if (input.claimBlocked) return "blocked";
|
|
29535
|
-
if (input.providerAccountBlocked) return "blocked";
|
|
29536
|
-
if (input.readinessImpactBlocked) return "blocked";
|
|
29537
29544
|
if (input.bindingRoutable && (input.executionFamily === "native" || input.localServiceReachable) && input.serviceExecutionCompatible && input.runtimeReady && input.routeOnline) return "ready";
|
|
29538
29545
|
return "not_ready";
|
|
29539
29546
|
}
|
|
@@ -29555,7 +29562,6 @@ function resolveServicePrimaryAction(input) {
|
|
|
29555
29562
|
}
|
|
29556
29563
|
function resolveRuntimeRoutePrimaryAction(input) {
|
|
29557
29564
|
if (!(input.localService.reachable || input.route.online)) return "run_prepare";
|
|
29558
|
-
if (input.providerAccount.blocked) return "fix_provider_account";
|
|
29559
29565
|
if (input.runtime.reasonCodes.includes("usage_exhausted")) return "check_status";
|
|
29560
29566
|
if (!input.runtime.ready) return resolveRuntimeNotReadyPrimaryAction({
|
|
29561
29567
|
localService: input.localService,
|
|
@@ -29568,7 +29574,6 @@ function resolveRuntimeRoutePrimaryAction(input) {
|
|
|
29568
29574
|
runtime: input.runtime,
|
|
29569
29575
|
service: input.service
|
|
29570
29576
|
});
|
|
29571
|
-
if (input.readinessImpact.blocked) return "run_prepare";
|
|
29572
29577
|
return "check_status";
|
|
29573
29578
|
}
|
|
29574
29579
|
function resolveBlockedClaimPrimaryAction(input) {
|
|
@@ -29593,6 +29598,7 @@ function hasServiceConnectionReason(reasonCodes) {
|
|
|
29593
29598
|
return reasonCodes.some((reasonCode) => reasonCode === "local_service.not_connected_for_account" || reasonCode === "service.current_runtime_session_missing" || reasonCode === "daemon.session.not_found");
|
|
29594
29599
|
}
|
|
29595
29600
|
function resolveRuntimeNotReadyPrimaryAction(input) {
|
|
29601
|
+
if (input.runtime.reasonCodes.some((reasonCode) => reasonCode.startsWith("working_folder."))) return "check_status";
|
|
29596
29602
|
if (hasRuntimeAgentControllerReportRefreshReason(input.runtime.reasonCodes) && input.localService.refreshable) return "check_status";
|
|
29597
29603
|
return "run_prepare";
|
|
29598
29604
|
}
|
|
@@ -29717,13 +29723,13 @@ function selectPrimaryReasonCode(reasonCodes) {
|
|
|
29717
29723
|
}
|
|
29718
29724
|
function formatReasonCodeFamily(reasonCode) {
|
|
29719
29725
|
if (reasonCode.startsWith("agent_profile.")) return "OpenMeld could not confirm this agent profile.";
|
|
29720
|
-
if (reasonCode.startsWith("service.") || reasonCode.startsWith("background_helper.") || reasonCode.startsWith("daemon.runtime_contract.")) return "
|
|
29726
|
+
if (reasonCode.startsWith("service.") || reasonCode.startsWith("background_helper.") || reasonCode.startsWith("daemon.runtime_contract.")) return "This computer is not connected to OpenMeld.";
|
|
29721
29727
|
if (reasonCode.startsWith("claim_eligibility.") || reasonCode.startsWith("dispatch.claim_eligibility.")) return "Wake cannot use this local connection for this agent yet.";
|
|
29722
29728
|
if (reasonCode.startsWith("runtime.agent_controller_report_") || reasonCode.startsWith("runtime.agent_controller_report.")) return "This computer has not reported current local agent support yet.";
|
|
29723
29729
|
if (reasonCode.startsWith("provider_conversation.")) return "OpenMeld needs a current provider conversation check for this agent.";
|
|
29724
29730
|
if (reasonCode.startsWith("runtime.")) return "This computer needs a fresh check for this agent.";
|
|
29725
29731
|
if (reasonCode.startsWith("agent_profile_binding.")) return "This agent's local connection needs setup.";
|
|
29726
|
-
if (reasonCode.startsWith("local_service.")) return "
|
|
29732
|
+
if (reasonCode.startsWith("local_service.")) return "This computer is not connected to the current OpenMeld account.";
|
|
29727
29733
|
if (reasonCode.startsWith("agent_execution.route_")) return REPLY_ROUTE_RECONNECTING_REASON;
|
|
29728
29734
|
return "OpenMeld needs a more current setup check from this computer.";
|
|
29729
29735
|
}
|
|
@@ -29775,10 +29781,10 @@ const REASON_TEXT = {
|
|
|
29775
29781
|
"runtime_coordinator.delivery_expired": "This agent did not receive the last Wake from this computer.",
|
|
29776
29782
|
"workspace.invalid": "Repair this agent's local workspace on this computer.",
|
|
29777
29783
|
"workspace.missing": "Set up this agent's local workspace on this computer.",
|
|
29778
|
-
"local_service.identity_mismatch": "
|
|
29779
|
-
"local_service.not_connected_for_account": "
|
|
29780
|
-
"local_service.refresh_in_progress": "OpenMeld
|
|
29781
|
-
"local_service.unavailable": "OpenMeld could not check
|
|
29784
|
+
"local_service.identity_mismatch": "This computer’s OpenMeld connection does not match this account.",
|
|
29785
|
+
"local_service.not_connected_for_account": "This computer is not connected to the current OpenMeld account.",
|
|
29786
|
+
"local_service.refresh_in_progress": "OpenMeld is checking this agent again on this computer.",
|
|
29787
|
+
"local_service.unavailable": "OpenMeld could not check this computer’s connection.",
|
|
29782
29788
|
"execution_authority.missing": "Wake execution authority is missing.",
|
|
29783
29789
|
"execution_authority.mismatch": "Wake execution authority does not match this agent.",
|
|
29784
29790
|
"execution_authority.unavailable": "Wake execution authority is unavailable.",
|
|
@@ -38481,7 +38487,7 @@ async function readExpectedRoutesOnce(baseUrl) {
|
|
|
38481
38487
|
const api = createLocalRuntimeExpectedRoutesApi(createCliApiClientFoundation(baseUrl ?? await resolveBaseUrl()));
|
|
38482
38488
|
try {
|
|
38483
38489
|
return {
|
|
38484
|
-
|
|
38490
|
+
...await readNewestSupportedExpectedRoutes({
|
|
38485
38491
|
api,
|
|
38486
38492
|
deviceId,
|
|
38487
38493
|
lane
|
|
@@ -38495,20 +38501,29 @@ async function readExpectedRoutesOnce(baseUrl) {
|
|
|
38495
38501
|
}
|
|
38496
38502
|
async function readNewestSupportedExpectedRoutes(input) {
|
|
38497
38503
|
for (const contractVersion of [
|
|
38504
|
+
"v4",
|
|
38498
38505
|
"v3",
|
|
38499
38506
|
"v2",
|
|
38500
38507
|
void 0
|
|
38501
38508
|
]) try {
|
|
38502
|
-
|
|
38509
|
+
const response = await input.api.getExpectedRoutes({
|
|
38503
38510
|
...contractVersion ? { contractVersion } : {},
|
|
38504
38511
|
deviceId: input.deviceId,
|
|
38505
38512
|
lane: input.lane
|
|
38506
38513
|
});
|
|
38514
|
+
if (contractVersion === "v4") assertCompleteV4ExpectedRoutes(response);
|
|
38515
|
+
return {
|
|
38516
|
+
contractVersion: contractVersion ?? "legacy",
|
|
38517
|
+
response
|
|
38518
|
+
};
|
|
38507
38519
|
} catch (error) {
|
|
38508
38520
|
if (contractVersion === void 0 || !isUnsupportedExpectedRoutesContract(error)) throw error;
|
|
38509
38521
|
}
|
|
38510
38522
|
throw new Error("expected-routes contract negotiation exhausted");
|
|
38511
38523
|
}
|
|
38524
|
+
function assertCompleteV4ExpectedRoutes(response) {
|
|
38525
|
+
for (const route of response.expectedRoutes) if (route.configurationRevision === void 0 || !Object.hasOwn(route, "defaultProjectId")) throw new Error(`expected-routes v4 response omitted current working-folder identity for ${route.agentProfileId}`);
|
|
38526
|
+
}
|
|
38512
38527
|
function isUnsupportedExpectedRoutesContract(error) {
|
|
38513
38528
|
return error instanceof OpenMeldApiClientHttpError && error.status === 400 && (error.code === "invalid_payload" || error.upstreamCode === "invalid_payload");
|
|
38514
38529
|
}
|
|
@@ -39589,6 +39604,121 @@ async function resolveAccountKey(account) {
|
|
|
39589
39604
|
return (await resolveCurrentOpenMeldAccountContext()).key;
|
|
39590
39605
|
}
|
|
39591
39606
|
//#endregion
|
|
39607
|
+
//#region src/profile-workspace/effective-runtime-resolution.ts
|
|
39608
|
+
async function resolveEffectiveProfileWorkingFolderRuntime(input) {
|
|
39609
|
+
const current = await resolveCurrentEffectiveProfileWorkingFolderRuntime(input);
|
|
39610
|
+
if (current.workingFolderSource === "profile_workspace") {
|
|
39611
|
+
const { workingFolderFact: _workingFolderFact, workingFolderSource: _workingFolderSource, ...profileWorkspaceResolution } = current;
|
|
39612
|
+
return profileWorkspaceResolution;
|
|
39613
|
+
}
|
|
39614
|
+
const { workingFolderFact: _workingFolderFact, ...defaultProjectResolution } = current;
|
|
39615
|
+
return defaultProjectResolution;
|
|
39616
|
+
}
|
|
39617
|
+
async function resolveCurrentEffectiveProfileWorkingFolderRuntime(input) {
|
|
39618
|
+
if (!input.defaultProjectId) {
|
|
39619
|
+
const resolution = await resolveProfileWorkspaceRuntime({
|
|
39620
|
+
...input.account ? { account: input.account } : {},
|
|
39621
|
+
mode: input.mode,
|
|
39622
|
+
openMeldProfileId: input.openMeldProfileId
|
|
39623
|
+
});
|
|
39624
|
+
return {
|
|
39625
|
+
...resolution,
|
|
39626
|
+
workingFolderFact: {
|
|
39627
|
+
defaultProjectId: null,
|
|
39628
|
+
localProjectBindingGeneration: null,
|
|
39629
|
+
observedAtMs: Date.now(),
|
|
39630
|
+
reasonCode: resolveProfileWorkspaceFactReasonCode(resolution.status),
|
|
39631
|
+
source: "profile_workspace",
|
|
39632
|
+
status: resolution.status
|
|
39633
|
+
},
|
|
39634
|
+
workingFolderSource: "profile_workspace"
|
|
39635
|
+
};
|
|
39636
|
+
}
|
|
39637
|
+
const connection = (await listProjectConnectionsWithStatus({})).find((item) => item.projectId === input.defaultProjectId && item.isDefault);
|
|
39638
|
+
if (!connection) return {
|
|
39639
|
+
configPath: null,
|
|
39640
|
+
configuredWorkspacePath: null,
|
|
39641
|
+
defaultProjectFailureReason: "missing_connection",
|
|
39642
|
+
defaultProjectId: input.defaultProjectId,
|
|
39643
|
+
reasonCode: "workspace.missing",
|
|
39644
|
+
reasonText: `Default Project ${input.defaultProjectId} has no local folder connection on this computer.`,
|
|
39645
|
+
status: "missing",
|
|
39646
|
+
workingFolderFact: {
|
|
39647
|
+
defaultProjectId: input.defaultProjectId,
|
|
39648
|
+
localProjectBindingGeneration: null,
|
|
39649
|
+
observedAtMs: Date.now(),
|
|
39650
|
+
reasonCode: "project.local_connection.missing",
|
|
39651
|
+
source: "default_project",
|
|
39652
|
+
status: "missing"
|
|
39653
|
+
},
|
|
39654
|
+
workingFolderSource: "default_project",
|
|
39655
|
+
workspaceMode: null
|
|
39656
|
+
};
|
|
39657
|
+
if (connection.status === "missing") return {
|
|
39658
|
+
configPath: null,
|
|
39659
|
+
configuredWorkspacePath: connection.repositoryPath,
|
|
39660
|
+
defaultProjectBindingGeneration: connection.bindingGeneration,
|
|
39661
|
+
defaultProjectFailureReason: "folder_missing",
|
|
39662
|
+
defaultProjectId: input.defaultProjectId,
|
|
39663
|
+
reasonCode: "workspace.missing",
|
|
39664
|
+
reasonText: `The local folder connected to Default Project ${input.defaultProjectId} is missing on this computer.`,
|
|
39665
|
+
status: "missing",
|
|
39666
|
+
workingFolderFact: {
|
|
39667
|
+
defaultProjectId: input.defaultProjectId,
|
|
39668
|
+
localProjectBindingGeneration: connection.bindingGeneration,
|
|
39669
|
+
observedAtMs: Date.now(),
|
|
39670
|
+
reasonCode: "project.local_connection.folder_missing",
|
|
39671
|
+
source: "default_project",
|
|
39672
|
+
status: "missing"
|
|
39673
|
+
},
|
|
39674
|
+
workingFolderSource: "default_project",
|
|
39675
|
+
workspaceMode: null
|
|
39676
|
+
};
|
|
39677
|
+
const runtimeContext = providerDispatchRuntimeContextSchema.safeParse({ providerRuntimeWorkingDirectory: connection.repositoryPath });
|
|
39678
|
+
if (!runtimeContext.success) return {
|
|
39679
|
+
configPath: null,
|
|
39680
|
+
configuredWorkspacePath: connection.repositoryPath,
|
|
39681
|
+
defaultProjectBindingGeneration: connection.bindingGeneration,
|
|
39682
|
+
defaultProjectId: input.defaultProjectId,
|
|
39683
|
+
reasonCode: "workspace.invalid",
|
|
39684
|
+
reasonText: `The local folder connected to Default Project ${input.defaultProjectId} is not a valid runtime working directory.`,
|
|
39685
|
+
status: "invalid",
|
|
39686
|
+
workingFolderFact: {
|
|
39687
|
+
defaultProjectId: input.defaultProjectId,
|
|
39688
|
+
localProjectBindingGeneration: connection.bindingGeneration,
|
|
39689
|
+
observedAtMs: Date.now(),
|
|
39690
|
+
reasonCode: "project.local_connection.invalid",
|
|
39691
|
+
source: "default_project",
|
|
39692
|
+
status: "invalid"
|
|
39693
|
+
},
|
|
39694
|
+
workingFolderSource: "default_project",
|
|
39695
|
+
workspaceMode: null
|
|
39696
|
+
};
|
|
39697
|
+
return {
|
|
39698
|
+
configPath: null,
|
|
39699
|
+
configuredWorkspacePath: connection.repositoryPath,
|
|
39700
|
+
defaultProjectBindingGeneration: connection.bindingGeneration,
|
|
39701
|
+
defaultProjectId: input.defaultProjectId,
|
|
39702
|
+
effectiveRuntimeWorkingDirectory: connection.repositoryPath,
|
|
39703
|
+
runtimeContext: runtimeContext.data,
|
|
39704
|
+
status: "ready",
|
|
39705
|
+
workingFolderFact: {
|
|
39706
|
+
defaultProjectId: input.defaultProjectId,
|
|
39707
|
+
localProjectBindingGeneration: connection.bindingGeneration,
|
|
39708
|
+
observedAtMs: Date.now(),
|
|
39709
|
+
reasonCode: null,
|
|
39710
|
+
source: "default_project",
|
|
39711
|
+
status: "ready"
|
|
39712
|
+
},
|
|
39713
|
+
workingFolderSource: "default_project",
|
|
39714
|
+
workspaceMode: null
|
|
39715
|
+
};
|
|
39716
|
+
}
|
|
39717
|
+
function resolveProfileWorkspaceFactReasonCode(status) {
|
|
39718
|
+
if (status === "ready") return null;
|
|
39719
|
+
return status === "missing" ? "profile.workspace.missing" : "profile.workspace.invalid";
|
|
39720
|
+
}
|
|
39721
|
+
//#endregion
|
|
39592
39722
|
//#region src/system/model-catalog-read-session.ts
|
|
39593
39723
|
function createModelCatalogReadSession(input) {
|
|
39594
39724
|
let readPromise = null;
|
|
@@ -39600,9 +39730,9 @@ function createModelCatalogReadSession(input) {
|
|
|
39600
39730
|
async function readModelCatalogOnce(baseUrl) {
|
|
39601
39731
|
try {
|
|
39602
39732
|
const [apiClient, baseUrlModule, clientFoundationModule] = await Promise.all([
|
|
39603
|
-
import("./dist-
|
|
39733
|
+
import("./dist-Bu7QFqmt.js").then((n) => n.w),
|
|
39604
39734
|
import("./base-url-CY_j4bLH.js").then((n) => n.n),
|
|
39605
|
-
import("./api-client-foundation-
|
|
39735
|
+
import("./api-client-foundation-CLOdRX5Y.js").then((n) => n.t)
|
|
39606
39736
|
]);
|
|
39607
39737
|
if (typeof apiClient.createConfigApi !== "function") throw new Error("config api client is unavailable");
|
|
39608
39738
|
const resolvedBaseUrl = baseUrl ?? await baseUrlModule.resolveBaseUrl();
|
|
@@ -40021,15 +40151,10 @@ async function loadDaemonRouteCatalog(input) {
|
|
|
40021
40151
|
})).key;
|
|
40022
40152
|
const resolutions = await runMeasuredRouteCatalogLoadPhase({
|
|
40023
40153
|
deadline,
|
|
40024
|
-
operation:
|
|
40025
|
-
account,
|
|
40026
|
-
excludedProfiles: expectedRoutesResult.response.excludedProfiles,
|
|
40027
|
-
expectedRoutes: expectedRoutesResult.response.expectedRoutes,
|
|
40028
|
-
localAdapterContainer: input.localAdapterContainer,
|
|
40029
|
-
modelCatalog
|
|
40030
|
-
}) : await resolvePerProfileBindingResolutions({
|
|
40154
|
+
operation: () => resolveCatalogRouteResolutions({
|
|
40031
40155
|
account,
|
|
40032
40156
|
bindingReads,
|
|
40157
|
+
expectedRoutesResult,
|
|
40033
40158
|
localAdapterContainer: input.localAdapterContainer,
|
|
40034
40159
|
modelCatalog,
|
|
40035
40160
|
ownerUserId: input.ownerUserId,
|
|
@@ -40041,7 +40166,9 @@ async function loadDaemonRouteCatalog(input) {
|
|
|
40041
40166
|
});
|
|
40042
40167
|
const routeByProfileId = /* @__PURE__ */ new Map();
|
|
40043
40168
|
const skippedProfiles = [];
|
|
40169
|
+
const workingFolderObservations = [];
|
|
40044
40170
|
for (const { nextResolvedRoute, profileName } of resolutions) {
|
|
40171
|
+
if (nextResolvedRoute.workingFolderObservation) workingFolderObservations.push(nextResolvedRoute.workingFolderObservation);
|
|
40045
40172
|
if (nextResolvedRoute.status === "skipped") {
|
|
40046
40173
|
if (nextResolvedRoute.profileId && nextResolvedRoute.skipReason) skippedProfiles.push({
|
|
40047
40174
|
profileId: nextResolvedRoute.profileId,
|
|
@@ -40058,9 +40185,11 @@ async function loadDaemonRouteCatalog(input) {
|
|
|
40058
40185
|
routeByProfileId.set(nextResolvedRoute.profileId, nextResolvedRoute.route);
|
|
40059
40186
|
}
|
|
40060
40187
|
const catalog = {
|
|
40188
|
+
...resolveV4RouteCatalogMetadata(expectedRoutesResult),
|
|
40061
40189
|
profileIds: Array.from(routeByProfileId.keys()).sort((left, right) => left.localeCompare(right)),
|
|
40062
40190
|
routeByProfileId,
|
|
40063
|
-
skippedProfiles: skippedProfiles.sort((left, right) => left.profileId.localeCompare(right.profileId))
|
|
40191
|
+
skippedProfiles: skippedProfiles.sort((left, right) => left.profileId.localeCompare(right.profileId)),
|
|
40192
|
+
workingFolderObservations: workingFolderObservations.sort((left, right) => left.profileId.localeCompare(right.profileId))
|
|
40064
40193
|
};
|
|
40065
40194
|
if (input.allowEmpty === false && catalog.profileIds.length === 0) throw new DaemonServiceRunError({
|
|
40066
40195
|
code: "daemon.run.no_eligible_profiles",
|
|
@@ -40068,6 +40197,30 @@ async function loadDaemonRouteCatalog(input) {
|
|
|
40068
40197
|
});
|
|
40069
40198
|
return catalog;
|
|
40070
40199
|
}
|
|
40200
|
+
async function resolveCatalogRouteResolutions(input) {
|
|
40201
|
+
if (input.expectedRoutesResult.status === "resolved" && input.expectedRoutesResult.contractVersion === "v4") return await resolveExpectedRouteResolutions({
|
|
40202
|
+
account: input.account,
|
|
40203
|
+
excludedProfiles: input.expectedRoutesResult.response.excludedProfiles,
|
|
40204
|
+
expectedRoutes: input.expectedRoutesResult.response.expectedRoutes,
|
|
40205
|
+
localAdapterContainer: input.localAdapterContainer,
|
|
40206
|
+
modelCatalog: input.modelCatalog
|
|
40207
|
+
});
|
|
40208
|
+
return await resolvePerProfileBindingResolutions({
|
|
40209
|
+
account: input.account,
|
|
40210
|
+
bindingReads: input.bindingReads,
|
|
40211
|
+
localAdapterContainer: input.localAdapterContainer,
|
|
40212
|
+
modelCatalog: input.modelCatalog,
|
|
40213
|
+
ownerUserId: input.ownerUserId,
|
|
40214
|
+
phaseTimings: input.phaseTimings
|
|
40215
|
+
});
|
|
40216
|
+
}
|
|
40217
|
+
function resolveV4RouteCatalogMetadata(expectedRoutesResult) {
|
|
40218
|
+
if (expectedRoutesResult.status !== "resolved" || expectedRoutesResult.contractVersion !== "v4") return {};
|
|
40219
|
+
return {
|
|
40220
|
+
expectedRoutesContractVersion: "v4",
|
|
40221
|
+
workingFolderExpectedProfileIds: expectedRoutesResult.response.expectedRoutes.map((route) => route.agentProfileId).sort((left, right) => left.localeCompare(right))
|
|
40222
|
+
};
|
|
40223
|
+
}
|
|
40071
40224
|
async function runMeasuredRouteCatalogLoadPhase(input) {
|
|
40072
40225
|
const startedAt = Date.now();
|
|
40073
40226
|
try {
|
|
@@ -40105,22 +40258,15 @@ function createRouteCatalogLoadDeadline(timeoutMs) {
|
|
|
40105
40258
|
async function resolveExpectedRouteResolutions(input) {
|
|
40106
40259
|
const localControllers = await readLocalEnabledControllers();
|
|
40107
40260
|
const resolved = await Promise.all(input.expectedRoutes.map(async (expectedRoute) => {
|
|
40261
|
+
if (expectedRoute.configurationRevision === void 0 || !Object.hasOwn(expectedRoute, "defaultProjectId")) throw new Error(`expected-routes v4 response omitted current working-folder identity for ${expectedRoute.agentProfileId}`);
|
|
40108
40262
|
const parsedRef = parseAgentControllerRef(expectedRoute.executionTarget.agentControllerRef);
|
|
40109
|
-
|
|
40110
|
-
nextResolvedRoute: {
|
|
40111
|
-
profileId: expectedRoute.agentProfileId,
|
|
40112
|
-
skipReason: "controller.binding.incomplete",
|
|
40113
|
-
status: "skipped"
|
|
40114
|
-
},
|
|
40115
|
-
profileName: expectedRoute.profileName
|
|
40116
|
-
};
|
|
40117
|
-
const localResolution = resolveLocalRouteCandidateFromBoundTarget({
|
|
40263
|
+
const localResolution = parsedRef ? resolveLocalRouteCandidateFromBoundTarget({
|
|
40118
40264
|
boundTarget: {
|
|
40119
40265
|
agentControllerConversationId: expectedRoute.executionTarget.agentControllerConversationId,
|
|
40120
40266
|
agentControllerRef: parsedRef.ref,
|
|
40121
40267
|
openMeldServiceRuntimeId: expectedRoute.executionTarget.openMeldServiceRuntimeId,
|
|
40122
40268
|
bindingId: expectedRoute.bindingId,
|
|
40123
|
-
|
|
40269
|
+
configurationRevision: expectedRoute.configurationRevision,
|
|
40124
40270
|
agentControllerCollaborationMode: expectedRoute.agentControllerCollaborationMode,
|
|
40125
40271
|
agentControllerPermissionMode: expectedRoute.agentControllerPermissionMode,
|
|
40126
40272
|
...expectedRoute.modelSelection ? { modelSelection: expectedRoute.modelSelection } : {},
|
|
@@ -40130,13 +40276,20 @@ async function resolveExpectedRouteResolutions(input) {
|
|
|
40130
40276
|
localAdapterContainer: input.localAdapterContainer,
|
|
40131
40277
|
localControllers,
|
|
40132
40278
|
modelCatalog: input.modelCatalog
|
|
40133
|
-
})
|
|
40279
|
+
}) : {
|
|
40280
|
+
profileId: expectedRoute.agentProfileId,
|
|
40281
|
+
skipReason: "controller.binding.incomplete",
|
|
40282
|
+
status: "skipped"
|
|
40283
|
+
};
|
|
40134
40284
|
return {
|
|
40135
|
-
nextResolvedRoute:
|
|
40285
|
+
nextResolvedRoute: await resolveCatalogRouteWorkspaceState({
|
|
40136
40286
|
account: input.account,
|
|
40137
|
-
|
|
40138
|
-
|
|
40139
|
-
|
|
40287
|
+
bindingId: expectedRoute.bindingId,
|
|
40288
|
+
configurationRevision: expectedRoute.configurationRevision,
|
|
40289
|
+
defaultProjectId: expectedRoute.defaultProjectId ?? null,
|
|
40290
|
+
routeResolution: localResolution,
|
|
40291
|
+
profileId: expectedRoute.agentProfileId
|
|
40292
|
+
}),
|
|
40140
40293
|
profileName: expectedRoute.profileName
|
|
40141
40294
|
};
|
|
40142
40295
|
}));
|
|
@@ -40184,7 +40337,10 @@ async function resolvePerProfileBindingResolutions(input) {
|
|
|
40184
40337
|
return {
|
|
40185
40338
|
nextResolvedRoute: resolvedRoute.status === "accepted" ? await resolveCatalogRouteWorkspaceState({
|
|
40186
40339
|
account: input.account,
|
|
40187
|
-
|
|
40340
|
+
bindingId: resolvedRoute.route.bindingId ?? null,
|
|
40341
|
+
configurationRevision: resolvedRoute.route.configurationRevision ?? null,
|
|
40342
|
+
defaultProjectId: profile.defaultProjectId ?? null,
|
|
40343
|
+
routeResolution: resolvedRoute,
|
|
40188
40344
|
profileId: resolvedRoute.profileId
|
|
40189
40345
|
}) : resolvedRoute,
|
|
40190
40346
|
profileName
|
|
@@ -40196,19 +40352,15 @@ async function readPrimaryBindingForRouteCatalog(input) {
|
|
|
40196
40352
|
binding: null,
|
|
40197
40353
|
status: "ready"
|
|
40198
40354
|
};
|
|
40199
|
-
|
|
40200
|
-
|
|
40201
|
-
|
|
40202
|
-
|
|
40203
|
-
|
|
40204
|
-
|
|
40205
|
-
|
|
40206
|
-
|
|
40207
|
-
|
|
40208
|
-
skipReason: "profile.binding.read_unavailable",
|
|
40209
|
-
status: "skipped"
|
|
40210
|
-
};
|
|
40211
|
-
}
|
|
40355
|
+
const response = await input.bindingReads.readPrimaryBinding(input.profile);
|
|
40356
|
+
if (response.status === "unavailable") return {
|
|
40357
|
+
skipReason: "profile.binding.read_unavailable",
|
|
40358
|
+
status: "skipped"
|
|
40359
|
+
};
|
|
40360
|
+
return {
|
|
40361
|
+
binding: response.binding,
|
|
40362
|
+
status: "ready"
|
|
40363
|
+
};
|
|
40212
40364
|
}
|
|
40213
40365
|
async function repairLocalReplyStateOrThrow(input) {
|
|
40214
40366
|
const projectionRepairStartedAt = Date.now();
|
|
@@ -40267,17 +40419,23 @@ function replaceRouteCatalogMap(input) {
|
|
|
40267
40419
|
}
|
|
40268
40420
|
function createMutableRouteCatalogState(routeCatalog) {
|
|
40269
40421
|
return {
|
|
40422
|
+
...routeCatalog.expectedRoutesContractVersion ? { expectedRoutesContractVersion: routeCatalog.expectedRoutesContractVersion } : {},
|
|
40270
40423
|
fingerprint: buildRouteCatalogFingerprint(routeCatalog),
|
|
40271
40424
|
profileIds: [...routeCatalog.profileIds],
|
|
40272
40425
|
routeByProfileId: new Map(routeCatalog.routeByProfileId),
|
|
40273
|
-
skippedProfiles: [...routeCatalog.skippedProfiles]
|
|
40426
|
+
skippedProfiles: [...routeCatalog.skippedProfiles],
|
|
40427
|
+
workingFolderExpectedProfileIds: [...routeCatalog.workingFolderExpectedProfileIds ?? []],
|
|
40428
|
+
workingFolderObservations: [...routeCatalog.workingFolderObservations ?? []]
|
|
40274
40429
|
};
|
|
40275
40430
|
}
|
|
40276
40431
|
function createRouteCatalogFromMutableState(state) {
|
|
40277
40432
|
return {
|
|
40433
|
+
...state.expectedRoutesContractVersion ? { expectedRoutesContractVersion: state.expectedRoutesContractVersion } : {},
|
|
40278
40434
|
profileIds: [...state.profileIds],
|
|
40279
40435
|
routeByProfileId: new Map(state.routeByProfileId),
|
|
40280
|
-
skippedProfiles: [...state.skippedProfiles]
|
|
40436
|
+
skippedProfiles: [...state.skippedProfiles],
|
|
40437
|
+
workingFolderExpectedProfileIds: [...state.workingFolderExpectedProfileIds ?? []],
|
|
40438
|
+
workingFolderObservations: [...state.workingFolderObservations ?? []]
|
|
40281
40439
|
};
|
|
40282
40440
|
}
|
|
40283
40441
|
async function syncDaemonRouteCatalogState(input) {
|
|
@@ -40293,7 +40451,7 @@ async function syncDaemonRouteCatalogState(input) {
|
|
|
40293
40451
|
}
|
|
40294
40452
|
const nextFingerprint = buildRouteCatalogFingerprint(nextCatalog);
|
|
40295
40453
|
if (nextFingerprint === input.catalogState.fingerprint) {
|
|
40296
|
-
if (input.forceRegister || nextCatalog.profileIds.some((profileId) => !input.leasesByProfileId.has(profileId))) {
|
|
40454
|
+
if (input.forceRegister || nextCatalog.expectedRoutesContractVersion === "v4" || nextCatalog.profileIds.some((profileId) => !input.leasesByProfileId.has(profileId))) {
|
|
40297
40455
|
let registerResponse;
|
|
40298
40456
|
try {
|
|
40299
40457
|
registerResponse = await input.registerCatalog(nextCatalog);
|
|
@@ -40315,6 +40473,9 @@ async function syncDaemonRouteCatalogState(input) {
|
|
|
40315
40473
|
input.catalogState.profileIds = [...nextCatalog.profileIds];
|
|
40316
40474
|
input.catalogState.fingerprint = nextFingerprint;
|
|
40317
40475
|
input.catalogState.skippedProfiles = [...nextCatalog.skippedProfiles];
|
|
40476
|
+
input.catalogState.expectedRoutesContractVersion = nextCatalog.expectedRoutesContractVersion;
|
|
40477
|
+
input.catalogState.workingFolderExpectedProfileIds = [...nextCatalog.workingFolderExpectedProfileIds ?? []];
|
|
40478
|
+
input.catalogState.workingFolderObservations = [...nextCatalog.workingFolderObservations ?? []];
|
|
40318
40479
|
return {
|
|
40319
40480
|
registerResponse,
|
|
40320
40481
|
skippedProfiles: nextCatalog.skippedProfiles,
|
|
@@ -40322,6 +40483,9 @@ async function syncDaemonRouteCatalogState(input) {
|
|
|
40322
40483
|
};
|
|
40323
40484
|
}
|
|
40324
40485
|
input.catalogState.skippedProfiles = [...nextCatalog.skippedProfiles];
|
|
40486
|
+
input.catalogState.expectedRoutesContractVersion = nextCatalog.expectedRoutesContractVersion;
|
|
40487
|
+
input.catalogState.workingFolderExpectedProfileIds = [...nextCatalog.workingFolderExpectedProfileIds ?? []];
|
|
40488
|
+
input.catalogState.workingFolderObservations = [...nextCatalog.workingFolderObservations ?? []];
|
|
40325
40489
|
return {
|
|
40326
40490
|
skippedProfiles: nextCatalog.skippedProfiles,
|
|
40327
40491
|
status: "unchanged"
|
|
@@ -40352,6 +40516,9 @@ async function syncDaemonRouteCatalogState(input) {
|
|
|
40352
40516
|
input.catalogState.profileIds = [...nextCatalog.profileIds];
|
|
40353
40517
|
input.catalogState.fingerprint = nextFingerprint;
|
|
40354
40518
|
input.catalogState.skippedProfiles = [...nextCatalog.skippedProfiles];
|
|
40519
|
+
input.catalogState.expectedRoutesContractVersion = nextCatalog.expectedRoutesContractVersion;
|
|
40520
|
+
input.catalogState.workingFolderExpectedProfileIds = [...nextCatalog.workingFolderExpectedProfileIds ?? []];
|
|
40521
|
+
input.catalogState.workingFolderObservations = [...nextCatalog.workingFolderObservations ?? []];
|
|
40355
40522
|
return {
|
|
40356
40523
|
status: "changed",
|
|
40357
40524
|
diff,
|
|
@@ -40369,25 +40536,50 @@ function summarizeSkippedDaemonProfiles(skippedProfiles) {
|
|
|
40369
40536
|
return `${preview}; +${String(remainingCount)} more`;
|
|
40370
40537
|
}
|
|
40371
40538
|
async function resolveCatalogRouteWorkspaceState(input) {
|
|
40372
|
-
const workspace = await
|
|
40539
|
+
const workspace = await resolveCurrentEffectiveProfileWorkingFolderRuntime({
|
|
40373
40540
|
account: input.account,
|
|
40541
|
+
defaultProjectId: input.defaultProjectId,
|
|
40374
40542
|
openMeldProfileId: input.profileId,
|
|
40375
40543
|
mode: "inspect"
|
|
40376
40544
|
});
|
|
40545
|
+
const workingFolderObservation = buildWorkingFolderObservation({
|
|
40546
|
+
bindingId: input.bindingId,
|
|
40547
|
+
configurationRevision: input.configurationRevision,
|
|
40548
|
+
profileId: input.profileId,
|
|
40549
|
+
workspace
|
|
40550
|
+
});
|
|
40551
|
+
if (input.routeResolution.status === "skipped") return {
|
|
40552
|
+
...input.routeResolution,
|
|
40553
|
+
workingFolderObservation
|
|
40554
|
+
};
|
|
40377
40555
|
if (workspace.status === "missing") return {
|
|
40378
40556
|
profileId: input.profileId,
|
|
40379
40557
|
skipReason: "workspace.missing",
|
|
40380
|
-
status: "skipped"
|
|
40558
|
+
status: "skipped",
|
|
40559
|
+
workingFolderObservation
|
|
40381
40560
|
};
|
|
40382
40561
|
if (workspace.status === "invalid") return {
|
|
40383
40562
|
profileId: input.profileId,
|
|
40384
40563
|
skipReason: "workspace.invalid",
|
|
40385
|
-
status: "skipped"
|
|
40564
|
+
status: "skipped",
|
|
40565
|
+
workingFolderObservation
|
|
40386
40566
|
};
|
|
40387
40567
|
return {
|
|
40388
40568
|
profileId: input.profileId,
|
|
40389
|
-
route:
|
|
40390
|
-
|
|
40569
|
+
route: {
|
|
40570
|
+
...input.routeResolution.route,
|
|
40571
|
+
workingFolderRuntime: workspace
|
|
40572
|
+
},
|
|
40573
|
+
status: "accepted",
|
|
40574
|
+
workingFolderObservation
|
|
40575
|
+
};
|
|
40576
|
+
}
|
|
40577
|
+
function buildWorkingFolderObservation(input) {
|
|
40578
|
+
return {
|
|
40579
|
+
...input.workspace.workingFolderFact,
|
|
40580
|
+
bindingId: input.bindingId,
|
|
40581
|
+
configurationRevision: input.configurationRevision,
|
|
40582
|
+
profileId: input.profileId
|
|
40391
40583
|
};
|
|
40392
40584
|
}
|
|
40393
40585
|
function formatDaemonProfileSkipReason(skipReason) {
|
|
@@ -40428,7 +40620,14 @@ function buildRouteCatalogFingerprint(routeCatalog) {
|
|
|
40428
40620
|
contextIdMappingSpec: route?.contextIdMappingSpec ? {
|
|
40429
40621
|
sourceField: route.contextIdMappingSpec.sourceField,
|
|
40430
40622
|
mappingVersion: route.contextIdMappingSpec.mappingVersion
|
|
40431
|
-
} : null
|
|
40623
|
+
} : null,
|
|
40624
|
+
workingFolderFact: route?.workingFolderRuntime?.workingFolderFact ? {
|
|
40625
|
+
defaultProjectId: route.workingFolderRuntime.workingFolderFact.defaultProjectId,
|
|
40626
|
+
localProjectBindingGeneration: route.workingFolderRuntime.workingFolderFact.localProjectBindingGeneration,
|
|
40627
|
+
source: route.workingFolderRuntime.workingFolderFact.source,
|
|
40628
|
+
status: route.workingFolderRuntime.workingFolderFact.status
|
|
40629
|
+
} : null,
|
|
40630
|
+
workingFolderPathFingerprint: route?.workingFolderRuntime?.effectiveRuntimeWorkingDirectory ? buildRuntimeWorkspaceFingerprint(route.workingFolderRuntime.effectiveRuntimeWorkingDirectory) : null
|
|
40432
40631
|
};
|
|
40433
40632
|
});
|
|
40434
40633
|
const skippedProfiles = routeCatalog.skippedProfiles.map((profile) => ({
|
|
@@ -40436,9 +40635,22 @@ function buildRouteCatalogFingerprint(routeCatalog) {
|
|
|
40436
40635
|
profileName: profile.profileName,
|
|
40437
40636
|
skipReason: profile.skipReason
|
|
40438
40637
|
}));
|
|
40638
|
+
const workingFolderObservations = (routeCatalog.workingFolderObservations ?? []).map((observation) => ({
|
|
40639
|
+
bindingId: observation.bindingId,
|
|
40640
|
+
configurationRevision: observation.configurationRevision,
|
|
40641
|
+
defaultProjectId: observation.defaultProjectId,
|
|
40642
|
+
localProjectBindingGeneration: observation.localProjectBindingGeneration,
|
|
40643
|
+
profileId: observation.profileId,
|
|
40644
|
+
reasonCode: observation.reasonCode,
|
|
40645
|
+
source: observation.source,
|
|
40646
|
+
status: observation.status
|
|
40647
|
+
}));
|
|
40439
40648
|
return JSON.stringify({
|
|
40440
40649
|
entries,
|
|
40441
|
-
|
|
40650
|
+
expectedRoutesContractVersion: routeCatalog.expectedRoutesContractVersion ?? null,
|
|
40651
|
+
skippedProfiles,
|
|
40652
|
+
workingFolderExpectedProfileIds: routeCatalog.workingFolderExpectedProfileIds ?? [],
|
|
40653
|
+
workingFolderObservations
|
|
40442
40654
|
});
|
|
40443
40655
|
}
|
|
40444
40656
|
//#endregion
|
|
@@ -40636,62 +40848,8 @@ function deserializeRouteCatalog(cache) {
|
|
|
40636
40848
|
return {
|
|
40637
40849
|
profileIds: [...cache.profileIds],
|
|
40638
40850
|
routeByProfileId,
|
|
40639
|
-
skippedProfiles: [...cache.skippedProfiles]
|
|
40640
|
-
|
|
40641
|
-
}
|
|
40642
|
-
//#endregion
|
|
40643
|
-
//#region src/profile-workspace/effective-runtime-resolution.ts
|
|
40644
|
-
async function resolveEffectiveProfileWorkingFolderRuntime(input) {
|
|
40645
|
-
if (!input.defaultProjectId) return await resolveProfileWorkspaceRuntime({
|
|
40646
|
-
mode: input.mode,
|
|
40647
|
-
openMeldProfileId: input.openMeldProfileId
|
|
40648
|
-
});
|
|
40649
|
-
const connection = (await listProjectConnectionsWithStatus({})).find((item) => item.projectId === input.defaultProjectId && item.isDefault);
|
|
40650
|
-
if (!connection) return {
|
|
40651
|
-
configPath: null,
|
|
40652
|
-
configuredWorkspacePath: null,
|
|
40653
|
-
defaultProjectFailureReason: "missing_connection",
|
|
40654
|
-
defaultProjectId: input.defaultProjectId,
|
|
40655
|
-
reasonCode: "workspace.missing",
|
|
40656
|
-
reasonText: `Default Project ${input.defaultProjectId} has no local folder connection on this computer.`,
|
|
40657
|
-
status: "missing",
|
|
40658
|
-
workingFolderSource: "default_project",
|
|
40659
|
-
workspaceMode: null
|
|
40660
|
-
};
|
|
40661
|
-
if (connection.status === "missing") return {
|
|
40662
|
-
configPath: null,
|
|
40663
|
-
configuredWorkspacePath: connection.repositoryPath,
|
|
40664
|
-
defaultProjectBindingGeneration: connection.bindingGeneration,
|
|
40665
|
-
defaultProjectFailureReason: "folder_missing",
|
|
40666
|
-
defaultProjectId: input.defaultProjectId,
|
|
40667
|
-
reasonCode: "workspace.missing",
|
|
40668
|
-
reasonText: `The local folder connected to Default Project ${input.defaultProjectId} is missing on this computer.`,
|
|
40669
|
-
status: "missing",
|
|
40670
|
-
workingFolderSource: "default_project",
|
|
40671
|
-
workspaceMode: null
|
|
40672
|
-
};
|
|
40673
|
-
const runtimeContext = providerDispatchRuntimeContextSchema.safeParse({ providerRuntimeWorkingDirectory: connection.repositoryPath });
|
|
40674
|
-
if (!runtimeContext.success) return {
|
|
40675
|
-
configPath: null,
|
|
40676
|
-
configuredWorkspacePath: connection.repositoryPath,
|
|
40677
|
-
defaultProjectBindingGeneration: connection.bindingGeneration,
|
|
40678
|
-
defaultProjectId: input.defaultProjectId,
|
|
40679
|
-
reasonCode: "workspace.invalid",
|
|
40680
|
-
reasonText: `The local folder connected to Default Project ${input.defaultProjectId} is not a valid runtime working directory.`,
|
|
40681
|
-
status: "invalid",
|
|
40682
|
-
workingFolderSource: "default_project",
|
|
40683
|
-
workspaceMode: null
|
|
40684
|
-
};
|
|
40685
|
-
return {
|
|
40686
|
-
configPath: null,
|
|
40687
|
-
configuredWorkspacePath: connection.repositoryPath,
|
|
40688
|
-
defaultProjectBindingGeneration: connection.bindingGeneration,
|
|
40689
|
-
defaultProjectId: input.defaultProjectId,
|
|
40690
|
-
effectiveRuntimeWorkingDirectory: connection.repositoryPath,
|
|
40691
|
-
runtimeContext: runtimeContext.data,
|
|
40692
|
-
status: "ready",
|
|
40693
|
-
workingFolderSource: "default_project",
|
|
40694
|
-
workspaceMode: null
|
|
40851
|
+
skippedProfiles: [...cache.skippedProfiles],
|
|
40852
|
+
workingFolderObservations: []
|
|
40695
40853
|
};
|
|
40696
40854
|
}
|
|
40697
40855
|
//#endregion
|
|
@@ -42495,7 +42653,8 @@ async function resolveDeviceReplyReadinessStatus(input = {}) {
|
|
|
42495
42653
|
projection: runtimeProjection,
|
|
42496
42654
|
runtimeWorkdir: input.runtimeWorkdir
|
|
42497
42655
|
});
|
|
42498
|
-
const profileWorkspaceRuntimeResolution = input.profileWorkspaceRuntimeResolution ?? (input.profile?.profileKind === "agent" ? await
|
|
42656
|
+
const profileWorkspaceRuntimeResolution = input.profileWorkspaceRuntimeResolution ?? (input.profile?.profileKind === "agent" ? await resolveEffectiveProfileWorkingFolderRuntime({
|
|
42657
|
+
defaultProjectId: input.profile.defaultProjectId,
|
|
42499
42658
|
openMeldProfileId: input.profile.openMeldProfileId,
|
|
42500
42659
|
mode: "inspect"
|
|
42501
42660
|
}) : null);
|
|
@@ -42553,7 +42712,8 @@ async function resolveAgentReplyReadinessStatus(input) {
|
|
|
42553
42712
|
profile: input.profile,
|
|
42554
42713
|
profileWorkspaceRuntimeResolution: input.profileWorkspaceRuntimeResolution
|
|
42555
42714
|
});
|
|
42556
|
-
const profileWorkspaceRuntimeResolution = input.profileWorkspaceRuntimeResolution ?? await
|
|
42715
|
+
const profileWorkspaceRuntimeResolution = input.profileWorkspaceRuntimeResolution ?? await resolveEffectiveProfileWorkingFolderRuntime({
|
|
42716
|
+
defaultProjectId: input.profile.defaultProjectId,
|
|
42557
42717
|
openMeldProfileId: input.profile.openMeldProfileId,
|
|
42558
42718
|
mode: "inspect"
|
|
42559
42719
|
});
|
|
@@ -51296,10 +51456,11 @@ function resolveWakeAvailability(input) {
|
|
|
51296
51456
|
function resolvePublicWakeAvailability(agentMember) {
|
|
51297
51457
|
const { agentWakeAvailability } = resolveSpaceMemberAgentPublicCollaborationView(agentMember);
|
|
51298
51458
|
if (!agentWakeAvailability) return null;
|
|
51459
|
+
const refreshingAvailable = agentWakeAvailability.status === "available_for_wake" && agentWakeAvailability.isRefreshing;
|
|
51299
51460
|
return {
|
|
51300
|
-
status: agentWakeAvailability.status === "available_for_wake" ? "ready" : "blocked",
|
|
51301
|
-
reasonCodes: agentWakeAvailability.reasonCode ? [agentWakeAvailability.reasonCode] : [],
|
|
51302
|
-
reasonText: agentWakeAvailability.summary
|
|
51461
|
+
status: agentWakeAvailability.status === "available_for_wake" && !refreshingAvailable ? "ready" : "blocked",
|
|
51462
|
+
reasonCodes: !refreshingAvailable && agentWakeAvailability.reasonCode ? [agentWakeAvailability.reasonCode] : [],
|
|
51463
|
+
reasonText: refreshingAvailable ? "Checking whether this agent can reply." : agentWakeAvailability.summary
|
|
51303
51464
|
};
|
|
51304
51465
|
}
|
|
51305
51466
|
function buildActiveSpaceMemberInputs(snapshot) {
|
|
@@ -51997,12 +52158,15 @@ function listSpaceMentionRelationChoices(input) {
|
|
|
51997
52158
|
const choices = [];
|
|
51998
52159
|
for (const relation of MENTION_RELATION_ORDER) {
|
|
51999
52160
|
if (!input.allowedRelations[relation]) continue;
|
|
52161
|
+
const wakeBlocked = relation === "wake" && input.wakeAvailability.status !== "ready";
|
|
52000
52162
|
choices.push({
|
|
52001
52163
|
canonicalLiteral: formatCanonicalMentionLiteral({
|
|
52002
52164
|
name: input.primaryMentionLabel,
|
|
52003
52165
|
type: relation
|
|
52004
52166
|
}),
|
|
52005
52167
|
description: RELATION_DESCRIPTIONS[relation],
|
|
52168
|
+
disabled: wakeBlocked,
|
|
52169
|
+
disabledReason: wakeBlocked ? input.wakeAvailability.reasonText : null,
|
|
52006
52170
|
label: RELATION_LABELS[relation],
|
|
52007
52171
|
relation
|
|
52008
52172
|
});
|
|
@@ -52380,7 +52544,7 @@ function fallbackCheckingAvailabilityPresentation() {
|
|
|
52380
52544
|
availabilityIsRefreshing: true,
|
|
52381
52545
|
availabilityPhase: "checking_status",
|
|
52382
52546
|
availabilityReasonCode: null,
|
|
52383
|
-
availabilitySummary: "Checking this agent
|
|
52547
|
+
availabilitySummary: "Checking whether this agent can reply.",
|
|
52384
52548
|
availabilityTooltip: "Checking Wake availability"
|
|
52385
52549
|
};
|
|
52386
52550
|
}
|
|
@@ -68156,6 +68320,7 @@ function didLocalProjectConnectionsChange(frame) {
|
|
|
68156
68320
|
case "daemon.local_project_control.connect_declared_path_result": return "status" in frame.payload.result && frame.payload.result.status === "connected";
|
|
68157
68321
|
case "daemon.local_project_control.remove_connection_result": return "status" in frame.payload.result && frame.payload.result.status === "removed";
|
|
68158
68322
|
case "daemon.local_project_control.remove_missing_connections_result": return "removedCount" in frame.payload.result && frame.payload.result.removedCount > 0;
|
|
68323
|
+
case "daemon.local_project_control.set_default_connection_result": return "status" in frame.payload.result && frame.payload.result.status === "updated";
|
|
68159
68324
|
default: return false;
|
|
68160
68325
|
}
|
|
68161
68326
|
}
|
|
@@ -68866,6 +69031,62 @@ function buildErrorResultFrame(frame, error) {
|
|
|
68866
69031
|
return buildResultFrame(`${frame.code}_result`, frame.payload.requestId, error);
|
|
68867
69032
|
}
|
|
68868
69033
|
//#endregion
|
|
69034
|
+
//#region src/local-service/reporting/local-wake-route-report.ts
|
|
69035
|
+
function createLocalWakeRouteReport(input) {
|
|
69036
|
+
const lane = daemonServiceLaneSchema.safeParse(input.lane);
|
|
69037
|
+
if (!lane.success) throw invalidV4Report("invalid OpenMeld Service lane for route report");
|
|
69038
|
+
const profileConfigurationRevisions = resolveProfileConfigurationRevisions(input.routeCatalog);
|
|
69039
|
+
const baseReport = {
|
|
69040
|
+
daemonSessionId: input.daemonSessionId,
|
|
69041
|
+
deviceId: input.deviceId,
|
|
69042
|
+
includedProfileIds: [...input.routeCatalog.profileIds],
|
|
69043
|
+
lane: lane.data,
|
|
69044
|
+
reportedAtMs: input.reportedAtMs,
|
|
69045
|
+
serviceVersion: input.serviceVersion,
|
|
69046
|
+
...profileConfigurationRevisions ? { profileConfigurationRevisions } : {},
|
|
69047
|
+
skippedProfiles: [...input.routeCatalog.skippedProfiles]
|
|
69048
|
+
};
|
|
69049
|
+
if (input.routeCatalog.expectedRoutesContractVersion !== "v4") return baseReport;
|
|
69050
|
+
const expectedProfileIds = [...input.routeCatalog.workingFolderExpectedProfileIds ?? []].sort((left, right) => left.localeCompare(right));
|
|
69051
|
+
const observations = parseV4WorkingFolderObservations(input.routeCatalog.workingFolderObservations ?? []);
|
|
69052
|
+
const observedProfileIds = observations.map((observation) => observation.profileId).sort((left, right) => left.localeCompare(right));
|
|
69053
|
+
if (new Set(expectedProfileIds).size !== expectedProfileIds.length || new Set(observedProfileIds).size !== observedProfileIds.length || expectedProfileIds.length !== observedProfileIds.length || expectedProfileIds.some((profileId, index) => profileId !== observedProfileIds[index])) throw invalidV4Report("negotiated v4 working-folder observations do not exactly cover expected routes");
|
|
69054
|
+
return {
|
|
69055
|
+
...baseReport,
|
|
69056
|
+
expectedRoutesContractVersion: "v4",
|
|
69057
|
+
workingFolderObservations: observations
|
|
69058
|
+
};
|
|
69059
|
+
}
|
|
69060
|
+
function parseV4WorkingFolderObservations(observations) {
|
|
69061
|
+
return observations.map((observation) => {
|
|
69062
|
+
const parsed = localWakeRouteWorkingFolderObservationSchema.safeParse(observation);
|
|
69063
|
+
if (!parsed.success) throw invalidV4Report(`invalid negotiated v4 working-folder observation for ${observation.profileId}`);
|
|
69064
|
+
return parsed.data;
|
|
69065
|
+
});
|
|
69066
|
+
}
|
|
69067
|
+
function resolveProfileConfigurationRevisions(routeCatalog) {
|
|
69068
|
+
if (routeCatalog.profileIds.length === 0) return null;
|
|
69069
|
+
const revisions = routeCatalog.profileIds.map((profileId) => {
|
|
69070
|
+
const configurationRevision = routeCatalog.routeByProfileId.get(profileId)?.configurationRevision ?? null;
|
|
69071
|
+
const bindingId = routeCatalog.routeByProfileId.get(profileId)?.bindingId ?? null;
|
|
69072
|
+
return configurationRevision === null || bindingId === null ? null : {
|
|
69073
|
+
bindingId,
|
|
69074
|
+
configurationRevision,
|
|
69075
|
+
profileId
|
|
69076
|
+
};
|
|
69077
|
+
});
|
|
69078
|
+
return revisions.every((revision) => revision !== null) ? revisions : null;
|
|
69079
|
+
}
|
|
69080
|
+
function hasCompleteProfileConfigurationRevisions(routeCatalog) {
|
|
69081
|
+
return resolveProfileConfigurationRevisions(routeCatalog) !== null;
|
|
69082
|
+
}
|
|
69083
|
+
function invalidV4Report(message) {
|
|
69084
|
+
return new DaemonServiceRunError({
|
|
69085
|
+
code: "daemon.run.register_payload_invalid",
|
|
69086
|
+
message
|
|
69087
|
+
});
|
|
69088
|
+
}
|
|
69089
|
+
//#endregion
|
|
68869
69090
|
//#region src/local-service/reporting/provider-conversation-proof-sync.ts
|
|
68870
69091
|
const PROVIDER_CONVERSATION_PROOF_FALLBACK_TTL_MS = 10 * 6e4;
|
|
68871
69092
|
async function syncLocalServiceProviderConversationProofs(input) {
|
|
@@ -68873,16 +69094,14 @@ async function syncLocalServiceProviderConversationProofs(input) {
|
|
|
68873
69094
|
try {
|
|
68874
69095
|
proofInputs = (await Promise.all([...input.routeCatalog.routeByProfileId.values()].map(async (route) => {
|
|
68875
69096
|
if (!isCodexAppServerRouteWithConversation(route)) return null;
|
|
68876
|
-
const workspace =
|
|
68877
|
-
|
|
68878
|
-
mode: "dispatch"
|
|
68879
|
-
});
|
|
69097
|
+
const workspace = route.workingFolderRuntime;
|
|
69098
|
+
if (!workspace) return null;
|
|
68880
69099
|
const proof = await resolveLocalProviderConversationProof({
|
|
68881
69100
|
agentControllerConversationId: route.agentControllerConversationId,
|
|
68882
69101
|
boundAgentControllerRef: route.agentControllerRef,
|
|
68883
69102
|
launchContract: route.launchContract ?? null,
|
|
68884
69103
|
profileAgentControllerRef: route.agentControllerRef,
|
|
68885
|
-
runtimeWorkingDirectory: workspace.
|
|
69104
|
+
runtimeWorkingDirectory: workspace.effectiveRuntimeWorkingDirectory,
|
|
68886
69105
|
transportMode: route.transportMode
|
|
68887
69106
|
});
|
|
68888
69107
|
return toRuntimeProviderConversationProofInput({
|
|
@@ -69316,35 +69535,34 @@ function createDaemonStreamKeepalive(input) {
|
|
|
69316
69535
|
stop
|
|
69317
69536
|
};
|
|
69318
69537
|
}
|
|
69319
|
-
|
|
69320
|
-
|
|
69321
|
-
|
|
69322
|
-
|
|
69323
|
-
|
|
69324
|
-
|
|
69325
|
-
|
|
69538
|
+
async function resolveDispatchWorkingFolderRuntimeContext(input) {
|
|
69539
|
+
const route = input.routeConfig;
|
|
69540
|
+
const workingFolderRuntime = route?.workingFolderRuntime;
|
|
69541
|
+
if (!(route && workingFolderRuntime)) rejectCurrentWorkingFolderFact(input, "missing", "the current route has no working-folder observation");
|
|
69542
|
+
if (input.defaultProjectIdWasProvided && input.defaultProjectId !== workingFolderRuntime.workingFolderFact.defaultProjectId) rejectCurrentWorkingFolderFact(input, "identity_mismatch", "the delivered Default Project does not match the current route observation");
|
|
69543
|
+
const identity = input.executionIdentity.core;
|
|
69544
|
+
const controllerSnapshot = input.controllerSnapshot;
|
|
69545
|
+
if (route.profileId !== input.targetProfileId || identity.targetProfileId !== input.targetProfileId || route.bindingId !== identity.bindingId || controllerSnapshot.bindingId !== identity.bindingId || typeof route.configurationRevision !== "number" || typeof controllerSnapshot.configurationRevision !== "number" || route.configurationRevision !== controllerSnapshot.configurationRevision || route.agentControllerRef !== identity.agentControllerRef || controllerSnapshot.agentControllerRef !== identity.agentControllerRef || route.openMeldServiceRuntimeId !== identity.openMeldServiceRuntimeId.value) rejectCurrentWorkingFolderFact(input, "identity_mismatch", "the current route does not match the accepted dispatch identity");
|
|
69546
|
+
const observedAtMs = workingFolderRuntime.workingFolderFact.observedAtMs;
|
|
69547
|
+
const nowMs = input.nowMs ?? Date.now();
|
|
69548
|
+
if (observedAtMs > nowMs || nowMs - observedAtMs >= 2e5) rejectCurrentWorkingFolderFact(input, "stale", "the current route working-folder observation has expired");
|
|
69549
|
+
const currentWorkingFolder = await resolveCurrentEffectiveProfileWorkingFolderRuntime({
|
|
69550
|
+
defaultProjectId: workingFolderRuntime.workingFolderFact.defaultProjectId,
|
|
69551
|
+
mode: "dispatch",
|
|
69552
|
+
openMeldProfileId: input.targetProfileId
|
|
69326
69553
|
});
|
|
69327
|
-
|
|
69328
|
-
if (
|
|
69329
|
-
|
|
69330
|
-
|
|
69331
|
-
|
|
69332
|
-
|
|
69333
|
-
|
|
69334
|
-
|
|
69335
|
-
|
|
69336
|
-
projectId: resolution.defaultProjectId
|
|
69337
|
-
}
|
|
69338
|
-
});
|
|
69339
|
-
}
|
|
69340
|
-
throw new DaemonServiceRunError({
|
|
69341
|
-
code: "profile.workspace.missing",
|
|
69342
|
-
message: `profile.workspace.missing: ${resolution.reasonText}`
|
|
69343
|
-
});
|
|
69344
|
-
}
|
|
69554
|
+
const currentFact = currentWorkingFolder.workingFolderFact;
|
|
69555
|
+
if (currentWorkingFolder.status !== "ready" || currentFact.source !== workingFolderRuntime.workingFolderFact.source || currentFact.defaultProjectId !== workingFolderRuntime.workingFolderFact.defaultProjectId || currentFact.localProjectBindingGeneration !== workingFolderRuntime.workingFolderFact.localProjectBindingGeneration || currentWorkingFolder.runtimeContext.providerRuntimeWorkingDirectory !== workingFolderRuntime.runtimeContext.providerRuntimeWorkingDirectory) rejectCurrentWorkingFolderFact(input, "changed", "the effective working folder changed after this route was observed");
|
|
69556
|
+
return workingFolderRuntime.runtimeContext;
|
|
69557
|
+
}
|
|
69558
|
+
function rejectCurrentWorkingFolderFact(input, reason, detail) {
|
|
69559
|
+
input.onCurrentWorkingFolderFactRejected?.();
|
|
69560
|
+
throwCurrentWorkingFolderFactError(reason, detail);
|
|
69561
|
+
}
|
|
69562
|
+
function throwCurrentWorkingFolderFactError(reason, detail) {
|
|
69345
69563
|
throw new DaemonServiceRunError({
|
|
69346
|
-
code:
|
|
69347
|
-
message: `profile.
|
|
69564
|
+
code: `profile.working_folder.current_fact_${reason}`,
|
|
69565
|
+
message: `profile.working_folder.current_fact_${reason}: ${detail}`
|
|
69348
69566
|
});
|
|
69349
69567
|
}
|
|
69350
69568
|
async function prepareDispatchRuntimeExecution(input) {
|
|
@@ -69858,10 +70076,14 @@ function readSignalText(signal) {
|
|
|
69858
70076
|
return signal.type === "signal.text" || signal.type === "signal.status" || signal.type === "signal.system_notice" ? signal.data.text : "";
|
|
69859
70077
|
}
|
|
69860
70078
|
function isSignalInCurrentWakeScope(signal, currentWakeTargetProfileIds, wakeSourceSignalId) {
|
|
69861
|
-
if (
|
|
70079
|
+
if (signal.profile.kind === "human") return !isNewHumanWake(signal);
|
|
70080
|
+
if (currentWakeTargetProfileIds.size === 0) return true;
|
|
69862
70081
|
const publication = buildSpaceRoundSignalPublication(signal);
|
|
69863
70082
|
return Boolean(publication?.actorProfileId && currentWakeTargetProfileIds.has(publication.actorProfileId) && publication.replyToSignalId === wakeSourceSignalId);
|
|
69864
70083
|
}
|
|
70084
|
+
function isNewHumanWake(signal) {
|
|
70085
|
+
return Boolean(signal.type === "signal.text" && signal.data.messageEnvelope?.activationTargets.length);
|
|
70086
|
+
}
|
|
69865
70087
|
function readCollaborationActorProfileId(signal) {
|
|
69866
70088
|
return buildSpaceRoundSignalPublication(signal)?.actorProfileId ?? null;
|
|
69867
70089
|
}
|
|
@@ -70968,6 +71190,7 @@ function enqueueDispatchDeliverFrame(input) {
|
|
|
70968
71190
|
localAdapterContainer: input.localAdapterContainer,
|
|
70969
71191
|
profileOwnerName: input.profileOwnerName,
|
|
70970
71192
|
profileOwnerUserId: input.profileOwnerUserId,
|
|
71193
|
+
requestCurrentWorkingFolderFactRefresh: input.requestCurrentWorkingFolderFactRefresh,
|
|
70971
71194
|
presenter: input.presenter,
|
|
70972
71195
|
routeByProfileId: input.routeByProfileId,
|
|
70973
71196
|
socket: input.socket
|
|
@@ -71421,9 +71644,14 @@ async function handleDispatchDeliverFrame(input) {
|
|
|
71421
71644
|
let agentControllerConversationOverride = null;
|
|
71422
71645
|
let dispatchSpaceActionContext = null;
|
|
71423
71646
|
try {
|
|
71424
|
-
dispatchRuntimeContext = await
|
|
71647
|
+
dispatchRuntimeContext = await resolveDispatchWorkingFolderRuntimeContext({
|
|
71648
|
+
controllerSnapshot: input.deliverRequest.payload.controllerSnapshot,
|
|
71425
71649
|
defaultProjectId: parsedTask.defaultProjectId,
|
|
71426
|
-
|
|
71650
|
+
defaultProjectIdWasProvided: Object.hasOwn(input.deliverRequest.payload, "defaultProjectId"),
|
|
71651
|
+
executionIdentity: parsedTask.executionIdentity,
|
|
71652
|
+
onCurrentWorkingFolderFactRejected: input.requestCurrentWorkingFolderFactRefresh,
|
|
71653
|
+
routeConfig,
|
|
71654
|
+
targetProfileId: parsedTask.targetProfileId
|
|
71427
71655
|
});
|
|
71428
71656
|
const runtimePreparation = await prepareDispatchRuntimeExecution({
|
|
71429
71657
|
agentControllerRef: parsedTask.agentControllerRef,
|
|
@@ -74692,6 +74920,7 @@ function handleDaemonSocketFrame(input) {
|
|
|
74692
74920
|
payload: input.parsedFrame.payload,
|
|
74693
74921
|
profileOwnerName: input.profileOwnerName,
|
|
74694
74922
|
profileOwnerUserId: input.profileOwnerUserId,
|
|
74923
|
+
requestCurrentWorkingFolderFactRefresh: input.requestCurrentWorkingFolderFactRefresh,
|
|
74695
74924
|
presenter: input.presenter,
|
|
74696
74925
|
routeByProfileId: input.routeByProfileId,
|
|
74697
74926
|
socket: input.socket
|
|
@@ -74927,6 +75156,10 @@ function buildShutdownHeartbeatFacts(input) {
|
|
|
74927
75156
|
function resolveHeartbeatIdleWaiters(waiters) {
|
|
74928
75157
|
while (waiters.length > 0) waiters.shift()?.();
|
|
74929
75158
|
}
|
|
75159
|
+
function resolveCatalogSyncSignalMarker(signal) {
|
|
75160
|
+
if (!signal) return null;
|
|
75161
|
+
return signal.signalId ?? signal.updatedAt;
|
|
75162
|
+
}
|
|
74930
75163
|
const HEARTBEAT_RUNTIME_STATE_WRITE_TIMEOUT_MS = HEARTBEAT_RESPONSE_TIMEOUT_MS;
|
|
74931
75164
|
function resolveBootstrapCatalogSyncPlan(input) {
|
|
74932
75165
|
if (input.isRouteCatalogResolved) return {
|
|
@@ -75133,7 +75366,7 @@ async function runDaemonSocketSession(input) {
|
|
|
75133
75366
|
let pendingFreshAgentControllerReportSyncPromise = null;
|
|
75134
75367
|
let latestCatalogSyncStatus = null;
|
|
75135
75368
|
let latestSkippedProfilesFingerprint = null;
|
|
75136
|
-
let
|
|
75369
|
+
let latestCatalogSyncSignalMarker = null;
|
|
75137
75370
|
let forceCatalogSyncReason = null;
|
|
75138
75371
|
let pendingLocalExecutionEvidenceRefreshReason = null;
|
|
75139
75372
|
const pendingRouteCatalogSyncRequests = [];
|
|
@@ -75342,7 +75575,7 @@ async function runDaemonSocketSession(input) {
|
|
|
75342
75575
|
capabilities: resolveDaemonCapabilities({
|
|
75343
75576
|
localAdapterContainer: input.localAdapterContainer,
|
|
75344
75577
|
localComponentsStatus,
|
|
75345
|
-
profileConfigurationRevision:
|
|
75578
|
+
profileConfigurationRevision: hasCompleteProfileConfigurationRevisions(input.routeCatalogState)
|
|
75346
75579
|
}),
|
|
75347
75580
|
sentAtMs: Date.now()
|
|
75348
75581
|
});
|
|
@@ -75500,8 +75733,9 @@ async function runDaemonSocketSession(input) {
|
|
|
75500
75733
|
const pollCatalogSyncSignal = async () => {
|
|
75501
75734
|
const signal = await readDaemonCatalogSyncSignal();
|
|
75502
75735
|
if (!signal) return;
|
|
75503
|
-
|
|
75504
|
-
|
|
75736
|
+
const signalMarker = resolveCatalogSyncSignalMarker(signal);
|
|
75737
|
+
if (signalMarker === latestCatalogSyncSignalMarker) return;
|
|
75738
|
+
latestCatalogSyncSignalMarker = signalMarker;
|
|
75505
75739
|
requestLocalExecutionEvidenceRefresh({
|
|
75506
75740
|
reason: "local_state_changed",
|
|
75507
75741
|
scheduleReason: "catalog_sync_signal"
|
|
@@ -75518,32 +75752,6 @@ async function runDaemonSocketSession(input) {
|
|
|
75518
75752
|
};
|
|
75519
75753
|
let hasLoggedWaitingForProfiles = (input.isRouteCatalogResolved?.() ?? true) && input.routeCatalogState.profileIds.length === 0;
|
|
75520
75754
|
const serviceVersion = resolveCurrentDaemonExpectedVersion();
|
|
75521
|
-
const resolveProfileConfigurationRevisions = (routeCatalog) => {
|
|
75522
|
-
if (routeCatalog.profileIds.length === 0) return null;
|
|
75523
|
-
const revisions = routeCatalog.profileIds.map((profileId) => {
|
|
75524
|
-
const configurationRevision = routeCatalog.routeByProfileId.get(profileId)?.configurationRevision ?? null;
|
|
75525
|
-
const bindingId = routeCatalog.routeByProfileId.get(profileId)?.bindingId ?? null;
|
|
75526
|
-
return configurationRevision === null || bindingId === null ? null : {
|
|
75527
|
-
bindingId,
|
|
75528
|
-
configurationRevision,
|
|
75529
|
-
profileId
|
|
75530
|
-
};
|
|
75531
|
-
});
|
|
75532
|
-
return revisions.every((revision) => revision !== null) ? revisions : null;
|
|
75533
|
-
};
|
|
75534
|
-
const createLocalWakeRouteReport = (routeCatalog) => {
|
|
75535
|
-
const profileConfigurationRevisions = resolveProfileConfigurationRevisions(routeCatalog);
|
|
75536
|
-
return {
|
|
75537
|
-
reportedAtMs: Date.now(),
|
|
75538
|
-
daemonSessionId: input.daemonSessionId,
|
|
75539
|
-
deviceId: input.deviceId,
|
|
75540
|
-
lane: input.lane,
|
|
75541
|
-
serviceVersion,
|
|
75542
|
-
includedProfileIds: [...routeCatalog.profileIds],
|
|
75543
|
-
...profileConfigurationRevisions ? { profileConfigurationRevisions } : {},
|
|
75544
|
-
skippedProfiles: [...routeCatalog.skippedProfiles]
|
|
75545
|
-
};
|
|
75546
|
-
};
|
|
75547
75755
|
const resolveSessionLocalComponentsStatus = async () => {
|
|
75548
75756
|
try {
|
|
75549
75757
|
return await resolveLocalComponentsStatus();
|
|
@@ -75568,11 +75776,18 @@ async function runDaemonSocketSession(input) {
|
|
|
75568
75776
|
serviceVersion,
|
|
75569
75777
|
connectionGeneration,
|
|
75570
75778
|
profileIds: routeCatalog.profileIds,
|
|
75571
|
-
localWakeRouteReport: createLocalWakeRouteReport(
|
|
75779
|
+
localWakeRouteReport: createLocalWakeRouteReport({
|
|
75780
|
+
daemonSessionId: input.daemonSessionId,
|
|
75781
|
+
deviceId: input.deviceId,
|
|
75782
|
+
lane: input.lane,
|
|
75783
|
+
reportedAtMs: Date.now(),
|
|
75784
|
+
routeCatalog,
|
|
75785
|
+
serviceVersion
|
|
75786
|
+
}),
|
|
75572
75787
|
capabilities: resolveDaemonCapabilities({
|
|
75573
75788
|
localAdapterContainer: input.localAdapterContainer,
|
|
75574
75789
|
localComponentsStatus,
|
|
75575
|
-
profileConfigurationRevision:
|
|
75790
|
+
profileConfigurationRevision: hasCompleteProfileConfigurationRevisions(routeCatalog)
|
|
75576
75791
|
}),
|
|
75577
75792
|
runtimeContract: { epoch: DAEMON_RUNTIME_CONTRACT_EPOCH },
|
|
75578
75793
|
connectedAtMs: Date.now()
|
|
@@ -76432,7 +76647,13 @@ async function runDaemonSocketSession(input) {
|
|
|
76432
76647
|
}) || handleLocalProjectControlSocketFrame({
|
|
76433
76648
|
deviceId: input.deviceId,
|
|
76434
76649
|
frame: parsedFrame,
|
|
76435
|
-
onLocalProjectConnectionsChanged:
|
|
76650
|
+
onLocalProjectConnectionsChanged: () => {
|
|
76651
|
+
requestLocalExecutionEvidenceRefresh({
|
|
76652
|
+
reason: "local_state_changed",
|
|
76653
|
+
scheduleReason: "local_project_connection_changed"
|
|
76654
|
+
});
|
|
76655
|
+
input.onLocalProjectConnectionsChanged?.();
|
|
76656
|
+
},
|
|
76436
76657
|
presenter: input.presenter,
|
|
76437
76658
|
socket: input.socket
|
|
76438
76659
|
}) || handleComputerFileAccessSocketFrame({
|
|
@@ -76472,6 +76693,12 @@ async function runDaemonSocketSession(input) {
|
|
|
76472
76693
|
parsedFrame,
|
|
76473
76694
|
profileOwnerName: input.profileOwnerName,
|
|
76474
76695
|
profileOwnerUserId: input.ownerUserId,
|
|
76696
|
+
requestCurrentWorkingFolderFactRefresh: () => {
|
|
76697
|
+
requestLocalExecutionEvidenceRefresh({
|
|
76698
|
+
reason: "local_state_changed",
|
|
76699
|
+
scheduleReason: "dispatch_working_folder_fact_rejected"
|
|
76700
|
+
});
|
|
76701
|
+
},
|
|
76475
76702
|
presenter: input.presenter,
|
|
76476
76703
|
routeByProfileId: input.routeCatalogState.routeByProfileId,
|
|
76477
76704
|
socket: input.socket,
|
|
@@ -76550,7 +76777,7 @@ async function runDaemonSocketSession(input) {
|
|
|
76550
76777
|
if (bootstrapPlan.persistCache) await persistAcceptedRouteCatalogCache();
|
|
76551
76778
|
scheduleCatalogSyncNext(bootstrapPlan.nextSyncDelayMs);
|
|
76552
76779
|
}
|
|
76553
|
-
|
|
76780
|
+
latestCatalogSyncSignalMarker = resolveCatalogSyncSignalMarker(await readDaemonCatalogSyncSignal().catch(() => null));
|
|
76554
76781
|
scheduleCatalogSyncSignalPoll();
|
|
76555
76782
|
await sendHeartbeat();
|
|
76556
76783
|
keepalive.start();
|
|
@@ -83928,7 +84155,7 @@ function resolveDaemonContractServiceController(input) {
|
|
|
83928
84155
|
}
|
|
83929
84156
|
function emitDaemonAlreadyRunningState(runtime, presenter, runtimeStatus) {
|
|
83930
84157
|
const statusCommand = formatOpenMeldCliCommand("openmeld service status");
|
|
83931
|
-
const guidance = `OpenMeld Service is already running. If Wake or local setup still looks wrong, \`openmeld service start\` is not the repair step. Run \`${statusCommand}\`; if local participation is unhealthy, run \`${formatOpenMeldCliCommand("openmeld service repair")}\` or use Reconnect
|
|
84158
|
+
const guidance = `OpenMeld Service is already running. If Wake or local setup still looks wrong, \`openmeld service start\` is not the repair step. Run \`${statusCommand}\`; if local participation is unhealthy, run \`${formatOpenMeldCliCommand("openmeld service repair")}\` or use Reconnect Computer in OpenMeld Web.`;
|
|
83932
84159
|
if (runtime.resolvedView === "agent") {
|
|
83933
84160
|
presenter.data({
|
|
83934
84161
|
code: "daemon.run.already_running",
|
|
@@ -111488,4 +111715,4 @@ function isHumanInteractiveSpaceRuntime(runtime) {
|
|
|
111488
111715
|
//#endregion
|
|
111489
111716
|
export { runAgentsManage as $, resolveAuthenticationGuidanceFromMessage as $a, getCurrentCommandCheckState as $i, assessCliUpdate as $n, outJsonLine as $o, resolveDaemonDeviceId as $r, runSkillsUpdate as $t, parseEnvelope as A, formatMessage as Aa, createAgentExecutionStatusDisplayRows as Ai, computeRetryDelayMs as An, resolveObservedAgentActivityBinding as Ao, getCommandHintsFromContract as Ar, emitDaemonAgentOverview as At, resolveHumanControllerDisplayName as B, listOpenMeldProfiles as Ba, PREPARE_SESSION_RECONNECT_GRACE_MS as Bi, assertNoRemovedCcSpaceAddressingSyntax as Bn, migrateProjectBindingStore as Bo, formatDualViewGuideForDisplay as Br, readGatewayTextResponse as Bt, toSpaceMetaUpsertInput as C, toStartBackgroundHelperExecutionCompatibility as Ca, resolveAgentProfilePrimaryAgentControllerReport as Ci, resolveCreateProfileKind as Cn, resolveUserFacingCliEntryCommand as Co, createSpaceSubcommandTargetGuideError as Cr, runDaemonStatusFlow as Ct, formatHumanReadTargetList as D, renderHumanErrorCard as Da, notifyDaemonRouteCatalogChanged as Di, formatServiceParticipationReadinessLabel as Dn, readAgentActivityContextForPath as Do, createStartAuthenticationGuideError as Dr, buildProfileWorkspacePresentation as Dt, buildHumanReplyContextSummary as E, buildHumanErrorCopy as Ea, listBuiltinAgentsRegistryEntries as Ei, ensureAgentProfileRuntimeBinding as En, upsertDaemonServiceContract as Eo, createStartAgentIdentityGuideError as Er, runDaemonUninstall as Et, resolveOpenMeldProfileForSpaceCommand as F, requireOpenMeldProfile as Fa, resolveAgentControllerPermissionModeForController as Fi, resolveLocalAgentControllerBlockerReasonCodes as Fn, readAgentActivityOutboxHealth as Fo, registerDaemonControlTargetOptions as Fr, fetchSpaceUpdates as Ft, runAgentsCustomAdd as G, clearSelectedOpenMeldProfileId as Ga, resolveDaemonServiceAlignmentDecision as Gi, buildSpaceRoundReadProjection as Gn, canonicalizeLocalProjectPath as Go, areAllowedActionsEquivalent as Gr, resolveDaemonServiceParticipationStatus as Gt, resolveAgentProfileSetup as H, resolveOpenMeldProfile as Ha, buildOnboardingPlan as Hi, buildDispatchResultReplyWorkflowProjection as Hn, runIfAgentActivityBindingGenerationIsCurrent as Ho, formatAgentOverviewPayload as Hr, parseJsonResponse$1 as Ht, emitSpaceAgentOverview as I, resolveOpenMeldProfileOrNull as Ia, resolveAgentExecutionStatus as Ii, resolveLocalAgentControllerLaunchability as In, removeProjectOutbox as Io, registerAuthLoginRequestOptions as Ir, createCliSpaceApi as It, runAgentsCustomUpdate as J, buildAgentAuthenticationGuide as Ja, resolveServiceUpdateUrgency as Ji, formatRemovedCcRelationMessage as Jn, renderInfoCard as Jo, readPendingOpenMeldToolsUpdateAttempt as Jr, collectSkillsReadinessSnapshot as Jt, runAgentsCustomList as K, getSelectedOpenMeldProfileId as Ka, classifyDaemonServiceRunStartability as Ki, buildUpdatesReplyWorkflowProjection as Kn, enqueueControllerTaskLifecycleEventWhileLocked as Ko, buildAgentFacingPublicationModeGuideLines as Kr, runDaemonServiceParticipationGate as Kt, emitSpaceCliAgentOverview as L, createOpenMeldAgentProfile as La, resolveAgentProfileEditCapabilities as Li, resolveLocalAgentControllerReportDecision as Ln, bindProject as Lo, registerBuiltinAgentSelectionOptions as Lr, fetchSpaceMeta as Lt, assertFullSignalIdArgument as M, resolveRuntimeContext as Ma, getAgentControllerPermissionModeFieldLabel as Mi, submitRuntimeAgentControllerReport as Mn, readCodexSessionTitles as Mo, SPACE_ADD_MEMBERS_PROGRESS_HEARTBEAT_MS as Mr, shouldEmitAgentOverview as Mt, assertValidSpaceIdTarget as N, resolveViewProfileKey as Na, listAgentControllerPermissionModeOptions as Ni, submitRuntimeAgentControllerReports as Nn, enqueueAgentActivityHookEvent as No, registerSkillsTargetSelectionOptions as Nr, runDaemonStartupPreflight as Nt, resolveLinkAccessLabel as O, renderHumanTextErrorCard as Oa, resolveLocalRegistryAgentIdFromAgentControllerRef as Oi, resolveServiceParticipationReadiness as On, removeAgentActivityContextCache as Oo, createUpgradeConfirmationGuideError as Or, buildProfileWorkspaceRows as Ot, prepareAuthenticatedSpaceCommandContext as P, isSelectedOpenMeldProfileRequiredError as Pa, parseAgentControllerRef as Pi, collectLocalAgentControllerInventory as Pn, removeProjectInbox as Po, getCliVersionInfo as Pr, readDaemonStartFailureLogTailLines as Pt, runAgentsList as Q, resolveAuthenticationGuidanceFromError as Qa, finishCurrentCommandCheckScope as Qi, runInteractivePrompt as Qn, errLine as Qo, ensureDaemonRuntimePaths as Qr, runSkillsUninstall as Qt, prepareLocalAgentReadiness as R, createOpenMeldHumanProfile as Ra, resolveEvidenceSyncHealth as Ri, inspectSpaceCacheFile as Rn, listProjectBindings as Ro, buildAgentOverviewFromContract as Rr, updateSpaceMeta as Rt, loadSpaceSignalIndexOrNull as S, resolveDaemonRuntimeContractCompatibility as Sa, createPrimaryBindingReadSession as Si, createProfileByKind as Sn, resolveSetupFollowUpCliEntryCommand as So, createSpaceResultGuideError as Sr, runDaemonSnapshot as St, buildFormalSignalReadPayload as T, OPENMELD_VERSION as Ta, reconcileNewRunnableBuiltinAgentsForSetup as Ti, promptTextEntry as Tn, readDaemonServiceContract as To, createSpaceUpdatesGuideError as Tr, runDaemonTeardownStrict as Tt, runAgents as U, updateOpenMeldProfile as Ua, getSetupFlowCopy as Ui, buildSignalIndex as Un, setDefaultProjectConnection as Uo, OPENMELD_AGENT_MENTAL_MODEL_LINES as Ur, resolveLocalComponentsStatus as Ut, persistAgentTransportSelection as V, primeOpenMeldProfilesSessionCache as Va, buildDaemonRouteObservationPresentation as Vi, buildDispatchResultMessageReadProjection as Vn, removeProjectConnection as Vo, buildDualViewGuideMessage as Vr, toStructuredGatewayFailure as Vt, runAgentsConfig as W, alignSelectedOpenMeldProfileStorage as Wa, buildDaemonServiceTargetSpec as Wi, buildSignalMessageReadProjection as Wn, unbindProject as Wo, SPACE_CONTRACT_ALLOWED_ACTION_ORDER as Wr, writeInstalledLocalComponentsSnapshot as Wt, runAgentsDisable as X, createAuthenticationError as Xa, resolveOpenMeldEnvironmentTarget as Xi, promptSearchSelect as Xn, sanitizeTerminalDisplayText as Xo, runPendingDaemonServiceUpdate as Xr, runSkillsEnsure as Xt, runAgentsDetect as Y, buildHumanAuthenticationCard as Ya, assessServerRequiredVersion as Yi, promptSearchMultiselect as Yn, renderTextInfoCard as Yo, readOpenMeldToolsUpdateContextFromEnv as Yr, runSkillsCheck as Yt, runAgentsEnable as Z, resolveAuthenticationGuidance as Za, resolveAuthBaseUrl as Zi, isReturnKeypress as Zn, emitCliJsonEnvelope as Zo, scheduleDaemonServiceUpdate as Zr, runSkillsInstall as Zt, runSpaceWriteWithPasswordRetry as _, ensureVersionStateReady as _a, setCustomProfileWorkspace as _i, fetchAuthUserSnapshot as _n, formatOpenMeldCliCommand as _o, createSpaceContractSetGuideError as _r, runDaemonCancel as _t, runSpaceDelete as a, readCurrentDaemonRuntimeContext as aa, formatDeviceReplyReadinessLabel as ai, buildCommandAuthenticationPromptMessage as an, requestLocalAgentActivitySync as ao, formatElapsedTime as ar, cliJsonSkillsShowEnvelopeSchema as as, printOpenMeldBanner as at, buildIdentityOnlyMembersSnapshotForReadProjection as b, readVersionState as ba, describeProfileWorkspacePathValidationFailure as bi, resolveDeviceTokenExpiresAt as bn, formatOpenMeldCliTextBlock as bo, createSpacePublicationSetGuideError as br, runDaemonReinstall as bt, runSpaceLeave as c, isDaemonServiceJobNeverSpawned as ca, resolveGatewayChainReadiness as ci, runAuthLogin as cn, resolveAgentActivityRouteForPath as co, formatDaemonServiceMissingRecommendation as cr, revokeOrganizationJoinLinkResponseSchema as cs, renderOpenMeldLogo as ct, runSpaceRemoveMembers as d, readRecentDaemonLifecycleEvents as da, createModelCatalogReadSession as di, runAuthStatus as dn, defaultManagedIntegrationPaths as do, createProfileActionGuideError as dr, resolveSpaceWebGatewayOrigin as dt, isCurrentCommandCheckScopeActive as ea, formatDaemonFailureContextText as ei, ensureLocalSkills as en, getProfileDefaultView as eo, isCliUpdateCheckApplicable as er, outLine as es, runAgentsRepair as et, runSpaceSend as f, buildInstallSelfJsonPayload as fa, resolveProfileWorkspaceRuntime as fi, exchangeOneTimeTokenAuthSession as fn, installAgentActivityIntegrations as fo, createProfileCreateGuideError as fr, resolveSpaceSendText as ft, runSpaceReadWithPasswordRetry as g, compareSemver as ga, resolveConfiguredProfileWorkspacePath as gi, extractAuthApiErrorMessage as gn, formatInlineOpenMeldCliCommands as go, createSpaceAliasTargetGuideError as gr, runDaemonBackgroundStartForDecision as gt, uploadPreparedSpaceFiles as h, buildNextVersionState as ha, readProfileWorkspaceConfig as hi, formatActiveOrganizationLabel as hn, uninstallAgentActivityIntegrations as ho, createSpaceAddMembersGuideError as hr, runDaemonAutostart as ht, runSpaceCreate as i, resolveVersionChangeDirection as ia, formatAgentReplyReadinessLabel as ii, connectWebSocket as in, LocalDaemonControlPlaneClientError as io, writeDispatchSpaceActionRecord as ir, cliJsonSkillsLoadEnvelopeSchema as is, colorizeDisplayProfileLabel as it, isSpaceCommandOutputHandledError as j, parseCliViewMode as ja, getAgentControllerPermissionModeDisplayMetadata as ji, submitProfileRuntimeAgentControllerReport as jn, normalizeSharedSessionTitle as jo, registerSpaceMemberSelectionOptions as jr, createDelayedSpinner as jt, resolveOrganizationVisibilityLabel as k, createPresenter as ka, buildAgentControllerRef as ki, assessActionParticipationCandidate as kn, buildAgentActivityEvent as ko, getCommandEntryContract as kr, reconcileCliVersionView as kt, runSpaceList as l, readDaemonServiceJobCrashExitCode as la, resolveOpenClawLocalDiagnosticsValue as li, runAuthLogout as ln, unregisterAgentActivityRoute as lo, canUseInteractivePrompts as lr, compareAgentControllerRefsForDisplay as ls, renderOpenMeldTagline as lt, prepareRequestedSpaceSendFiles as m, readPendingDaemonServiceUpdate as ma, normalizeCustomProfileWorkspacePath as mi, buildAuthStatusSnapshot as mn, resolveAgentActivityDispatcherCommand as mo, createResetConfirmationGuideError as mr, runDaemon as mt, promptAndConfirmSpacePassword as n, startCurrentCommandCheckScope as na, resolveDaemonServiceFreshnessWarning as ni, readRuntimeReportingHealthState as nn, LocalProjectConnectionError as no, readDispatchOwnedRuntimeGuard as nr, cliJsonOutputEnvelopeSchema as ns, formatTransportModeDisplay as nt, runSpaceHistory as o, readCurrentObservedDaemonRuntimeStatus as oa, formatHumanReplyReadinessReason as oi, ensureCommandAuthenticationOrCancel as on, isAgentActivityRouteRegistered as oo, resolveElapsedTimeMs as or, getOrganizationJoinLinkResponseSchema as os, renderOpenMeldBrandBlockLines as ot, runSpaceWatch as p, performManagedInstall as pa, ensureOpenMeldManagedProfileWorkspace as pi, buildAuthStatusRows as pn, readAgentActivityIntegrationStatus as po, createProfileMenuGuideError as pr, bestEffortStopCurrentLaneDaemonService as pt, runAgentsCustomRemove as q, setSelectedOpenMeldProfileId as qa, classifyDaemonServiceWakeability as qi, createSpaceMemberIdentityIndex as qn, readControllerTaskLifecycleOutboxHealth as qo, canonicalizeAllowedActions as qr, runDaemonStartDecisionPrompt as qt, runSpaceAddMembers as r, inspectDaemonServiceInventory as ra, resolveCurrentReplyReadinessSnapshot as ri, readRecentDaemonDispatchJournalEvents as rn, validateLocalProjectConnectionPath as ro, readDispatchSpaceActionContextFromEnv as rr, cliJsonSkillsListEnvelopeSchema as rs, colorizeAgentLabel as rt, runSpaceJoin as s, getDaemonSystemServiceLogPath as sa, mapAgentReplyReadinessToLegacyAutoReply as si, evaluateCommandAuthentication as sn, registerAgentActivityRoute as so, formatDaemonServiceDowngradeBlockedRecommendation as sr, organizationJoinLinkErrorResponseSchema as ss, renderOpenMeldHeader as st, buildCreateSpacePasswordPromptConfig as t, resetCurrentCommandCheckState as ta, resolveServiceReadinessFromServiceStatus as ti, readBundledOpenMeldCliSkillDocumentByPath as tn, setProfileDefaultView as to, assertDispatchOwnedRuntimePublicWriteAllowed as tr, cliBinaryDeltaPatchSchema as ts, runAgentsShow as tt, runSpacePassword as u, resolveDaemonServiceManager as ua, syncProfileWorkspaceState as ui, runAuthMenu as un, AGENT_ACTIVITY_INTEGRATION_OWNER as uo, createDoctorFailedGuideError as ur, resolveGatewayWebOrigin as ut, buildHumanReadSignalsTranscriptItems as v, fetchLatestCliBinaryRelease as va, setOpenMeldManagedProfileWorkspace as vi, requestDeviceToken as vn, formatOpenMeldCliCommands as vo, createSpaceLeaveGuideError as vr, runDaemonInstall as vt, buildFormalDispatchResultReadPayload as w, resolveCurrentDaemonExpectedVersion as wa, listAgentTargetStates as wi, resolveCreateProfileName as wn, syncLocalAgentActivity as wo, createSpaceTargetGuideError as wr, runDaemonStop as wt, loadSpaceIdentityDirectoryOrNull as x, writeVersionState as xa, syncDeviceRuntimeStateProjection as xi, revokeAuthAccessToken as xn, formatProfileAwareOpenMeldCliCommands as xo, createSpaceRemoveMembersGuideError as xr, runDaemonRunAfterEntryChecks as xt, emitHumanReadSignalsTextProjection as y, fetchLatestPackageInfo as ya, validateCustomProfileWorkspacePath as yi, resolveDeviceAuthClientId as yn, formatOpenMeldCliLine as yo, createSpaceMenuGuideError as yr, runDaemonInterrupt as yt, buildReplyReadinessGuidance as z, deleteOpenMeldProfile as za, resolveNativeAgentControllerPermissionModeForController as zi, upsertSpaceConfig as zn, listProjectConnectionsWithStatus as zo, DualViewGuideError as zr, readGatewayJsonResponse as zt };
|
|
111490
111717
|
|
|
111491
|
-
//# sourceMappingURL=command-
|
|
111718
|
+
//# sourceMappingURL=command-C5YPLwZM.js.map
|