openmeld 0.3.88 → 0.3.90
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-DGNYE__N.js → add-me-membership-DjYnFevf.js} +2 -2
- package/dist/{add-me-membership-DGNYE__N.js.map → add-me-membership-DjYnFevf.js.map} +1 -1
- package/dist/{api-client-foundation-DUX52_3N.js → api-client-foundation-CfNo8-pE.js} +3 -3
- package/dist/{api-client-foundation-DUX52_3N.js.map → api-client-foundation-CfNo8-pE.js.map} +1 -1
- package/dist/{auth-session-vFtLpWjB.js → auth-session-73FalW41.js} +2 -2
- package/dist/{auth-session-vFtLpWjB.js.map → auth-session-73FalW41.js.map} +1 -1
- package/dist/{command-CtueGhEA.js → command-DjZ6uBsa.js} +191 -732
- package/dist/{command-CtueGhEA.js.map → command-DjZ6uBsa.js.map} +1 -1
- package/dist/{dist-5W-darWf.js → dist-DXBncfSC.js} +2 -2
- package/dist/{dist-5W-darWf.js.map → dist-DXBncfSC.js.map} +1 -1
- package/dist/openmeld.js +8 -8
- package/dist/openmeld.js.map +1 -1
- package/dist/{runtime-transport-DEj52An9.js → runtime-transport-J50KvRbm.js} +46 -1
- package/dist/runtime-transport-J50KvRbm.js.map +1 -0
- package/package.json +1 -1
- package/skills/openmeld-cli/SKILL.md +7 -27
- package/skills/openmeld-cli/playbooks/space-ops.md +7 -21
- package/skills/openmeld-cli/references/commands.md +4 -5
- package/dist/runtime-transport-DEj52An9.js.map +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { A as toSpaceCursorUrl, At as openMeldManagedBinaryPath, B as toSpaceUpdatesUrl, C as updateConfiguredSkillsConfig, Ct as deviceOpenClawProfileWorkspaceDir, Dt as normalizeOpenMeldProfileId, E as toDaemonRouteObservationUrl, Et as normalizeAccountKey, F as toSpaceMembersUrl, G as isOpenMeldOrphanedLockError, Gt as runtimeLogsDir, H as acquireLock, Ht as resolveOpenMeldPresetOwnedPathInput, I as toSpaceMetaUrl, Jt as systemDir, Kt as skillsDir, L as toSpacePasswordUrl, Mt as openMeldManagedVersionDir, Nt as openMeldRootDir, Ot as openMeldBackupsDir, P as toSpaceLeaveUrl, Pt as openMeldVersionsDir, Qt as runtimeAgentControllerLaunchContractSchema, R as toSpaceRemoveMembersUrl, Rt as resolveDefaultOpenMeldHomeDirname, St as deviceOpenClawProfileDir, T as normalizeBaseUrl, Tt as legacyAccountProfileSpacesDir, Ut as resolveOpenMeldRootDir, V as toSpaceWsUrl, Vt as resolveOpenMeldEnvPreset, W as isOpenMeldLockError, Wt as runtimeDir, X as resolveOpenMeldOrphanedLockIssue, Yt as formatLocalMachineIssueMessage, Z as runWithHeldLock, Zt as runtimeAgentControllerConversationIdMappingSpecSchema, _ as getRuntimeConfigReadHealth, _t as accountProfileSpaceCacheDir, a as resolveBaseUrl, an as resolveBuiltinAgentControllerConversationKind, at as writeCliContextState, b as setConfiguredSkillsConfig, bt as accountsDir, c as resolveExplicitGatewayUrlOrThrow, d as createDefaultRuntimeAgentControllerSettings, dn as canonicalizeBuiltinAgentControllerRef, dt as createBackgroundExecutionBlockedIssue, en as runtimeStreamingModeSchema, f as getConfiguredDaemonDispatchLimits, fn as normalizeBuiltinAgentControllerId, g as getConfiguredViewCustomization, gt as accountProfileLocalMetaPath, h as getConfiguredSkillsConfig, ht as OPENMELD_HOME_ENV_KEY, i as normalizeGatewayBaseUrlOrNull, in as conversationPolicySchema, it as resolveCliContextId, j as toSpaceDeleteUrl, jt as openMeldManagedVersionBinaryPath, k as toSpaceCreateUrl, kt as openMeldBinDir, l as DEFAULT_RUNTIME_AGENT_TRANSPORT_MODE, ln as buildAgentControllerRoutingKey, lt as assessLocalMachineFailure, mn as parseAgentControllerRef$1, nt as readCliContextState, o as resolveBaseUrlOrNull, on as HOSTED_CENTER_AGENT_CONTROLLER_REF, p as getConfiguredDeviceRuntimeState, pn as normalizeKnownBuiltinAgentControllerId, r as normalizeGatewayBaseUrl, rn as buildAgentControllerConversationRef, rt as resolveCliContext, s as resolveDefaultGatewayBaseUrl, sn as HOSTED_CENTER_AGENT_CONTROLLER_REF_ID, st as resolveOpenMeldLaneDescriptor, tn as runtimeTransportModeSchema, tt as listCliContextStates, un as canonicalizeAgentControllerRef, v as resolveRuntimeSkillsCustomTargetId, vt as accountProfileViewPath, wt as isPublishedOpenMeldHome, x as updateConfiguredDeviceRuntimeState, xt as deviceOpenClawProfileBootstrapPath, yt as accountProfileWorkspacePath, zt as resolveExplicitOpenMeldEnvPreset } from "./base-url-Cv9x5Es9.js";
|
|
4
|
-
import { A as MAX_TEXT_LENGTH, At as createCenterAgentRoutineResponseSchema, B as sleep, C as createSpaceApi, D as toStructuredApiClientFailure, Dt as organizationComputersResponseSchema, E as resolveProfileSpaceHistoryGatewayHost, Et as profileErrorResponseSchema, F as OPENMELD_HEADER_PROFILE_ID, Ft as resumeCenterAgentRoutineResponseSchema, Gt as localProjectControlDaemonFrameSchema, H as getSpaceUpdatesResponseSchema, It as updateCenterAgentRoutineResponseSchema, Jt as postSpaceMembersResponseSchema, Kt as localProjectControlDiscoverProjectsResponseSchema, L as OPENMELD_HEADER_REQUEST_ID, M as parseIncoming$1, Mt as listCenterAgentRoutineRunsResponseSchema, N as parseServerErrorFrame$1, Nt as listCenterAgentRoutinesResponseSchema, O as DAEMON_STREAM_KEEPALIVE_PING, Ot as submitFeedbackIssueRequestSchema, P as resolveCustomMentionAliasOverride, Pt as pauseCenterAgentRoutineResponseSchema, Q as submitAgentControllerTaskLifecycleEventItemSchema, Rt as AGENT_ACTIVITY_PRESENCE_TTL_MAX_MS, S as createRuntimeReportingApi, St as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, T as resolveAccountSpaceIndexGatewayHost, Tt as profileCapabilitiesResponseSchema, U as SPACE_DISPATCH_TRACE_PROMPT_PREVIEW_MAX_CHARS, Ut as agentActivitySnapshotResponseSchema, V as toErrorMessage$41, Wt as localProjectControlConnectionSchema, Xt as spaceMemberDirectoryEntrySchema, Yt as removeSpaceMembersResponseSchema, Zt as spaceMemberDirectorySchema, _n as agentControllerPermissionModeSchema, _t as organizationSkillReleaseSummarySchema, a as buildSpaceAttachmentDownloadPath, an as createProjectResponseSchema, at as COMPUTER_FILE_ACCESS_RUNTIME_CAPABILITY, bt as organizationDirectoryResponseSchema, c as createAgentProfileBindingApi, cn as updateProjectResponseSchema, ct as computerFileAccessPolicyInputSchema, d as createCurrentDeviceApi, dt as organizationSpaceDirectoryWithMemberCountsResponseSchema, ft as spaceCreatorSchema, g as createOrganizationApi, h as createOpenMeldApiClient, ht as listOrganizationSkillsResponseSchema, i as buildProfileSpaceHistoryUpsertPath, in as archiveProjectResponseSchema, it as gatewayErrorEnvelopeSchema, j as parseEnvelope$1, jt as deleteCenterAgentRoutineResponseSchema, kt as submitFeedbackIssueResponseSchema, ln as centerAgentToolSpeakerSchema, lt as computerFileAccessPolicySchema, m as createLocalRuntimeExpectedRoutesApi, mt as getOrganizationSkillResponseSchema, n as OpenMeldApiClientInvalidResponseError, o as createAccountSpaceIndexApi, on as listProjectsResponseSchema, ot as OPENMELD_RUNTIME_CAPABILITIES_HEADER, p as createFetchTransport, pt as spaceMetaSchema, qt as leaveSpaceResponseSchema, r as buildProfileSpaceHistoryStatusPath, rn as observedLocalAgentSessionSchema, s as createAgentActivityApi, sn as projectSchema, st as computerFileAccessDaemonFrameSchema, t as OpenMeldApiClientHttpError, tn as agentActivitySessionInventoryResponseSchema, un as openCodePermissionConfigSchema, ut as modelCatalogSchema, vn as agentControllerCollaborationModeSchema, vt as organizationSkillSummarySchema, wt as authProfileManagedRoleSchema, xt as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE, y as createProfileSpaceHistoryApi, yn as toLegacySpaceAddressingWireValue, z as toErrorMessage$42, zt as agentActivityEventSchema } from "./dist-
|
|
5
|
-
import { $t as conversationExecutionStateSchema, A as runtimeTransportResumeControllerConversationFramePayloadSchema, An as agentInteractionRequestSchema, Ar as resolvePublicAgentAvailabilityCopy, B as openMeldSpaceEgressActionSchema, C as runtimeTransportLocalAgentControlRefreshCatalogFramePayloadSchema, D as runtimeTransportRegisterSessionRequestSchema, Dr as MAX_TEXT_LENGTH$1, E as runtimeTransportLookupRouteOwnerServiceEvidenceSchema, Er as trimmedStringFromUnknown, Fn as formatLocalSetupActionDescription, G as localFolderPickerHelperResultSchema, H as OPENMELD_LOCAL_FOLDER_PICKER_CAPABILITY_HEADER, Hn as localServiceComponentUpdateProjectionSchema, Ht as spaceFileNameSchema, I as openMeldDaemonTaskResultEnvelopeWriteSchema, In as formatLocalSetupActionLabel, Ir as resolveCommandAgentWorkActivity, Jt as openMeldDaemonControlPlaneRequestSchema, Kn as parseOptionalClientMessageId, L as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, Ln as installedLocalComponentsSnapshotSchema, M as runtimeTransportRouteCatalogChangedFramePayloadSchema, Mr as shouldPreferMappedPublicAgentFailureReason, Mt as SPACE_FILE_MAX_SIZE_BYTES, Nn as formatLocalComponentsSummaryDescription, O as runtimeTransportRegisterSessionResponseSchema, On as AGENT_INTERACTION_DEFAULT_TIMEOUT_MS, Or as resolveDetailedPublicAgentFailureReason$1, P as runtimeTransportSubmitTaskResultRequestSchema, Pn as formatLocalComponentsSummaryLabel, Qt as providerDispatchRuntimeContextSchema, R as openMeldDaemonTaskResultPayloadSchema, Rn as localCliComponentUpdateProjectionSchema, Rt as resolveSpaceFileMimeType, S as runtimeTransportLocalAgentControlManageInstallationFramePayloadSchema, T as runtimeTransportLocalAgentControlSetProfileWorkspaceFramePayloadSchema, U as localFolderPickerDaemonFrameSchema, V as LOCAL_FOLDER_PICKER_RUNTIME_CAPABILITY, W as localFolderPickerHelperProtocolResultSchema, Xn as runtimeCoordinatorExecutionTokenEnvelopeSchema, Yt as openMeldDaemonControlPlaneResponseSchema, Zn as runtimeTransportDeliveryExecutionIdentitySchema, Zt as skippedDaemonProfileSchema, _ as runtimeTransportHeartbeatRequestSchema, _n as getSpaceMessageAddressingRelationSupportForTargetKind, _r as openMeldRuntimeProfileIdSchema, a as runtimeTransportCapabilitiesSchema, b as runtimeTransportLocalAgentControlForkSessionFramePayloadSchema, bn as resolveMessageEnvelopeTargetField, c as runtimeTransportDispatchInteractionRequestSchema, ct as CONVERSATION_CONTINUITY_WARNING_PURPOSE, d as runtimeTransportDispatchPreviewEndRequestSchema, er as normalizeSpacePasswordText, f as runtimeTransportDispatchPreviewRequestSchema, ft as SPACE_MEMBER_JOIN_NOTICE_PURPOSE, g as runtimeTransportForkAgentSessionResultSchema, gn as formatCanonicalMentionLiteral, gr as normalizeOptionalWorkingDirectory, gt as sanitizeSignalTextPreview, h as runtimeTransportErrorCodeSchema, hn as collectCanonicalMentionTextFragments, hr as agentProfileIdSchema, i as localWakeRouteReportSchema, j as runtimeTransportResumeControllerConversationResultFramePayloadSchema, jn as agentInteractionResolutionSchema, jr as resolvePublicAgentFailureRecovery, k as runtimeTransportRejectedProfileRegistrationSchema, kr as resolveMappedPublicAgentFailureReason, l as runtimeTransportDispatchInteractionResponseFramePayloadSchema, m as runtimeTransportDispatchToolActivityRequestSchema, mn as MESSAGE_MENTION_TYPE_VALUES, mr as MAX_PROFILE_WORKING_DIRECTORY_LENGTH, mt as SPACE_MENTION_REJECT_NOTICE_PURPOSE, n as daemonExecutionCompatibilitySchema, nr as resolveSingleSpaceMentionLabels, o as runtimeTransportDeliverDispatchRequestSchema, p as runtimeTransportDispatchRuntimeEvidenceRequestSchema, pr as openMeldRequestContextSchema, pt as SPACE_MEMBER_REMOVE_NOTICE_PURPOSE, r as daemonStreamFrameSchema, rr as resolveSpaceMentionLabels, s as runtimeTransportDispatchInteractionDeliveredRequestSchema, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, u as runtimeTransportDispatchLifecycleRequestSchema, v as runtimeTransportHeartbeatResponseSchema, w as runtimeTransportLocalAgentControlSetEnabledFramePayloadSchema, x as runtimeTransportLocalAgentControlInterruptFramePayloadSchema, xr as profileWorkspaceModeSchema, y as runtimeTransportLocalAgentControlCancelFramePayloadSchema, yn as normalizeMessageEnvelope } from "./runtime-transport-
|
|
4
|
+
import { A as MAX_TEXT_LENGTH, At as createCenterAgentRoutineResponseSchema, B as sleep, C as createSpaceApi, D as toStructuredApiClientFailure, Dt as organizationComputersResponseSchema, E as resolveProfileSpaceHistoryGatewayHost, Et as profileErrorResponseSchema, F as OPENMELD_HEADER_PROFILE_ID, Ft as resumeCenterAgentRoutineResponseSchema, Gt as localProjectControlDaemonFrameSchema, H as getSpaceUpdatesResponseSchema, It as updateCenterAgentRoutineResponseSchema, Jt as postSpaceMembersResponseSchema, Kt as localProjectControlDiscoverProjectsResponseSchema, L as OPENMELD_HEADER_REQUEST_ID, M as parseIncoming$1, Mt as listCenterAgentRoutineRunsResponseSchema, N as parseServerErrorFrame$1, Nt as listCenterAgentRoutinesResponseSchema, O as DAEMON_STREAM_KEEPALIVE_PING, Ot as submitFeedbackIssueRequestSchema, P as resolveCustomMentionAliasOverride, Pt as pauseCenterAgentRoutineResponseSchema, Q as submitAgentControllerTaskLifecycleEventItemSchema, Rt as AGENT_ACTIVITY_PRESENCE_TTL_MAX_MS, S as createRuntimeReportingApi, St as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, T as resolveAccountSpaceIndexGatewayHost, Tt as profileCapabilitiesResponseSchema, U as SPACE_DISPATCH_TRACE_PROMPT_PREVIEW_MAX_CHARS, Ut as agentActivitySnapshotResponseSchema, V as toErrorMessage$41, Wt as localProjectControlConnectionSchema, Xt as spaceMemberDirectoryEntrySchema, Yt as removeSpaceMembersResponseSchema, Zt as spaceMemberDirectorySchema, _n as agentControllerPermissionModeSchema, _t as organizationSkillReleaseSummarySchema, a as buildSpaceAttachmentDownloadPath, an as createProjectResponseSchema, at as COMPUTER_FILE_ACCESS_RUNTIME_CAPABILITY, bt as organizationDirectoryResponseSchema, c as createAgentProfileBindingApi, cn as updateProjectResponseSchema, ct as computerFileAccessPolicyInputSchema, d as createCurrentDeviceApi, dt as organizationSpaceDirectoryWithMemberCountsResponseSchema, ft as spaceCreatorSchema, g as createOrganizationApi, h as createOpenMeldApiClient, ht as listOrganizationSkillsResponseSchema, i as buildProfileSpaceHistoryUpsertPath, in as archiveProjectResponseSchema, it as gatewayErrorEnvelopeSchema, j as parseEnvelope$1, jt as deleteCenterAgentRoutineResponseSchema, kt as submitFeedbackIssueResponseSchema, ln as centerAgentToolSpeakerSchema, lt as computerFileAccessPolicySchema, m as createLocalRuntimeExpectedRoutesApi, mt as getOrganizationSkillResponseSchema, n as OpenMeldApiClientInvalidResponseError, o as createAccountSpaceIndexApi, on as listProjectsResponseSchema, ot as OPENMELD_RUNTIME_CAPABILITIES_HEADER, p as createFetchTransport, pt as spaceMetaSchema, qt as leaveSpaceResponseSchema, r as buildProfileSpaceHistoryStatusPath, rn as observedLocalAgentSessionSchema, s as createAgentActivityApi, sn as projectSchema, st as computerFileAccessDaemonFrameSchema, t as OpenMeldApiClientHttpError, tn as agentActivitySessionInventoryResponseSchema, un as openCodePermissionConfigSchema, ut as modelCatalogSchema, vn as agentControllerCollaborationModeSchema, vt as organizationSkillSummarySchema, wt as authProfileManagedRoleSchema, xt as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE, y as createProfileSpaceHistoryApi, yn as toLegacySpaceAddressingWireValue, z as toErrorMessage$42, zt as agentActivityEventSchema } from "./dist-DXBncfSC.js";
|
|
5
|
+
import { $t as conversationExecutionStateSchema, A as runtimeTransportResumeControllerConversationFramePayloadSchema, An as agentInteractionRequestSchema, Ar as resolvePublicAgentAvailabilityCopy, B as openMeldSpaceEgressActionSchema, C as runtimeTransportLocalAgentControlRefreshCatalogFramePayloadSchema, D as runtimeTransportRegisterSessionRequestSchema, Dr as MAX_TEXT_LENGTH$1, E as runtimeTransportLookupRouteOwnerServiceEvidenceSchema, Er as trimmedStringFromUnknown, Fn as formatLocalSetupActionDescription, G as localFolderPickerHelperResultSchema, H as OPENMELD_LOCAL_FOLDER_PICKER_CAPABILITY_HEADER, Hn as localServiceComponentUpdateProjectionSchema, Ht as spaceFileNameSchema, I as openMeldDaemonTaskResultEnvelopeWriteSchema, In as formatLocalSetupActionLabel, Ir as resolveCommandAgentWorkActivity, Jt as openMeldDaemonControlPlaneRequestSchema, Kn as parseOptionalClientMessageId, L as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, Ln as installedLocalComponentsSnapshotSchema, M as runtimeTransportRouteCatalogChangedFramePayloadSchema, Mr as shouldPreferMappedPublicAgentFailureReason, Mt as SPACE_FILE_MAX_SIZE_BYTES, Nn as formatLocalComponentsSummaryDescription, O as runtimeTransportRegisterSessionResponseSchema, On as AGENT_INTERACTION_DEFAULT_TIMEOUT_MS, Or as resolveDetailedPublicAgentFailureReason$1, P as runtimeTransportSubmitTaskResultRequestSchema, Pn as formatLocalComponentsSummaryLabel, Qt as providerDispatchRuntimeContextSchema, R as openMeldDaemonTaskResultPayloadSchema, Rn as localCliComponentUpdateProjectionSchema, Rt as resolveSpaceFileMimeType, S as runtimeTransportLocalAgentControlManageInstallationFramePayloadSchema, T as runtimeTransportLocalAgentControlSetProfileWorkspaceFramePayloadSchema, U as localFolderPickerDaemonFrameSchema, V as LOCAL_FOLDER_PICKER_RUNTIME_CAPABILITY, W as localFolderPickerHelperProtocolResultSchema, Xn as runtimeCoordinatorExecutionTokenEnvelopeSchema, Yt as openMeldDaemonControlPlaneResponseSchema, Zn as runtimeTransportDeliveryExecutionIdentitySchema, Zt as skippedDaemonProfileSchema, _ as runtimeTransportHeartbeatRequestSchema, _n as getSpaceMessageAddressingRelationSupportForTargetKind, _r as openMeldRuntimeProfileIdSchema, a as runtimeTransportCapabilitiesSchema, b as runtimeTransportLocalAgentControlForkSessionFramePayloadSchema, bn as resolveMessageEnvelopeTargetField, c as runtimeTransportDispatchInteractionRequestSchema, ct as CONVERSATION_CONTINUITY_WARNING_PURPOSE, d as runtimeTransportDispatchPreviewEndRequestSchema, er as normalizeSpacePasswordText, f as runtimeTransportDispatchPreviewRequestSchema, ft as SPACE_MEMBER_JOIN_NOTICE_PURPOSE, g as runtimeTransportForkAgentSessionResultSchema, gn as formatCanonicalMentionLiteral, gr as normalizeOptionalWorkingDirectory, gt as sanitizeSignalTextPreview, h as runtimeTransportErrorCodeSchema, hn as collectCanonicalMentionTextFragments, hr as agentProfileIdSchema, i as localWakeRouteReportSchema, j as runtimeTransportResumeControllerConversationResultFramePayloadSchema, jn as agentInteractionResolutionSchema, jr as resolvePublicAgentFailureRecovery, k as runtimeTransportRejectedProfileRegistrationSchema, kr as resolveMappedPublicAgentFailureReason, l as runtimeTransportDispatchInteractionResponseFramePayloadSchema, m as runtimeTransportDispatchToolActivityRequestSchema, mn as MESSAGE_MENTION_TYPE_VALUES, mr as MAX_PROFILE_WORKING_DIRECTORY_LENGTH, mt as SPACE_MENTION_REJECT_NOTICE_PURPOSE, n as daemonExecutionCompatibilitySchema, nr as resolveSingleSpaceMentionLabels, o as runtimeTransportDeliverDispatchRequestSchema, p as runtimeTransportDispatchRuntimeEvidenceRequestSchema, pr as openMeldRequestContextSchema, pt as SPACE_MEMBER_REMOVE_NOTICE_PURPOSE, r as daemonStreamFrameSchema, rr as resolveSpaceMentionLabels, s as runtimeTransportDispatchInteractionDeliveredRequestSchema, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, u as runtimeTransportDispatchLifecycleRequestSchema, v as runtimeTransportHeartbeatResponseSchema, w as runtimeTransportLocalAgentControlSetEnabledFramePayloadSchema, x as runtimeTransportLocalAgentControlInterruptFramePayloadSchema, xr as profileWorkspaceModeSchema, y as runtimeTransportLocalAgentControlCancelFramePayloadSchema, yn as normalizeMessageEnvelope } from "./runtime-transport-J50KvRbm.js";
|
|
6
6
|
import { r as daemonServiceLaneSchema, t as daemonServiceContractSchema } from "./service-contract-DZWQdPz5.js";
|
|
7
7
|
import { A as isDaemonServiceRuntimeHeartbeatStale, B as setDaemonServiceRuntimeState, C as daemonServiceStableExecutableWrapperPath, D as getDaemonRuntimeStatus, E as ensureDaemonControlPlaneToken, F as releaseDaemonServiceLifecycleLock, G as withDaemonServiceStopLock, H as withDaemonServiceReconcileLock, I as resolveDaemonControlPlaneEndpoint, K as readDaemonLocalStateFile, L as resolveDaemonServiceRuntimeMetadata, M as readDaemonServiceLifecycleLockMeta, N as readDaemonServiceLifecycleLockMetaWithCleanup, O as getDaemonStatus, P as readDaemonServiceRuntimeSnapshot, R as restoreDaemonInstallStateSnapshot, S as daemonServiceRepairJournalPath, T as daemonStatePath, U as withDaemonServiceRegistrationMutationLock, V as uninstallDaemon, W as withDaemonServiceRunLock, _ as daemonRuntimeServiceManagerPath, a as DAEMON_SERVICE_RUNTIME_CONTROLLER_ENV, b as daemonServiceLegacyExecutableWrapperPath, c as DAEMON_SERVICE_RUNTIME_STATE_SCHEMA, d as clearDaemonServiceRuntimeState, f as daemonDispatchJournalPath, g as daemonRuntimeRootPath, h as daemonRuntimeDataPath, i as DAEMON_SERVICE_RUNTIME_AUTO_START_ENV, j as readDaemonControlPlaneToken, k as installDaemon, l as DAEMON_SERVICE_RUNTIME_SYSTEM_SERVICE_ENV, m as daemonRuntimeBundlesPath, n as writeDaemonRuntimeLease, o as DAEMON_SERVICE_RUNTIME_DETACHED_ENV, p as daemonLifecycleJournalPath, q as writeDaemonLocalStateFile, r as DAEMON_HEARTBEAT_STALE_MS, s as DAEMON_SERVICE_RUNTIME_MODE_ENV, t as readDaemonRuntimeLease, u as acquireDaemonServiceLifecycleLock, v as daemonRuntimeStateRootPath, w as daemonServiceStableLauncherPath, x as daemonServiceRecognizedExecutableWrapperPaths, y as daemonServiceActiveBundleStatePath, z as rotateDaemonControlPlaneTokenIfExpired } from "./daemon-runtime-lease-DiRoGxhm.js";
|
|
8
|
-
import { A as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, D as REGISTER_RESPONSE_TIMEOUT_MS$1, E as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1, S as MIN_HEARTBEAT_INTERVAL_MS$2, T as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, _ as DEFAULT_HEARTBEAT_INTERVAL_MS$1, a as getAuthSessionState, b as MAX_HEARTBEAT_INTERVAL_MS$2, c as setAuthSession, d as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, f as DAEMON_RUNTIME_CONTRACT_EPOCH$1, g as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1, h as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, j as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, k as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, m as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, n as clearAuthSession, p as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, r as getAuthSession, u as CATALOG_SYNC_RETRY_INTERVAL_MS$1, w as OPENCLAW_CLI_TIMEOUT_MS$1, y as HEARTBEAT_RESPONSE_TIMEOUT_MS$1 } from "./auth-session-
|
|
9
|
-
import { a as buildOpenMeldProfileIdentityRequestHeadersWithAuth, c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfile, f as buildOpenMeldRequestContextFromProfileIdentity, i as resolveSpaceRequestTimeoutMsForDiagnostics, l as canAttachAuthTokenToRequest, m as resolveAuthRequestCompatibility, n as createCliApiClientFoundation, o as buildOpenMeldProfileRequestHeadersWithAuth, p as deriveAuthBaseUrlFromGatewayUrl, r as fetchSpaceRequestWithTimeout, s as buildOpenMeldRequestContextHeadersWithAuth, u as resolveAuthTokenAttachment } from "./api-client-foundation-
|
|
8
|
+
import { A as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, D as REGISTER_RESPONSE_TIMEOUT_MS$1, E as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1, S as MIN_HEARTBEAT_INTERVAL_MS$2, T as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, _ as DEFAULT_HEARTBEAT_INTERVAL_MS$1, a as getAuthSessionState, b as MAX_HEARTBEAT_INTERVAL_MS$2, c as setAuthSession, d as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, f as DAEMON_RUNTIME_CONTRACT_EPOCH$1, g as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1, h as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, j as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, k as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, m as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, n as clearAuthSession, p as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, r as getAuthSession, u as CATALOG_SYNC_RETRY_INTERVAL_MS$1, w as OPENCLAW_CLI_TIMEOUT_MS$1, y as HEARTBEAT_RESPONSE_TIMEOUT_MS$1 } from "./auth-session-73FalW41.js";
|
|
9
|
+
import { a as buildOpenMeldProfileIdentityRequestHeadersWithAuth, c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfile, f as buildOpenMeldRequestContextFromProfileIdentity, i as resolveSpaceRequestTimeoutMsForDiagnostics, l as canAttachAuthTokenToRequest, m as resolveAuthRequestCompatibility, n as createCliApiClientFoundation, o as buildOpenMeldProfileRequestHeadersWithAuth, p as deriveAuthBaseUrlFromGatewayUrl, r as fetchSpaceRequestWithTimeout, s as buildOpenMeldRequestContextHeadersWithAuth, u as resolveAuthTokenAttachment } from "./api-client-foundation-CfNo8-pE.js";
|
|
10
10
|
import { createRequire } from "node:module";
|
|
11
11
|
import { homedir, tmpdir, userInfo } from "node:os";
|
|
12
12
|
import { z } from "zod/v4";
|
|
@@ -34,7 +34,7 @@ import { Box, Container, Editor, Key, ProcessTerminal, TUI, Text, getEditorKeybi
|
|
|
34
34
|
var package_default = {
|
|
35
35
|
$schema: "https://www.schemastore.org/package.json",
|
|
36
36
|
name: "openmeld",
|
|
37
|
-
version: "0.3.
|
|
37
|
+
version: "0.3.90",
|
|
38
38
|
openMeldReleaseDate: "2026-08-24",
|
|
39
39
|
description: "OpenMeld CLI - https://openmeld.ai",
|
|
40
40
|
license: "MIT",
|
|
@@ -2189,13 +2189,13 @@ async function migrateProjectBindingStore(input) {
|
|
|
2189
2189
|
}));
|
|
2190
2190
|
}
|
|
2191
2191
|
function parseProjectBindingStore(value, path) {
|
|
2192
|
-
if (isRecord$
|
|
2193
|
-
if (!(isRecord$
|
|
2192
|
+
if (isRecord$9(value) && typeof value.version === "number" && Number.isSafeInteger(value.version) && value.version > 3) throw new ProjectBindingStoreUpdateRequiredError(path, value.version);
|
|
2193
|
+
if (!(isRecord$9(value) && (value.version === 1 || value.version === LEGACY_STORE_VERSION || value.version === 3) && Array.isArray(value.bindings))) throw new Error(`Project binding store is invalid: ${path}`);
|
|
2194
2194
|
const storeVersion = value.version;
|
|
2195
2195
|
const bindings = value.bindings.map((binding, index) => {
|
|
2196
2196
|
const label = `${path} bindings[${index}]`;
|
|
2197
2197
|
const parsed = parseBinding(binding, label, storeVersion === 1 ? 1 : LEGACY_STORE_VERSION);
|
|
2198
|
-
const isDefault = storeVersion === 3 ? requireBoolean(isRecord$
|
|
2198
|
+
const isDefault = storeVersion === 3 ? requireBoolean(isRecord$9(binding) ? binding.isDefault : void 0, `${label}.isDefault`) : true;
|
|
2199
2199
|
return {
|
|
2200
2200
|
...parsed,
|
|
2201
2201
|
isDefault
|
|
@@ -2230,7 +2230,7 @@ function assertProjectBindingStoreV3Invariants(bindings, path, sourceVersion) {
|
|
|
2230
2230
|
}
|
|
2231
2231
|
}
|
|
2232
2232
|
function parseBinding(value, label, storeVersion) {
|
|
2233
|
-
if (!isRecord$
|
|
2233
|
+
if (!isRecord$9(value)) throw new Error(`Agent Activity Project binding is invalid: ${label}`);
|
|
2234
2234
|
const repositoryFingerprint = value.repositoryFingerprint === null ? null : normalizeFingerprint(value.repositoryFingerprint);
|
|
2235
2235
|
const boundAtMs = Number(value.boundAtMs);
|
|
2236
2236
|
if (!Number.isSafeInteger(boundAtMs) || boundAtMs < 0) throw new Error(`Agent Activity Project binding is invalid: ${label}`);
|
|
@@ -2245,7 +2245,7 @@ function parseBinding(value, label, storeVersion) {
|
|
|
2245
2245
|
};
|
|
2246
2246
|
}
|
|
2247
2247
|
function readProjectBindingStoreVersion(value) {
|
|
2248
|
-
if (!(isRecord$
|
|
2248
|
+
if (!(isRecord$9(value) && (value.version === 1 || value.version === LEGACY_STORE_VERSION || value.version === 3))) throw new Error("Project binding store version is invalid");
|
|
2249
2249
|
return value.version;
|
|
2250
2250
|
}
|
|
2251
2251
|
function normalizeFingerprint(value) {
|
|
@@ -2262,7 +2262,7 @@ function requireBoolean(value, label) {
|
|
|
2262
2262
|
if (typeof value !== "boolean") throw new Error(`${label} is required`);
|
|
2263
2263
|
return value;
|
|
2264
2264
|
}
|
|
2265
|
-
function isRecord$
|
|
2265
|
+
function isRecord$9(value) {
|
|
2266
2266
|
return Boolean(value && typeof value === "object" && !Array.isArray(value));
|
|
2267
2267
|
}
|
|
2268
2268
|
function isNodeError$9(error, code) {
|
|
@@ -2696,7 +2696,7 @@ async function readCodexSessionTitles(input) {
|
|
|
2696
2696
|
if (!line.trim()) continue;
|
|
2697
2697
|
try {
|
|
2698
2698
|
const record = JSON.parse(line);
|
|
2699
|
-
if (!isRecord$
|
|
2699
|
+
if (!isRecord$8(record)) continue;
|
|
2700
2700
|
const sessionId = text$4(record.id);
|
|
2701
2701
|
const title = normalizeSharedSessionTitle(record.thread_name);
|
|
2702
2702
|
if (sessionId && title) titles.set(sessionId, title);
|
|
@@ -2711,7 +2711,7 @@ function normalizeSharedSessionTitle(value) {
|
|
|
2711
2711
|
function text$4(value) {
|
|
2712
2712
|
return typeof value === "string" && value.trim() ? value.trim() : null;
|
|
2713
2713
|
}
|
|
2714
|
-
function isRecord$
|
|
2714
|
+
function isRecord$8(value) {
|
|
2715
2715
|
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
2716
2716
|
}
|
|
2717
2717
|
function isNodeError$6(error) {
|
|
@@ -2721,12 +2721,12 @@ function isNodeError$6(error) {
|
|
|
2721
2721
|
//#region src/agent-activity/observer-adapters.ts
|
|
2722
2722
|
const ACTIVE_WINDOW_MS = 2 * 6e4;
|
|
2723
2723
|
function parseCodexRolloutSnapshot(input) {
|
|
2724
|
-
const meta = input.lines.find((line) => isRecord$
|
|
2725
|
-
if (!(isRecord$
|
|
2724
|
+
const meta = input.lines.find((line) => isRecord$7(line) && line.type === "session_meta" && isRecord$7(line.payload));
|
|
2725
|
+
if (!(isRecord$7(meta) && isRecord$7(meta.payload))) return null;
|
|
2726
2726
|
const sessionId = text$3(meta.payload.id);
|
|
2727
2727
|
const cwd = text$3(meta.payload.cwd);
|
|
2728
2728
|
if (!(sessionId && cwd)) return null;
|
|
2729
|
-
const safeEvidence = input.lines.filter((line) => isRecord$
|
|
2729
|
+
const safeEvidence = input.lines.filter((line) => isRecord$7(line)).map((line) => ({
|
|
2730
2730
|
line,
|
|
2731
2731
|
observedAtMs: timestamp$1(line.timestamp)
|
|
2732
2732
|
})).filter((entry) => entry.observedAtMs !== null).sort((left, right) => Number(left.observedAtMs) - Number(right.observedAtMs));
|
|
@@ -2734,17 +2734,17 @@ function parseCodexRolloutSnapshot(input) {
|
|
|
2734
2734
|
const latestTurn = [...safeEvidence].reverse().find((entry) => entry.line.type === "turn_context");
|
|
2735
2735
|
const observedAtMs = latest?.observedAtMs ?? timestamp$1(meta.timestamp);
|
|
2736
2736
|
if (observedAtMs === null) return null;
|
|
2737
|
-
const turnPayload = isRecord$
|
|
2737
|
+
const turnPayload = isRecord$7(latestTurn?.line.payload) ? latestTurn.line.payload : {};
|
|
2738
2738
|
const originator = normalizeCodexOriginator(meta.payload);
|
|
2739
2739
|
const status = resolveObservedStatus({
|
|
2740
2740
|
explicitIdle: safeEvidence.slice(-4).some((entry) => {
|
|
2741
|
-
const payload = isRecord$
|
|
2741
|
+
const payload = isRecord$7(entry.line.payload) ? entry.line.payload : null;
|
|
2742
2742
|
return entry.line.type === "event_msg" && (payload?.type === "task_complete" || payload?.type === "turn_aborted");
|
|
2743
2743
|
}),
|
|
2744
2744
|
nowMs: input.nowMs,
|
|
2745
2745
|
observedAtMs
|
|
2746
2746
|
});
|
|
2747
|
-
const git = isRecord$
|
|
2747
|
+
const git = isRecord$7(meta.payload.git) ? meta.payload.git : {};
|
|
2748
2748
|
return {
|
|
2749
2749
|
clientKind: resolveCodexClientKind(originator),
|
|
2750
2750
|
cwd,
|
|
@@ -2762,7 +2762,7 @@ function parseCodexRolloutSnapshot(input) {
|
|
|
2762
2762
|
"never"
|
|
2763
2763
|
]),
|
|
2764
2764
|
cliVersion: nullableText$1(meta.payload.cli_version),
|
|
2765
|
-
contextWindow: positiveInteger(isRecord$
|
|
2765
|
+
contextWindow: positiveInteger(isRecord$7(turnPayload.summary) ? turnPayload.summary.model_context_window : void 0),
|
|
2766
2766
|
modelProvider: nullableText$1(meta.payload.model_provider),
|
|
2767
2767
|
originator,
|
|
2768
2768
|
reasoningEffort: enumValue(turnPayload.effort, [
|
|
@@ -2773,7 +2773,7 @@ function parseCodexRolloutSnapshot(input) {
|
|
|
2773
2773
|
"xhigh",
|
|
2774
2774
|
"ultra"
|
|
2775
2775
|
]),
|
|
2776
|
-
sandboxMode: enumValue(isRecord$
|
|
2776
|
+
sandboxMode: enumValue(isRecord$7(turnPayload.sandbox_policy) ? turnPayload.sandbox_policy.type : turnPayload.sandbox_policy, [
|
|
2777
2777
|
"read-only",
|
|
2778
2778
|
"workspace-write",
|
|
2779
2779
|
"danger-full-access"
|
|
@@ -2791,7 +2791,7 @@ function resolveCodexClientKind(originator) {
|
|
|
2791
2791
|
return originator === "cli" ? "codex-cli" : "unknown";
|
|
2792
2792
|
}
|
|
2793
2793
|
function parseClaudeTranscriptSnapshot(input) {
|
|
2794
|
-
const records = input.lines.filter((line) => isRecord$
|
|
2794
|
+
const records = input.lines.filter((line) => isRecord$7(line));
|
|
2795
2795
|
const identity = records.find((line) => text$3(line.sessionId) && text$3(line.cwd));
|
|
2796
2796
|
if (!identity) return null;
|
|
2797
2797
|
const providerSessionId = text$3(identity.sessionId);
|
|
@@ -2803,7 +2803,7 @@ function parseClaudeTranscriptSnapshot(input) {
|
|
|
2803
2803
|
})).filter((entry) => entry.observedAtMs !== null).sort((left, right) => left.observedAtMs - right.observedAtMs);
|
|
2804
2804
|
const latest = timed.at(-1);
|
|
2805
2805
|
if (!latest) return null;
|
|
2806
|
-
const latestWithModel = [...timed].reverse().find((entry) => isRecord$
|
|
2806
|
+
const latestWithModel = [...timed].reverse().find((entry) => isRecord$7(entry.line.message) && text$3(entry.line.message.model));
|
|
2807
2807
|
const customTitle = [...records].reverse().find((line) => line.type === "custom-title");
|
|
2808
2808
|
const status = resolveObservedStatus({
|
|
2809
2809
|
explicitIdle: false,
|
|
@@ -2816,7 +2816,7 @@ function parseClaudeTranscriptSnapshot(input) {
|
|
|
2816
2816
|
eventType: status === "active" ? "heartbeat" : statusEventType(status),
|
|
2817
2817
|
gitBranch: nullableText$1(latest.line.gitBranch ?? identity.gitBranch),
|
|
2818
2818
|
gitCommit: null,
|
|
2819
|
-
model: isRecord$
|
|
2819
|
+
model: isRecord$7(latestWithModel?.line.message) ? nullableText$1(latestWithModel.line.message.model) : null,
|
|
2820
2820
|
observedAtMs: latest.observedAtMs,
|
|
2821
2821
|
provider: "claude-code",
|
|
2822
2822
|
providerMetadata: compact({
|
|
@@ -2943,7 +2943,7 @@ function resolveObservedStatus(input) {
|
|
|
2943
2943
|
}
|
|
2944
2944
|
function normalizeCodexOriginator(meta) {
|
|
2945
2945
|
if (text$3(meta.originator) === "Codex Desktop") return "desktop";
|
|
2946
|
-
if (isRecord$
|
|
2946
|
+
if (isRecord$7(meta.source) && "subagent" in meta.source) return "subagent";
|
|
2947
2947
|
const originator = text$3(meta.originator)?.toLowerCase();
|
|
2948
2948
|
return originator === "codex cli" || originator === "codex_cli" ? "cli" : void 0;
|
|
2949
2949
|
}
|
|
@@ -2988,16 +2988,16 @@ function text$3(value) {
|
|
|
2988
2988
|
return typeof value === "string" && value.trim() ? value.trim() : null;
|
|
2989
2989
|
}
|
|
2990
2990
|
function parseJsonRecord$1(value) {
|
|
2991
|
-
if (isRecord$
|
|
2991
|
+
if (isRecord$7(value)) return value;
|
|
2992
2992
|
if (typeof value !== "string") return null;
|
|
2993
2993
|
try {
|
|
2994
2994
|
const parsed = JSON.parse(value);
|
|
2995
|
-
return isRecord$
|
|
2995
|
+
return isRecord$7(parsed) ? parsed : null;
|
|
2996
2996
|
} catch {
|
|
2997
2997
|
return null;
|
|
2998
2998
|
}
|
|
2999
2999
|
}
|
|
3000
|
-
function isRecord$
|
|
3000
|
+
function isRecord$7(value) {
|
|
3001
3001
|
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
3002
3002
|
}
|
|
3003
3003
|
//#endregion
|
|
@@ -12831,13 +12831,13 @@ function parseOpenCodeOutputLine(line) {
|
|
|
12831
12831
|
const errorMessage = resolveErrorMessage$1(record, isErrorResult);
|
|
12832
12832
|
const resultText = resolveResultText$1(record, isErrorResult);
|
|
12833
12833
|
const sessionId = resolveSessionId$1(record);
|
|
12834
|
-
if (!errorMessage && resultText === null && sessionId === null) return null;
|
|
12834
|
+
if (!errorMessage && resultText === null && sessionId === null && isErrorResult === null) return null;
|
|
12835
12835
|
return {
|
|
12836
12836
|
errorMessage,
|
|
12837
12837
|
isErrorResult,
|
|
12838
12838
|
resultText,
|
|
12839
12839
|
sessionId,
|
|
12840
|
-
terminal:
|
|
12840
|
+
terminal: isErrorResult === true
|
|
12841
12841
|
};
|
|
12842
12842
|
}
|
|
12843
12843
|
function parseOpenCodeOutputDocument(text) {
|
|
@@ -12876,9 +12876,8 @@ function resolveResultText$1(record, isErrorResult) {
|
|
|
12876
12876
|
return resolveTextByPaths(record, OPENCODE_TEXT_PATHS);
|
|
12877
12877
|
}
|
|
12878
12878
|
function resolveErrorMessage$1(record, isErrorResult) {
|
|
12879
|
-
|
|
12880
|
-
|
|
12881
|
-
return null;
|
|
12879
|
+
if (isErrorResult !== true) return null;
|
|
12880
|
+
return resolveStringByPaths$1(record, OPENCODE_ERROR_MESSAGE_PATHS);
|
|
12882
12881
|
}
|
|
12883
12882
|
function resolveIsErrorResult$1(record) {
|
|
12884
12883
|
if (record.type === "error") return true;
|
|
@@ -12922,10 +12921,6 @@ function resolveTextByPaths(record, paths) {
|
|
|
12922
12921
|
}
|
|
12923
12922
|
return null;
|
|
12924
12923
|
}
|
|
12925
|
-
function looksLikeErrorSignal$1(value) {
|
|
12926
|
-
const lowered = value.toLowerCase();
|
|
12927
|
-
return lowered.includes("error") || lowered.includes("failed") || looksLikeRuntimePermissionDenialMessage(value) || lowered.includes("unauthorized") || lowered.includes("not logged in") || lowered.includes("invalid") || lowered.includes("quota") || lowered.includes("rate") || lowered.includes("unsupported model") || lowered.includes("model is not supported");
|
|
12928
|
-
}
|
|
12929
12924
|
function normalizeOptionalText$48(value) {
|
|
12930
12925
|
const normalized = String(value ?? "").trim();
|
|
12931
12926
|
return normalized.length > 0 ? normalized : null;
|
|
@@ -14743,7 +14738,7 @@ async function mapCodexThread(input) {
|
|
|
14743
14738
|
if (!(nativeSessionId && cwd && lastActiveAtMs !== null)) throw new Error("Codex returned a malformed retained thread record.");
|
|
14744
14739
|
const binding = await resolveObservedAgentActivityBinding(cwd, input.bindings);
|
|
14745
14740
|
if (!binding) return null;
|
|
14746
|
-
const runtimeStatus = isRecord$
|
|
14741
|
+
const runtimeStatus = isRecord$6(input.thread.status) ? text$1(input.thread.status.type) : null;
|
|
14747
14742
|
return {
|
|
14748
14743
|
binding,
|
|
14749
14744
|
session: observedLocalAgentSessionSchema.parse({
|
|
@@ -14787,7 +14782,7 @@ async function listAllCodexThreads(launchContract) {
|
|
|
14787
14782
|
sourceKinds: CODEX_THREAD_SOURCE_KINDS,
|
|
14788
14783
|
useStateDbOnly: false
|
|
14789
14784
|
});
|
|
14790
|
-
if (!(isRecord$
|
|
14785
|
+
if (!(isRecord$6(response) && Array.isArray(response.data) && response.data.every(isRecord$6))) throw new Error("Codex thread/list response is invalid.");
|
|
14791
14786
|
pages.push({
|
|
14792
14787
|
archived,
|
|
14793
14788
|
data: response.data
|
|
@@ -14912,12 +14907,12 @@ function consumeCodexJsonRpcChunk(input) {
|
|
|
14912
14907
|
}
|
|
14913
14908
|
}
|
|
14914
14909
|
function settleCodexJsonRpcResponse(message, pending) {
|
|
14915
|
-
if (!isRecord$
|
|
14910
|
+
if (!isRecord$6(message) || typeof message.id !== "number") return;
|
|
14916
14911
|
const request = pending.get(message.id);
|
|
14917
14912
|
if (!request) return;
|
|
14918
14913
|
pending.delete(message.id);
|
|
14919
14914
|
clearTimeout(request.timer);
|
|
14920
|
-
if (isRecord$
|
|
14915
|
+
if (isRecord$6(message.error)) {
|
|
14921
14916
|
request.reject(new Error(text$1(message.error.message) ?? "Codex app-server request failed."));
|
|
14922
14917
|
return;
|
|
14923
14918
|
}
|
|
@@ -15038,7 +15033,7 @@ function applyClaudeSessionLine(state, line) {
|
|
|
15038
15033
|
} catch (error) {
|
|
15039
15034
|
throw new Error("Claude Code Session file contains malformed JSON.", { cause: error });
|
|
15040
15035
|
}
|
|
15041
|
-
if (!isRecord$
|
|
15036
|
+
if (!isRecord$6(value)) return;
|
|
15042
15037
|
const rowSessionId = text$1(value.sessionId);
|
|
15043
15038
|
if (rowSessionId && state.nativeSessionId !== rowSessionId) {
|
|
15044
15039
|
if (state.nativeSessionId) throw new Error("Claude Code Session file contains conflicting IDs.");
|
|
@@ -15210,12 +15205,12 @@ async function discoverGrokBuildRetainedSessions(input) {
|
|
|
15210
15205
|
const identities = /* @__PURE__ */ new Set();
|
|
15211
15206
|
for (const path of paths) {
|
|
15212
15207
|
const summary = JSON.parse(await readFile(path, "utf8"));
|
|
15213
|
-
if (!isRecord$
|
|
15208
|
+
if (!isRecord$6(summary)) throw new Error("Grok Build summary metadata is invalid.");
|
|
15214
15209
|
const topLevelIdentity = {
|
|
15215
15210
|
cwd: text$1(summary.cwd),
|
|
15216
15211
|
nativeSessionId: text$1(summary.id)
|
|
15217
15212
|
};
|
|
15218
|
-
const nestedInfo = isRecord$
|
|
15213
|
+
const nestedInfo = isRecord$6(summary.info) ? summary.info : null;
|
|
15219
15214
|
const nestedIdentity = {
|
|
15220
15215
|
cwd: text$1(nestedInfo?.cwd),
|
|
15221
15216
|
nativeSessionId: text$1(nestedInfo?.id)
|
|
@@ -15365,7 +15360,7 @@ function mapClaudeAgentStatus(value) {
|
|
|
15365
15360
|
}
|
|
15366
15361
|
function collectRecords(value) {
|
|
15367
15362
|
if (Array.isArray(value)) return value.flatMap(collectRecords);
|
|
15368
|
-
if (!isRecord$
|
|
15363
|
+
if (!isRecord$6(value)) return [];
|
|
15369
15364
|
return [value, ...Object.values(value).flatMap(collectRecords)];
|
|
15370
15365
|
}
|
|
15371
15366
|
function secondsTimestamp(value) {
|
|
@@ -15388,7 +15383,7 @@ function parseCodexNextCursor(value) {
|
|
|
15388
15383
|
function text$1(value) {
|
|
15389
15384
|
return nullableText(value);
|
|
15390
15385
|
}
|
|
15391
|
-
function isRecord$
|
|
15386
|
+
function isRecord$6(value) {
|
|
15392
15387
|
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
15393
15388
|
}
|
|
15394
15389
|
function isNodeError$4(error, code) {
|
|
@@ -16575,7 +16570,7 @@ async function readAgentActivityIntegrationStatus(paths) {
|
|
|
16575
16570
|
claude: claude !== null && CLAUDE_EVENTS.every((event) => {
|
|
16576
16571
|
try {
|
|
16577
16572
|
const settings = parseSettings(claude);
|
|
16578
|
-
const hooks = isRecord$
|
|
16573
|
+
const hooks = isRecord$5(settings.hooks) ? settings.hooks : null;
|
|
16579
16574
|
return Array.isArray(hooks?.[event]) && hooks[event].some((group) => knownArtifacts.some((artifacts) => hasOwnedClaudeHook(group, artifacts)));
|
|
16580
16575
|
} catch {
|
|
16581
16576
|
return false;
|
|
@@ -16585,7 +16580,7 @@ async function readAgentActivityIntegrationStatus(paths) {
|
|
|
16585
16580
|
cursor: cursor !== null && CURSOR_EVENTS.every((event) => {
|
|
16586
16581
|
try {
|
|
16587
16582
|
const settings = parseJsonObject(cursor, "Cursor hooks");
|
|
16588
|
-
const hooks = isRecord$
|
|
16583
|
+
const hooks = isRecord$5(settings.hooks) ? settings.hooks : null;
|
|
16589
16584
|
return Array.isArray(hooks?.[event]) && hooks[event].some((entry) => knownArtifacts.some((artifacts) => isOwnedCursorHook(entry, artifacts.cursorCommand)));
|
|
16590
16585
|
} catch {
|
|
16591
16586
|
return false;
|
|
@@ -16640,7 +16635,7 @@ function installCursorHooks(raw, artifacts, knownArtifacts) {
|
|
|
16640
16635
|
}
|
|
16641
16636
|
function uninstallCursorHooks(raw, knownArtifacts) {
|
|
16642
16637
|
const settings = parseJsonObject(raw, "Cursor hooks");
|
|
16643
|
-
const hooks = isRecord$
|
|
16638
|
+
const hooks = isRecord$5(settings.hooks) ? settings.hooks : null;
|
|
16644
16639
|
if (!hooks) return raw;
|
|
16645
16640
|
for (const event of CURSOR_EVENTS) {
|
|
16646
16641
|
if (!Array.isArray(hooks[event])) continue;
|
|
@@ -16656,17 +16651,17 @@ function ownedCursorHook(command) {
|
|
|
16656
16651
|
};
|
|
16657
16652
|
}
|
|
16658
16653
|
function isOwnedCursorHook(value, command) {
|
|
16659
|
-
return isRecord$
|
|
16654
|
+
return isRecord$5(value) && Object.keys(value).length === 2 && value.command === command && value.timeout === 10;
|
|
16660
16655
|
}
|
|
16661
16656
|
function isKnownOwnedCursorHook(value, knownArtifacts) {
|
|
16662
16657
|
return knownArtifacts.some((artifacts) => isOwnedCursorHook(value, artifacts.cursorCommand) || isOwnedCursorHook(value, artifacts.legacyCursorCommand));
|
|
16663
16658
|
}
|
|
16664
16659
|
function hasUnknownOpenMeldCursorHook(value, knownArtifacts) {
|
|
16665
|
-
return isRecord$
|
|
16660
|
+
return isRecord$5(value) && typeof value.command === "string" && value.command.includes(" activity hook --provider cursor --owner ") && value.command.includes("openmeld-agent-activity-") && !isKnownOwnedCursorHook(value, knownArtifacts);
|
|
16666
16661
|
}
|
|
16667
16662
|
function uninstallClaudeHooks(raw, knownArtifacts) {
|
|
16668
16663
|
const settings = parseSettings(raw);
|
|
16669
|
-
const hooks = isRecord$
|
|
16664
|
+
const hooks = isRecord$5(settings.hooks) ? settings.hooks : null;
|
|
16670
16665
|
if (!hooks) return raw;
|
|
16671
16666
|
for (const event of CLAUDE_EVENTS) {
|
|
16672
16667
|
if (!Array.isArray(hooks[event])) continue;
|
|
@@ -16683,14 +16678,14 @@ function ownedClaudeGroup(artifacts) {
|
|
|
16683
16678
|
}] };
|
|
16684
16679
|
}
|
|
16685
16680
|
function isOwnedClaudeGroup(value, artifacts) {
|
|
16686
|
-
if (!isRecord$
|
|
16687
|
-
return value.hooks.length === 1 && isRecord$
|
|
16681
|
+
if (!isRecord$5(value) || Object.keys(value).length !== 1 || !Array.isArray(value.hooks)) return false;
|
|
16682
|
+
return value.hooks.length === 1 && isRecord$5(value.hooks[0]) && value.hooks[0].command === artifacts.claudeCommand && value.hooks[0].timeout === 10 && value.hooks[0].type === "command" && Object.keys(value.hooks[0]).length === 3;
|
|
16688
16683
|
}
|
|
16689
16684
|
function hasOwnedClaudeHook(value, artifacts) {
|
|
16690
|
-
return isRecord$
|
|
16685
|
+
return isRecord$5(value) && Array.isArray(value.hooks) && value.hooks.some((hook) => isRecord$5(hook) && hook.command === artifacts.claudeCommand);
|
|
16691
16686
|
}
|
|
16692
16687
|
function hasUnknownOpenMeldClaudeHook(value, knownArtifacts) {
|
|
16693
|
-
return isRecord$
|
|
16688
|
+
return isRecord$5(value) && Array.isArray(value.hooks) && value.hooks.some((hook) => isRecord$5(hook) && typeof hook.command === "string" && hook.command.includes(" activity hook --provider claude-code --owner ") && hook.command.includes("openmeld-agent-activity-")) && !isKnownOwnedClaudeGroup(value, knownArtifacts);
|
|
16694
16689
|
}
|
|
16695
16690
|
function isLegacyOwnedClaudeGroup(value, artifacts) {
|
|
16696
16691
|
return isOwnedClaudeGroupForCommand(value, artifacts.legacyClaudeCommand);
|
|
@@ -16749,8 +16744,8 @@ function extractCodexTrustState(block, endMarker) {
|
|
|
16749
16744
|
};
|
|
16750
16745
|
}
|
|
16751
16746
|
function isOwnedClaudeGroupForCommand(value, command) {
|
|
16752
|
-
if (!isRecord$
|
|
16753
|
-
return value.hooks.length === 1 && isRecord$
|
|
16747
|
+
if (!isRecord$5(value) || Object.keys(value).length !== 1 || !Array.isArray(value.hooks)) return false;
|
|
16748
|
+
return value.hooks.length === 1 && isRecord$5(value.hooks[0]) && value.hooks[0].command === command && value.hooks[0].timeout === 10 && value.hooks[0].type === "command" && Object.keys(value.hooks[0]).length === 3;
|
|
16754
16749
|
}
|
|
16755
16750
|
async function planPluginInstall(path, artifacts, knownArtifacts) {
|
|
16756
16751
|
const current = await readOptionalFile$1(path);
|
|
@@ -16890,12 +16885,12 @@ function parseSettings(raw) {
|
|
|
16890
16885
|
function parseJsonObject(raw, label) {
|
|
16891
16886
|
if (!raw.trim()) return {};
|
|
16892
16887
|
const value = JSON.parse(raw);
|
|
16893
|
-
if (!isRecord$
|
|
16888
|
+
if (!isRecord$5(value)) throw new Error(`${label} must be a JSON object.`);
|
|
16894
16889
|
return value;
|
|
16895
16890
|
}
|
|
16896
16891
|
function ensureRecord(parent, key, label = "Claude settings") {
|
|
16897
16892
|
if (parent[key] === void 0) parent[key] = {};
|
|
16898
|
-
if (!isRecord$
|
|
16893
|
+
if (!isRecord$5(parent[key])) throw new Error(`${label} ${key} must be an object.`);
|
|
16899
16894
|
return parent[key];
|
|
16900
16895
|
}
|
|
16901
16896
|
function emptyFileFor(path) {
|
|
@@ -16905,7 +16900,7 @@ function revisionConflict(path) {
|
|
|
16905
16900
|
const digest = createHash("sha256").update(path).digest("hex").slice(0, 12);
|
|
16906
16901
|
return /* @__PURE__ */ new Error(`Managed integration revision changed before commit (${digest}).`);
|
|
16907
16902
|
}
|
|
16908
|
-
function isRecord$
|
|
16903
|
+
function isRecord$5(value) {
|
|
16909
16904
|
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
16910
16905
|
}
|
|
16911
16906
|
function isNodeError$2(error, code) {
|
|
@@ -17524,7 +17519,7 @@ function resolveOpenMeldAccountContext(input) {
|
|
|
17524
17519
|
};
|
|
17525
17520
|
}
|
|
17526
17521
|
async function resolveCurrentOpenMeldAccountContext() {
|
|
17527
|
-
const { getAuthSessionMetadata } = await import("./auth-session-
|
|
17522
|
+
const { getAuthSessionMetadata } = await import("./auth-session-73FalW41.js").then((n) => n.t);
|
|
17528
17523
|
return resolveOpenMeldAccountContext({ session: await getAuthSessionMetadata().catch(() => null) });
|
|
17529
17524
|
}
|
|
17530
17525
|
function resolveHostKey(baseUrl) {
|
|
@@ -18274,7 +18269,7 @@ async function requestOpenMeldProfilesApi(input) {
|
|
|
18274
18269
|
})
|
|
18275
18270
|
});
|
|
18276
18271
|
}
|
|
18277
|
-
const record = isRecord$
|
|
18272
|
+
const record = isRecord$4(payload) ? payload : {};
|
|
18278
18273
|
if (!readBooleanField(record, "ok")) {
|
|
18279
18274
|
const parsedError = profileErrorResponseSchema.safeParse(payload);
|
|
18280
18275
|
const code = parsedError.success ? parsedError.data.code : null;
|
|
@@ -18355,7 +18350,7 @@ async function emitRouteCatalogSync(reason) {
|
|
|
18355
18350
|
await touchDaemonCatalogSyncSignal({ reason }).catch(() => void 0);
|
|
18356
18351
|
}
|
|
18357
18352
|
function parseOpenMeldProfileItem(value) {
|
|
18358
|
-
const record = isRecord$
|
|
18353
|
+
const record = isRecord$4(value) ? value : {};
|
|
18359
18354
|
const openMeldProfileId = readOptionalStringField$1(record, "openMeldProfileId");
|
|
18360
18355
|
if (!openMeldProfileId) throw new Error("invalid profile payload: missing openMeldProfileId");
|
|
18361
18356
|
const profileName = readRequiredStringField(record, "profileName");
|
|
@@ -18411,13 +18406,13 @@ function readOptionalManagedRoleField(input, field) {
|
|
|
18411
18406
|
}
|
|
18412
18407
|
function readRecordField(input, field) {
|
|
18413
18408
|
const value = input[field];
|
|
18414
|
-
if (isRecord$
|
|
18409
|
+
if (isRecord$4(value)) return value;
|
|
18415
18410
|
throw new Error(`invalid api payload: missing ${field}`);
|
|
18416
18411
|
}
|
|
18417
18412
|
function readArrayField(input, field) {
|
|
18418
18413
|
const value = input[field];
|
|
18419
18414
|
if (!Array.isArray(value)) throw new Error(`invalid api payload: missing ${field}`);
|
|
18420
|
-
return value.filter(isRecord$
|
|
18415
|
+
return value.filter(isRecord$4);
|
|
18421
18416
|
}
|
|
18422
18417
|
function readRequiredStringField(input, field) {
|
|
18423
18418
|
const value = normalizeOptionalString$13(input[field]);
|
|
@@ -18460,7 +18455,7 @@ async function parseResponseJson$1(response) {
|
|
|
18460
18455
|
}
|
|
18461
18456
|
}
|
|
18462
18457
|
function extractApiErrorMessage$1(payload, status) {
|
|
18463
|
-
const record = isRecord$
|
|
18458
|
+
const record = isRecord$4(payload) ? payload : {};
|
|
18464
18459
|
const message = normalizeOptionalString$13(record.message) ?? normalizeOptionalString$13(record.error_description) ?? normalizeOptionalString$13(record.error);
|
|
18465
18460
|
if (message) return message;
|
|
18466
18461
|
return `request failed with status ${status}`;
|
|
@@ -18498,7 +18493,7 @@ function isHostedProfilesEndpoint(endpoint) {
|
|
|
18498
18493
|
const url = parseUrlOrNull$1(endpoint);
|
|
18499
18494
|
return Boolean(url && !isLoopbackHostname$2(url.hostname) && url.pathname.startsWith("/v1/profiles"));
|
|
18500
18495
|
}
|
|
18501
|
-
function isRecord$
|
|
18496
|
+
function isRecord$4(value) {
|
|
18502
18497
|
return Boolean(value && typeof value === "object" && !Array.isArray(value));
|
|
18503
18498
|
}
|
|
18504
18499
|
//#endregion
|
|
@@ -19172,7 +19167,7 @@ var DaemonServiceRunError = class extends Error {
|
|
|
19172
19167
|
//#region src/local-service/state/runtime-contract-guard.ts
|
|
19173
19168
|
const RUNTIME_CONTRACT_META_SCHEMA = "daemon.runtime.contract.meta";
|
|
19174
19169
|
const RUNTIME_CONTRACT_REPAIR_REPORT_SCHEMA = "daemon.runtime.contract.repair.report";
|
|
19175
|
-
const isRecord$
|
|
19170
|
+
const isRecord$3 = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
19176
19171
|
const createRuntimeContractMeta = (input) => ({
|
|
19177
19172
|
schema: RUNTIME_CONTRACT_META_SCHEMA,
|
|
19178
19173
|
v: 1,
|
|
@@ -19192,7 +19187,7 @@ const createRuntimeContractRepairReport = (input) => ({
|
|
|
19192
19187
|
errorMessage: input.errorMessage
|
|
19193
19188
|
});
|
|
19194
19189
|
const parseRuntimeContractMeta = (value) => {
|
|
19195
|
-
if (!isRecord$
|
|
19190
|
+
if (!isRecord$3(value)) return null;
|
|
19196
19191
|
if (value.schema !== RUNTIME_CONTRACT_META_SCHEMA || value.v !== 1) return null;
|
|
19197
19192
|
const contractEpoch = normalizeOptionalText$44(value.contractEpoch);
|
|
19198
19193
|
const updatedAt = normalizeOptionalText$44(value.updatedAt);
|
|
@@ -19205,7 +19200,7 @@ const parseRuntimeContractMeta = (value) => {
|
|
|
19205
19200
|
};
|
|
19206
19201
|
};
|
|
19207
19202
|
const parseRuntimeContractRepairReport = (value) => {
|
|
19208
|
-
if (!isRecord$
|
|
19203
|
+
if (!isRecord$3(value)) return null;
|
|
19209
19204
|
if (value.schema !== RUNTIME_CONTRACT_REPAIR_REPORT_SCHEMA || value.v !== 1) return null;
|
|
19210
19205
|
const status = value.status;
|
|
19211
19206
|
const reason = value.reason;
|
|
@@ -20829,6 +20824,17 @@ function containsOpenMeldManagedBinaryPath(value, pathInput = {}) {
|
|
|
20829
20824
|
const normalizedValue = normalizeManagedBinaryPathText(value);
|
|
20830
20825
|
return containsExactManagedPath(normalizedValue, normalizeManagedBinaryPathText(openMeldManagedBinaryPath(pathInput))) || containsManagedVersionBinaryPath(normalizedValue, pathInput);
|
|
20831
20826
|
}
|
|
20827
|
+
function resolveOpenMeldManagedVersionBinaryRootPath(value) {
|
|
20828
|
+
const normalizedPath = normalizeManagedBinaryPathText(value);
|
|
20829
|
+
const segments = normalizedPath.split("/");
|
|
20830
|
+
const binaryName = segments.pop();
|
|
20831
|
+
const versionSegment = segments.pop();
|
|
20832
|
+
const versionsDirectory = segments.pop();
|
|
20833
|
+
if (binaryName !== MANAGED_BINARY_NAME || versionsDirectory !== "versions" || !versionSegment || !isValidManagedVersionSegment(versionSegment)) return null;
|
|
20834
|
+
const rootPath = segments.join("/");
|
|
20835
|
+
if (rootPath.length > 0) return rootPath;
|
|
20836
|
+
return normalizedPath.startsWith("/") ? "/" : null;
|
|
20837
|
+
}
|
|
20832
20838
|
function isManagedVersionBinaryPath(normalizedPath, pathInput) {
|
|
20833
20839
|
const versionsRoot = normalizeVersionsRoot(pathInput);
|
|
20834
20840
|
if (!normalizedPath.startsWith(versionsRoot)) return false;
|
|
@@ -22252,6 +22258,7 @@ function resolveExpectedDaemonServiceManagerCommandPaths(input) {
|
|
|
22252
22258
|
//#endregion
|
|
22253
22259
|
//#region src/local-service/lifecycle/daemon-service-process-inventory.ts
|
|
22254
22260
|
const POSIX_PROCESS_LINE_PATTERN = /^(\d+)\s+(\d+)\s+(.+)$/;
|
|
22261
|
+
const TRAILING_PATH_SEPARATOR_PATTERN = /\/+$/u;
|
|
22255
22262
|
const OPENMELD_PACKAGE_INSTALL_ENTRY_SEGMENT = "/node_modules/openmeld/dist/openmeld.js";
|
|
22256
22263
|
const OPENMELD_DEV_LOCAL_ENTRY_SEGMENT = "/openmeld-dev.js";
|
|
22257
22264
|
const ALL_OPENMELD_ENV_PRESETS = [
|
|
@@ -22326,6 +22333,8 @@ function looksLikeCurrentLaneDaemonCandidate(input) {
|
|
|
22326
22333
|
return isDaemonRuntimeProcessCommand(input.normalizedCommand) || input.normalizedCommand.includes(input.launcherPath) || input.wrapperPaths.some((wrapperPath) => daemonCommandContainsExactPath(input.normalizedCommand, wrapperPath)) || input.normalizedCommand.includes("legacy-detached");
|
|
22327
22334
|
}
|
|
22328
22335
|
function resolveDaemonCommandLaneScope(input) {
|
|
22336
|
+
const managedVersionRoot = resolveDaemonCommandManagedVersionRoot(input.normalizedCommand);
|
|
22337
|
+
if (managedVersionRoot) return managedVersionRoot === normalizeRootPath(resolveOpenMeldRootDir(input.pathInput)) ? "current_lane" : "other_lane";
|
|
22329
22338
|
const currentLane = resolveOpenMeldEnvPreset(input.pathInput);
|
|
22330
22339
|
const managedLane = resolveManagedDaemonPathLane({
|
|
22331
22340
|
normalizedCommand: input.normalizedCommand,
|
|
@@ -22336,6 +22345,13 @@ function resolveDaemonCommandLaneScope(input) {
|
|
|
22336
22345
|
if (!detectedLane) return "not_openmeld";
|
|
22337
22346
|
return detectedLane === currentLane ? "current_lane" : "other_lane";
|
|
22338
22347
|
}
|
|
22348
|
+
function resolveDaemonCommandManagedVersionRoot(normalizedCommand) {
|
|
22349
|
+
for (const token of tokenizeDaemonCommand(normalizedCommand)) {
|
|
22350
|
+
const rootPath = resolveOpenMeldManagedVersionBinaryRootPath(token);
|
|
22351
|
+
if (rootPath) return normalizeRootPath(rootPath);
|
|
22352
|
+
}
|
|
22353
|
+
return null;
|
|
22354
|
+
}
|
|
22339
22355
|
function resolveManagedDaemonPathLane(input) {
|
|
22340
22356
|
for (const preset of ALL_OPENMELD_ENV_PRESETS) {
|
|
22341
22357
|
const lanePathInput = resolveLanePathInput(input.pathInput, preset);
|
|
@@ -22455,6 +22471,10 @@ function resolveLanePathInput(pathInput, preset) {
|
|
|
22455
22471
|
function normalizeProcessCommand(command) {
|
|
22456
22472
|
return command.trim().toLowerCase().replaceAll("\\", "/");
|
|
22457
22473
|
}
|
|
22474
|
+
function normalizeRootPath(path) {
|
|
22475
|
+
const normalized = normalizeProcessCommand(path);
|
|
22476
|
+
return normalized === "/" ? normalized : normalized.replace(TRAILING_PATH_SEPARATOR_PATTERN, "");
|
|
22477
|
+
}
|
|
22458
22478
|
//#endregion
|
|
22459
22479
|
//#region src/local-service/lifecycle/daemon-service-legacy-shared.ts
|
|
22460
22480
|
const PROD_ENV_PRESET = "prod";
|
|
@@ -23715,7 +23735,6 @@ async function runCursorAcpTurn(input) {
|
|
|
23715
23735
|
});
|
|
23716
23736
|
assertSuccessfulStopReason(promptResult);
|
|
23717
23737
|
const output = input.session.readCollectedAgentText();
|
|
23718
|
-
assertCursorOutputIsNotAccountBlock(output);
|
|
23719
23738
|
await emitFinalPreviewIfRequested({
|
|
23720
23739
|
onPreview: input.input.onPreview,
|
|
23721
23740
|
output,
|
|
@@ -24193,14 +24212,6 @@ function assertSuccessfulStopReason(value) {
|
|
|
24193
24212
|
message: `runtime.turn.${stopReason}: Cursor ACP ended the turn with stopReason '${stopReason}'`
|
|
24194
24213
|
});
|
|
24195
24214
|
}
|
|
24196
|
-
function assertCursorOutputIsNotAccountBlock(output) {
|
|
24197
|
-
if (!isCursorPlanUpgradeRequired(output)) return;
|
|
24198
|
-
throw new CursorAcpTransportError({
|
|
24199
|
-
code: "cursor.plan_upgrade_required",
|
|
24200
|
-
errorType: "adapter",
|
|
24201
|
-
message: output.trim()
|
|
24202
|
-
});
|
|
24203
|
-
}
|
|
24204
24215
|
function isCursorPlanUpgradeRequired(value) {
|
|
24205
24216
|
return CURSOR_PLAN_UPGRADE_REQUIRED_RE.test(value.trim());
|
|
24206
24217
|
}
|
|
@@ -24690,13 +24701,8 @@ function resolveDocumentOutputText(record, isErrorResult) {
|
|
|
24690
24701
|
return resolveResultText(record, isErrorResult);
|
|
24691
24702
|
}
|
|
24692
24703
|
function resolveErrorMessage(record, isErrorResult) {
|
|
24693
|
-
|
|
24694
|
-
|
|
24695
|
-
if (isErrorResult === true) {
|
|
24696
|
-
const fallback = resolveStringByPaths(record, OPENCLAW_RESULT_TEXT_PATHS);
|
|
24697
|
-
if (fallback) return fallback;
|
|
24698
|
-
}
|
|
24699
|
-
return null;
|
|
24704
|
+
if (isErrorResult !== true) return null;
|
|
24705
|
+
return resolveStringByPaths(record, OPENCLAW_ERROR_MESSAGE_PATHS) ?? resolveStringByPaths(record, OPENCLAW_RESULT_TEXT_PATHS);
|
|
24700
24706
|
}
|
|
24701
24707
|
function resolveIsErrorResult(record) {
|
|
24702
24708
|
if (typeof record.is_error === "boolean") return record.is_error;
|
|
@@ -24755,10 +24761,6 @@ function normalizeCandidateValue(value) {
|
|
|
24755
24761
|
}
|
|
24756
24762
|
return null;
|
|
24757
24763
|
}
|
|
24758
|
-
function looksLikeErrorSignal(value) {
|
|
24759
|
-
const lowered = value.toLowerCase();
|
|
24760
|
-
return lowered.includes("error") || lowered.includes("failed") || looksLikeRuntimePermissionDenialMessage(value) || lowered.includes("unauthorized") || lowered.includes("not logged in") || lowered.includes("invalid");
|
|
24761
|
-
}
|
|
24762
24764
|
function normalizeOptionalText$38(value) {
|
|
24763
24765
|
const normalized = String(value ?? "").trim();
|
|
24764
24766
|
return normalized.length > 0 ? normalized : null;
|
|
@@ -29109,7 +29111,7 @@ const INFLIGHT_RETENTION_MS = DEDUPE_RETENTION_MS;
|
|
|
29109
29111
|
const AGENT_CONTEXT_RETENTION_MS = 720 * 60 * 60 * 1e3;
|
|
29110
29112
|
const AGENT_CONTEXT_MAX_ENTRIES = 2e3;
|
|
29111
29113
|
const AGENT_CONTEXT_LOOKUP_KEY_SEPARATOR = "|";
|
|
29112
|
-
const isRecord$
|
|
29114
|
+
const isRecord$2 = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
29113
29115
|
const isPositiveInteger = (value) => Number.isInteger(value) && typeof value === "number" && value >= 0;
|
|
29114
29116
|
const isRuntimeTransportMode = (value) => runtimeTransportModeSchema.safeParse(value).success;
|
|
29115
29117
|
const utf8ByteLength = (value) => {
|
|
@@ -29133,7 +29135,7 @@ const utf8ByteLength = (value) => {
|
|
|
29133
29135
|
return byteLength;
|
|
29134
29136
|
};
|
|
29135
29137
|
const toErrorCode = (error) => {
|
|
29136
|
-
if (!isRecord$
|
|
29138
|
+
if (!isRecord$2(error)) return null;
|
|
29137
29139
|
const code = error.code;
|
|
29138
29140
|
if (typeof code !== "string") return null;
|
|
29139
29141
|
return code;
|
|
@@ -29153,7 +29155,7 @@ const buildLegacySpaceScopedAgentContextLookupKey = (input) => [
|
|
|
29153
29155
|
input.runtimeWorkspaceFingerprint
|
|
29154
29156
|
].map(encodeAgentContextLookupKeyPart).join(AGENT_CONTEXT_LOOKUP_KEY_SEPARATOR);
|
|
29155
29157
|
const parseInflightTask = (value) => {
|
|
29156
|
-
if (!isRecord$
|
|
29158
|
+
if (!isRecord$2(value)) return null;
|
|
29157
29159
|
const { bindingKey, firstSeenAtMs, idempotencyKey, output, sequence, taskId } = value;
|
|
29158
29160
|
if (typeof taskId !== "string" || taskId.length === 0 || typeof bindingKey !== "string" || bindingKey.length === 0 || typeof idempotencyKey !== "string" || idempotencyKey.length === 0 || !isPositiveInteger(sequence) || !isPositiveInteger(firstSeenAtMs)) return null;
|
|
29159
29161
|
if (output !== void 0 && (typeof output !== "string" || output.length === 0)) return null;
|
|
@@ -29167,7 +29169,7 @@ const parseInflightTask = (value) => {
|
|
|
29167
29169
|
};
|
|
29168
29170
|
};
|
|
29169
29171
|
const parseAgentContextState = (agentContextLookupKey, value) => {
|
|
29170
|
-
if (!isRecord$
|
|
29172
|
+
if (!isRecord$2(value)) return null;
|
|
29171
29173
|
const { agentControllerConversationId, agentControllerRef, createdAtMs, lastTaskId, spaceId, targetProfileId, transportMode, runtimeWorkspaceFingerprint, updatedAtMs } = value;
|
|
29172
29174
|
const parsedAgentControllerRef = typeof agentControllerRef === "string" ? parseAgentControllerRef$1(agentControllerRef) : null;
|
|
29173
29175
|
if (!isRuntimeTransportMode(transportMode) || typeof agentContextLookupKey !== "string" || agentContextLookupKey.length === 0 || typeof spaceId !== "string" || spaceId.length === 0 || typeof targetProfileId !== "string" || targetProfileId.length === 0 || !parsedAgentControllerRef || typeof runtimeWorkspaceFingerprint !== "string" || runtimeWorkspaceFingerprint.length === 0 || typeof agentControllerConversationId !== "string" || agentControllerConversationId.length === 0 || !isPositiveInteger(createdAtMs) || !isPositiveInteger(updatedAtMs) || typeof lastTaskId !== "string" || lastTaskId.length === 0) return null;
|
|
@@ -29199,7 +29201,7 @@ const parseAgentContextState = (agentContextLookupKey, value) => {
|
|
|
29199
29201
|
};
|
|
29200
29202
|
};
|
|
29201
29203
|
const parseAgentContextLifecycleCounters = (value) => {
|
|
29202
|
-
if (!isRecord$
|
|
29204
|
+
if (!isRecord$2(value)) return null;
|
|
29203
29205
|
const { created, guardBlocked, recreated, reused } = value;
|
|
29204
29206
|
if (!(isPositiveInteger(created) && isPositiveInteger(recreated) && isPositiveInteger(reused) && isPositiveInteger(guardBlocked))) return null;
|
|
29205
29207
|
return {
|
|
@@ -29216,7 +29218,7 @@ const createEmptyAgentContextLifecycleCounters = () => ({
|
|
|
29216
29218
|
reused: 0
|
|
29217
29219
|
});
|
|
29218
29220
|
const parseAgentContextRotationRecord = (value) => {
|
|
29219
|
-
if (!isRecord$
|
|
29221
|
+
if (!isRecord$2(value)) return null;
|
|
29220
29222
|
const { nextAgentControllerConversationId, previousAgentControllerConversationId, rotationAt, rotationReason, rotationTaskId, rotationTriggerErrorCode } = value;
|
|
29221
29223
|
if (typeof previousAgentControllerConversationId !== "string" || previousAgentControllerConversationId.length === 0 || typeof nextAgentControllerConversationId !== "string" || nextAgentControllerConversationId.length === 0 || typeof rotationTriggerErrorCode !== "string" || rotationTriggerErrorCode.length === 0 || typeof rotationReason !== "string" || rotationReason.length === 0 || !isPositiveInteger(rotationAt) || typeof rotationTaskId !== "string" || rotationTaskId.length === 0) return null;
|
|
29222
29224
|
return {
|
|
@@ -29240,7 +29242,7 @@ const parseAgentContextRotationsOrDefault = (value) => {
|
|
|
29240
29242
|
return nextRecords;
|
|
29241
29243
|
};
|
|
29242
29244
|
const parseDedupeFirstSeenByKey = (value) => {
|
|
29243
|
-
if (!isRecord$
|
|
29245
|
+
if (!isRecord$2(value)) return null;
|
|
29244
29246
|
const nextDedupeFirstSeenByKey = {};
|
|
29245
29247
|
for (const [key, firstSeenAtMs] of Object.entries(value)) {
|
|
29246
29248
|
if (!isPositiveInteger(firstSeenAtMs)) return null;
|
|
@@ -29249,7 +29251,7 @@ const parseDedupeFirstSeenByKey = (value) => {
|
|
|
29249
29251
|
return nextDedupeFirstSeenByKey;
|
|
29250
29252
|
};
|
|
29251
29253
|
const parseInflightByTaskId = (value) => {
|
|
29252
|
-
if (!isRecord$
|
|
29254
|
+
if (!isRecord$2(value)) return null;
|
|
29253
29255
|
const nextInflightByTaskId = {};
|
|
29254
29256
|
for (const [taskId, inflightTask] of Object.entries(value)) {
|
|
29255
29257
|
const parsedTask = parseInflightTask(inflightTask);
|
|
@@ -29259,7 +29261,7 @@ const parseInflightByTaskId = (value) => {
|
|
|
29259
29261
|
return nextInflightByTaskId;
|
|
29260
29262
|
};
|
|
29261
29263
|
const parseReplayedTaskIds = (value) => {
|
|
29262
|
-
if (!isRecord$
|
|
29264
|
+
if (!isRecord$2(value)) return null;
|
|
29263
29265
|
const nextReplayedTaskIds = {};
|
|
29264
29266
|
for (const [taskId, replayed] of Object.entries(value)) {
|
|
29265
29267
|
if (replayed !== true) return null;
|
|
@@ -29268,7 +29270,7 @@ const parseReplayedTaskIds = (value) => {
|
|
|
29268
29270
|
return nextReplayedTaskIds;
|
|
29269
29271
|
};
|
|
29270
29272
|
const parseAgentContextByLookupKey = (value) => {
|
|
29271
|
-
if (!isRecord$
|
|
29273
|
+
if (!isRecord$2(value)) return null;
|
|
29272
29274
|
const nextAgentContextByLookupKey = {};
|
|
29273
29275
|
for (const [agentContextLookupKey, rawAgentContextState] of Object.entries(value)) {
|
|
29274
29276
|
const parsedAgentContextState = parseAgentContextState(agentContextLookupKey, rawAgentContextState);
|
|
@@ -29280,7 +29282,7 @@ const parseAgentContextByLookupKey = (value) => {
|
|
|
29280
29282
|
const parseAgentContextLifecycleCountersOrDefault = (value) => parseAgentContextLifecycleCounters(value);
|
|
29281
29283
|
const parseBootstrapExecutionByLookupKey = (value) => {
|
|
29282
29284
|
if (value === void 0) return {};
|
|
29283
|
-
if (!isRecord$
|
|
29285
|
+
if (!isRecord$2(value)) return null;
|
|
29284
29286
|
const nextBootstrapExecutionByLookupKey = {};
|
|
29285
29287
|
for (const [agentContextLookupKey, executionState] of Object.entries(value)) {
|
|
29286
29288
|
const parsedExecutionState = conversationExecutionStateSchema.safeParse(executionState);
|
|
@@ -29291,7 +29293,7 @@ const parseBootstrapExecutionByLookupKey = (value) => {
|
|
|
29291
29293
|
return nextBootstrapExecutionByLookupKey;
|
|
29292
29294
|
};
|
|
29293
29295
|
const parseLedgerStateV1 = (value) => {
|
|
29294
|
-
if (!isRecord$
|
|
29296
|
+
if (!isRecord$2(value)) return null;
|
|
29295
29297
|
const { agentContextRotations, dedupeFirstSeenByKey, inflightByTaskId, replayedTaskIds, agentContextByLookupKey, bootstrapExecutionByLookupKey, agentContextLifecycleCounters, updatedAtMs, v } = value;
|
|
29296
29298
|
if (v !== 1 || !isPositiveInteger(updatedAtMs)) return null;
|
|
29297
29299
|
const nextDedupeFirstSeenByKey = parseDedupeFirstSeenByKey(dedupeFirstSeenByKey);
|
|
@@ -29777,7 +29779,7 @@ const compareRecoveryCandidate = (left, right) => {
|
|
|
29777
29779
|
if (left.firstSeenAtMs !== right.firstSeenAtMs) return left.firstSeenAtMs - right.firstSeenAtMs;
|
|
29778
29780
|
return left.taskId.localeCompare(right.taskId);
|
|
29779
29781
|
};
|
|
29780
|
-
const normalizeOutput
|
|
29782
|
+
const normalizeOutput = (output) => {
|
|
29781
29783
|
if (typeof output !== "string") return null;
|
|
29782
29784
|
const trimmed = output.trim();
|
|
29783
29785
|
if (trimmed.length === 0) return null;
|
|
@@ -29813,7 +29815,7 @@ const settleRecoveredTask = (input) => settleInflightTask({
|
|
|
29813
29815
|
taskId: input.taskId
|
|
29814
29816
|
});
|
|
29815
29817
|
const buildTaskResultPayloadFromOutcome = (input) => {
|
|
29816
|
-
const output = normalizeOutput
|
|
29818
|
+
const output = normalizeOutput(input.output);
|
|
29817
29819
|
const errorType = input.errorType ?? "internal";
|
|
29818
29820
|
const commonFields = buildTaskResultCommonFields(input);
|
|
29819
29821
|
const errorFields = buildTaskResultErrorFields(input);
|
|
@@ -31471,14 +31473,12 @@ function isDaemonReconcileInProgressError(error) {
|
|
|
31471
31473
|
//#region ../../runtime/local-service/src/space-action-target-guidance.ts
|
|
31472
31474
|
const SPACE_ACTION_CONTEXT_GUIDANCE_LINES = ["- Keep private work, drafts, tool logs, and unauthorized sensitive context local. Treat this Wake as the current source; tie other context to the claims it supports, and reply in its current thread unless explicitly redirected.", "- A plain reply or bare @name does not hand off work; use Wake or Reply + Wake. Never wake another Agent Profile just to thank, acknowledge, or confirm receipt; wake only when new work moves the goal forward."];
|
|
31473
31475
|
const SPACE_ACTION_TARGET_GUIDANCE_LINES = [
|
|
31474
|
-
"
|
|
31475
|
-
"For fallback openmeld-space-action blocks, target semantics only count when they are written in post_message.messageEnvelope.",
|
|
31476
|
+
"Use OpenMeld Space Action CLI target flags such as --wake and --reference.",
|
|
31476
31477
|
"Any @name text in the body is only prose in the agent path; it does not define OpenMeld targets.",
|
|
31477
31478
|
"activationTargets is only for waking another Agent Profile in this Space.",
|
|
31478
31479
|
"activationTargets must reference an active Agent Profile member in this Space.",
|
|
31479
31480
|
"Never put a Human Profile ID, sender ID, or reply recipient in activationTargets.",
|
|
31480
|
-
"For a normal reply to the current Wake, leave activationTargets and referenceTargets empty."
|
|
31481
|
-
"Fallback openmeld-space-action target arrays must contain profileId strings, not objects. Example: {\"activationTargets\":[\"agt_11111111-1111-4111-8111-111111111111\"],\"referenceTargets\":[\"11111111-1111-4111-8111-111111111111\"]}."
|
|
31481
|
+
"For a normal reply to the current Wake, leave activationTargets and referenceTargets empty."
|
|
31482
31482
|
];
|
|
31483
31483
|
//#endregion
|
|
31484
31484
|
//#region ../../runtime/local-service/src/startup-command-capability.ts
|
|
@@ -37167,9 +37167,9 @@ function createModelCatalogReadSession(input) {
|
|
|
37167
37167
|
async function readModelCatalogOnce(baseUrl) {
|
|
37168
37168
|
try {
|
|
37169
37169
|
const [apiClient, baseUrlModule, clientFoundationModule] = await Promise.all([
|
|
37170
|
-
import("./dist-
|
|
37170
|
+
import("./dist-DXBncfSC.js").then((n) => n.w),
|
|
37171
37171
|
import("./base-url-Cv9x5Es9.js").then((n) => n.n),
|
|
37172
|
-
import("./api-client-foundation-
|
|
37172
|
+
import("./api-client-foundation-CfNo8-pE.js").then((n) => n.t)
|
|
37173
37173
|
]);
|
|
37174
37174
|
if (typeof apiClient.createConfigApi !== "function") throw new Error("config api client is unavailable");
|
|
37175
37175
|
const resolvedBaseUrl = baseUrl ?? await baseUrlModule.resolveBaseUrl();
|
|
@@ -41080,7 +41080,7 @@ async function clearDaemonStartFailureState(pathInput = {}) {
|
|
|
41080
41080
|
await rm(daemonStartFailureStatePath(pathInput), { force: true }).catch(() => void 0);
|
|
41081
41081
|
}
|
|
41082
41082
|
function parseDaemonStartFailureState(value) {
|
|
41083
|
-
if (!isRecord$
|
|
41083
|
+
if (!isRecord$1(value)) return null;
|
|
41084
41084
|
if (value.schema !== DAEMON_START_FAILURE_STATE_SCHEMA || value.v !== 1) return null;
|
|
41085
41085
|
const recordedAt = normalizeOptionalText$44(value.recordedAt);
|
|
41086
41086
|
const detail = normalizeOptionalText$44(value.detail);
|
|
@@ -41103,7 +41103,7 @@ function parseDaemonStartFailureState(value) {
|
|
|
41103
41103
|
function normalizeDependencyIssues(issues) {
|
|
41104
41104
|
const normalized = [];
|
|
41105
41105
|
for (const issue of issues) {
|
|
41106
|
-
if (!isRecord$
|
|
41106
|
+
if (!isRecord$1(issue)) continue;
|
|
41107
41107
|
const kind = issue.kind;
|
|
41108
41108
|
const status = issue.status;
|
|
41109
41109
|
const scope = issue.scope;
|
|
@@ -41122,7 +41122,7 @@ function normalizeDependencyIssues(issues) {
|
|
|
41122
41122
|
}
|
|
41123
41123
|
return normalized;
|
|
41124
41124
|
}
|
|
41125
|
-
function isRecord$
|
|
41125
|
+
function isRecord$1(value) {
|
|
41126
41126
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
41127
41127
|
}
|
|
41128
41128
|
async function writeJsonAtomic(input) {
|
|
@@ -43765,394 +43765,6 @@ function preserveOptionalText(value) {
|
|
|
43765
43765
|
if (typeof value !== "string" || value.trim().length === 0) return null;
|
|
43766
43766
|
return value;
|
|
43767
43767
|
}
|
|
43768
|
-
const STRUCTURED_ACTION_BLOCK_INFO_STRING = "openmeld-space-action";
|
|
43769
|
-
const STRUCTURED_ACTION_BLOCK_RE = /(?:\r?\n)?```openmeld-space-action\s*\r?\n([\s\S]*?)\r?\n```\s*$/;
|
|
43770
|
-
const STRUCTURED_ACTION_BLOCK_LINE_BREAK_RE = /\r?\n/u;
|
|
43771
|
-
const STRUCTURED_ACTION_BLOCK_HEADER_PART_RE = /\s+/u;
|
|
43772
|
-
const STRUCTURED_ACTION_BLOCK_PARSE_ERROR = "OpenMeld Space structured action block must be valid JSON or simple OpenMeld action syntax";
|
|
43773
|
-
const TRAILING_JSON_ACTION_PARSE_ERROR = "OpenMeld Space trailing JSON action must be a valid JSON object";
|
|
43774
|
-
function normalizeOpenMeldSpaceEgressActionInput(input) {
|
|
43775
|
-
if (!isRecord$1(input)) return input;
|
|
43776
|
-
const action = { ...input };
|
|
43777
|
-
switch (action.type) {
|
|
43778
|
-
case "post_message": return normalizePostMessageEgressActionInput(action);
|
|
43779
|
-
case "post_status": return normalizePostStatusEgressActionInput(action);
|
|
43780
|
-
case "stay_silent": return normalizeStaySilentEgressActionInput(action);
|
|
43781
|
-
default: return action;
|
|
43782
|
-
}
|
|
43783
|
-
}
|
|
43784
|
-
function hydrateOpenMeldSpaceEgressActionInputFromCleanedOutput(input) {
|
|
43785
|
-
if (!(input.action && typeof input.action === "object")) return input.action;
|
|
43786
|
-
const cleanedOutput = input.cleanedOutput.trim();
|
|
43787
|
-
if (!cleanedOutput) return input.action;
|
|
43788
|
-
const action = { ...input.action };
|
|
43789
|
-
if (action.type === "post_message" && typeof action.text !== "string" && typeof action.message !== "string") return {
|
|
43790
|
-
...action,
|
|
43791
|
-
text: cleanedOutput
|
|
43792
|
-
};
|
|
43793
|
-
if (action.type === "post_status" && typeof action.text !== "string" && typeof action.note !== "string") return {
|
|
43794
|
-
...action,
|
|
43795
|
-
text: cleanedOutput
|
|
43796
|
-
};
|
|
43797
|
-
return action;
|
|
43798
|
-
}
|
|
43799
|
-
function tryExtractTrailingStructuredSpaceActionBlock(input) {
|
|
43800
|
-
const rawOutput = typeof input.output === "string" ? input.output : "";
|
|
43801
|
-
const trimmedOutput = rawOutput.trimEnd();
|
|
43802
|
-
if (trimmedOutput.length === 0) return {
|
|
43803
|
-
carrierKind: "none",
|
|
43804
|
-
cleanedOutput: trimmedOutput,
|
|
43805
|
-
action: null,
|
|
43806
|
-
infoString: STRUCTURED_ACTION_BLOCK_INFO_STRING,
|
|
43807
|
-
parseError: null
|
|
43808
|
-
};
|
|
43809
|
-
let output;
|
|
43810
|
-
try {
|
|
43811
|
-
output = normalizeOutput(rawOutput);
|
|
43812
|
-
} catch (error) {
|
|
43813
|
-
return {
|
|
43814
|
-
carrierKind: "invalid_json",
|
|
43815
|
-
cleanedOutput: trimmedOutput,
|
|
43816
|
-
action: null,
|
|
43817
|
-
infoString: STRUCTURED_ACTION_BLOCK_INFO_STRING,
|
|
43818
|
-
parseError: error instanceof Error ? error.message : "OpenMeld Space structured action output is invalid"
|
|
43819
|
-
};
|
|
43820
|
-
}
|
|
43821
|
-
const matched = STRUCTURED_ACTION_BLOCK_RE.exec(output);
|
|
43822
|
-
if (!matched) return extractTrailingStandaloneJsonSpaceAction({
|
|
43823
|
-
output,
|
|
43824
|
-
infoString: STRUCTURED_ACTION_BLOCK_INFO_STRING
|
|
43825
|
-
});
|
|
43826
|
-
const cleanedOutput = resolveInvalidBlockFallbackOutput({
|
|
43827
|
-
matchedIndex: matched.index,
|
|
43828
|
-
output
|
|
43829
|
-
});
|
|
43830
|
-
const blockText = matched[1]?.trim() ?? "";
|
|
43831
|
-
if (blockText.length === 0) return {
|
|
43832
|
-
carrierKind: "fenced_block",
|
|
43833
|
-
cleanedOutput,
|
|
43834
|
-
action: null,
|
|
43835
|
-
infoString: STRUCTURED_ACTION_BLOCK_INFO_STRING,
|
|
43836
|
-
parseError: "OpenMeld Space structured action block is empty"
|
|
43837
|
-
};
|
|
43838
|
-
const parsedBlock = tryParseStructuredSpaceActionBlockInput(blockText);
|
|
43839
|
-
if (!(parsedBlock.actionInput && !parsedBlock.parseError)) return {
|
|
43840
|
-
carrierKind: "fenced_block",
|
|
43841
|
-
cleanedOutput,
|
|
43842
|
-
action: null,
|
|
43843
|
-
infoString: STRUCTURED_ACTION_BLOCK_INFO_STRING,
|
|
43844
|
-
parseError: parsedBlock.parseError
|
|
43845
|
-
};
|
|
43846
|
-
try {
|
|
43847
|
-
const action = normalizeExtractedOpenMeldSpaceEgressAction(hydrateOpenMeldSpaceEgressActionInputFromCleanedOutput({
|
|
43848
|
-
action: parsedBlock.actionInput,
|
|
43849
|
-
cleanedOutput
|
|
43850
|
-
}));
|
|
43851
|
-
return {
|
|
43852
|
-
carrierKind: "fenced_block",
|
|
43853
|
-
cleanedOutput: output.slice(0, matched.index).trimEnd(),
|
|
43854
|
-
action,
|
|
43855
|
-
infoString: STRUCTURED_ACTION_BLOCK_INFO_STRING,
|
|
43856
|
-
parseError: null
|
|
43857
|
-
};
|
|
43858
|
-
} catch (error) {
|
|
43859
|
-
return {
|
|
43860
|
-
carrierKind: "fenced_block",
|
|
43861
|
-
cleanedOutput,
|
|
43862
|
-
action: null,
|
|
43863
|
-
infoString: STRUCTURED_ACTION_BLOCK_INFO_STRING,
|
|
43864
|
-
parseError: error instanceof Error ? error.message : "OpenMeld Space egress action is invalid"
|
|
43865
|
-
};
|
|
43866
|
-
}
|
|
43867
|
-
}
|
|
43868
|
-
function extractTrailingStandaloneJsonSpaceAction(input) {
|
|
43869
|
-
const candidates = resolveTrailingStandaloneJsonActionCandidates(input.output);
|
|
43870
|
-
if (candidates.length === 0) return {
|
|
43871
|
-
carrierKind: "none",
|
|
43872
|
-
cleanedOutput: input.output,
|
|
43873
|
-
action: null,
|
|
43874
|
-
infoString: input.infoString,
|
|
43875
|
-
parseError: null
|
|
43876
|
-
};
|
|
43877
|
-
let parseError = TRAILING_JSON_ACTION_PARSE_ERROR;
|
|
43878
|
-
for (const candidate of candidates) {
|
|
43879
|
-
const parsedJson = parseStructuredSpaceActionBlockJson(candidate.jsonText);
|
|
43880
|
-
if (!(parsedJson && typeof parsedJson === "object" && !Array.isArray(parsedJson))) continue;
|
|
43881
|
-
try {
|
|
43882
|
-
const action = normalizeExtractedOpenMeldSpaceEgressAction(hydrateOpenMeldSpaceEgressActionInputFromCleanedOutput({
|
|
43883
|
-
action: parsedJson,
|
|
43884
|
-
cleanedOutput: candidate.cleanedOutput
|
|
43885
|
-
}));
|
|
43886
|
-
return {
|
|
43887
|
-
carrierKind: "trailing_json",
|
|
43888
|
-
cleanedOutput: candidate.cleanedOutput,
|
|
43889
|
-
action,
|
|
43890
|
-
infoString: input.infoString,
|
|
43891
|
-
parseError: null
|
|
43892
|
-
};
|
|
43893
|
-
} catch (error) {
|
|
43894
|
-
if (parseError === TRAILING_JSON_ACTION_PARSE_ERROR) parseError = error instanceof Error ? error.message : "OpenMeld Space egress action is invalid";
|
|
43895
|
-
}
|
|
43896
|
-
}
|
|
43897
|
-
return {
|
|
43898
|
-
carrierKind: "invalid_json",
|
|
43899
|
-
cleanedOutput: input.output,
|
|
43900
|
-
action: null,
|
|
43901
|
-
infoString: input.infoString,
|
|
43902
|
-
parseError
|
|
43903
|
-
};
|
|
43904
|
-
}
|
|
43905
|
-
function tryParseStructuredSpaceActionBlockInput(blockText) {
|
|
43906
|
-
const normalizedBlockText = blockText.trim();
|
|
43907
|
-
if (normalizedBlockText.length === 0) return {
|
|
43908
|
-
actionInput: null,
|
|
43909
|
-
parseError: "OpenMeld Space structured action block is empty"
|
|
43910
|
-
};
|
|
43911
|
-
const parsedJson = parseStructuredSpaceActionBlockJson(normalizedBlockText);
|
|
43912
|
-
if (parsedJson) return {
|
|
43913
|
-
actionInput: parsedJson,
|
|
43914
|
-
parseError: null
|
|
43915
|
-
};
|
|
43916
|
-
const parsedSimpleAction = parseSimpleStructuredSpaceActionBlock(normalizedBlockText);
|
|
43917
|
-
if (parsedSimpleAction) return {
|
|
43918
|
-
actionInput: parsedSimpleAction,
|
|
43919
|
-
parseError: null
|
|
43920
|
-
};
|
|
43921
|
-
return {
|
|
43922
|
-
actionInput: null,
|
|
43923
|
-
parseError: STRUCTURED_ACTION_BLOCK_PARSE_ERROR
|
|
43924
|
-
};
|
|
43925
|
-
}
|
|
43926
|
-
function normalizeOutput(value) {
|
|
43927
|
-
const normalized = value.trimEnd();
|
|
43928
|
-
if (normalized.length > 0) return normalized;
|
|
43929
|
-
throw new Error("output is required");
|
|
43930
|
-
}
|
|
43931
|
-
function resolveTrailingStandaloneJsonActionCandidates(output) {
|
|
43932
|
-
const candidateOutput = output.trimEnd();
|
|
43933
|
-
if (!candidateOutput.endsWith("}")) return [];
|
|
43934
|
-
return resolveTrailingStandaloneJsonLineStartIndices(candidateOutput).map((startIndex) => {
|
|
43935
|
-
const jsonText = candidateOutput.slice(startIndex).trim();
|
|
43936
|
-
return {
|
|
43937
|
-
cleanedOutput: candidateOutput.slice(0, startIndex).trimEnd(),
|
|
43938
|
-
jsonText
|
|
43939
|
-
};
|
|
43940
|
-
}).filter((candidate) => candidate.jsonText.startsWith("{") && candidate.jsonText.endsWith("}"));
|
|
43941
|
-
}
|
|
43942
|
-
function resolveTrailingStandaloneJsonLineStartIndices(output) {
|
|
43943
|
-
const lineStartIndices = [];
|
|
43944
|
-
let lineStartIndex = 0;
|
|
43945
|
-
for (let index = 0; index <= output.length; index += 1) {
|
|
43946
|
-
if (!(index === output.length || output[index] === "\n")) continue;
|
|
43947
|
-
let candidateStartIndex = lineStartIndex;
|
|
43948
|
-
while (candidateStartIndex < index && (output[candidateStartIndex] === " " || output[candidateStartIndex] === " ")) candidateStartIndex += 1;
|
|
43949
|
-
if (output[candidateStartIndex] === "{") lineStartIndices.push(candidateStartIndex);
|
|
43950
|
-
lineStartIndex = index + 1;
|
|
43951
|
-
}
|
|
43952
|
-
return lineStartIndices.reverse();
|
|
43953
|
-
}
|
|
43954
|
-
function resolveInvalidBlockFallbackOutput(input) {
|
|
43955
|
-
const cleanedOutput = input.output.slice(0, input.matchedIndex).trimEnd();
|
|
43956
|
-
return cleanedOutput.length > 0 ? cleanedOutput : "";
|
|
43957
|
-
}
|
|
43958
|
-
function parseStructuredSpaceActionBlockJson(blockText) {
|
|
43959
|
-
try {
|
|
43960
|
-
return JSON.parse(blockText);
|
|
43961
|
-
} catch {
|
|
43962
|
-
const repairedBlockText = appendMissingJsonClosers(blockText);
|
|
43963
|
-
if (!repairedBlockText || repairedBlockText === blockText) return null;
|
|
43964
|
-
try {
|
|
43965
|
-
return JSON.parse(repairedBlockText);
|
|
43966
|
-
} catch {
|
|
43967
|
-
return null;
|
|
43968
|
-
}
|
|
43969
|
-
}
|
|
43970
|
-
}
|
|
43971
|
-
function isRecord$1(value) {
|
|
43972
|
-
return Boolean(value && typeof value === "object" && !Array.isArray(value));
|
|
43973
|
-
}
|
|
43974
|
-
function normalizePostMessageEgressActionInput(action) {
|
|
43975
|
-
const { message, messageEnvelope, replyTo, text, ...rest } = action;
|
|
43976
|
-
if (isRecord$1(messageEnvelope)) return {
|
|
43977
|
-
...rest,
|
|
43978
|
-
messageEnvelope: normalizeMessageEnvelope(messageEnvelope)
|
|
43979
|
-
};
|
|
43980
|
-
const rawText = resolveLegacyPostMessageText({
|
|
43981
|
-
message,
|
|
43982
|
-
text
|
|
43983
|
-
});
|
|
43984
|
-
if (typeof rawText !== "string") return rest;
|
|
43985
|
-
const rawReplyToSignalId = resolveLegacyReplyToSignalId(replyTo);
|
|
43986
|
-
return {
|
|
43987
|
-
...rest,
|
|
43988
|
-
messageEnvelope: normalizeMessageEnvelope({
|
|
43989
|
-
...rawReplyToSignalId ? { replyToSignalId: rawReplyToSignalId } : {},
|
|
43990
|
-
text: rawText
|
|
43991
|
-
})
|
|
43992
|
-
};
|
|
43993
|
-
}
|
|
43994
|
-
function resolveLegacyPostMessageText(input) {
|
|
43995
|
-
if (typeof input.text === "string") return input.text;
|
|
43996
|
-
if (typeof input.message === "string") return input.message;
|
|
43997
|
-
}
|
|
43998
|
-
function resolveLegacyReplyToSignalId(value) {
|
|
43999
|
-
if (!isRecord$1(value) || typeof value.signalId !== "string") return;
|
|
44000
|
-
return value.signalId;
|
|
44001
|
-
}
|
|
44002
|
-
function normalizePostStatusEgressActionInput(action) {
|
|
44003
|
-
const { note, ...rest } = action;
|
|
44004
|
-
if (typeof rest.text !== "string" && typeof note === "string") return {
|
|
44005
|
-
...rest,
|
|
44006
|
-
text: note.trim()
|
|
44007
|
-
};
|
|
44008
|
-
return rest;
|
|
44009
|
-
}
|
|
44010
|
-
function normalizeStaySilentEgressActionInput(action) {
|
|
44011
|
-
const { note, ...rest } = action;
|
|
44012
|
-
if (typeof rest.reason !== "string" && typeof note === "string") return {
|
|
44013
|
-
...rest,
|
|
44014
|
-
reason: note.trim()
|
|
44015
|
-
};
|
|
44016
|
-
return rest;
|
|
44017
|
-
}
|
|
44018
|
-
function parseSimpleStructuredSpaceActionBlock(blockText) {
|
|
44019
|
-
const [rawHeader, ...bodyLines] = trimSimpleStructuredActionOuterEmptyLines(blockText.split(STRUCTURED_ACTION_BLOCK_LINE_BREAK_RE));
|
|
44020
|
-
const parsedHeader = parseSimpleStructuredActionHeader(rawHeader);
|
|
44021
|
-
if (!parsedHeader) return null;
|
|
44022
|
-
switch (parsedHeader.actionType) {
|
|
44023
|
-
case "post_message": return buildSimplePostMessageAction({
|
|
44024
|
-
bodyLines,
|
|
44025
|
-
headerBody: parsedHeader.headerBody
|
|
44026
|
-
});
|
|
44027
|
-
case "stay_silent": return buildSimpleStaySilentAction({
|
|
44028
|
-
bodyLines,
|
|
44029
|
-
headerBody: parsedHeader.headerBody
|
|
44030
|
-
});
|
|
44031
|
-
case "post_status": return buildSimplePostStatusAction({
|
|
44032
|
-
bodyLines,
|
|
44033
|
-
headerArgs: parsedHeader.headerArgs
|
|
44034
|
-
});
|
|
44035
|
-
default: return null;
|
|
44036
|
-
}
|
|
44037
|
-
}
|
|
44038
|
-
function parseSimpleStructuredActionHeader(rawHeader) {
|
|
44039
|
-
const header = rawHeader?.trim();
|
|
44040
|
-
if (!header) return null;
|
|
44041
|
-
const [rawActionType, ...headerArgs] = header.split(STRUCTURED_ACTION_BLOCK_HEADER_PART_RE);
|
|
44042
|
-
const actionType = rawActionType?.trim();
|
|
44043
|
-
if (!actionType) return null;
|
|
44044
|
-
return {
|
|
44045
|
-
actionType,
|
|
44046
|
-
headerArgs,
|
|
44047
|
-
headerBody: headerArgs.join(" ").trim()
|
|
44048
|
-
};
|
|
44049
|
-
}
|
|
44050
|
-
function buildSimplePostMessageAction(input) {
|
|
44051
|
-
const text = joinSimpleStructuredActionTextParts([input.headerBody, joinSimpleStructuredActionText(input.headerBody ? input.bodyLines : trimSingleLeadingEmptyLine(input.bodyLines))]);
|
|
44052
|
-
return text ? {
|
|
44053
|
-
type: "post_message",
|
|
44054
|
-
text
|
|
44055
|
-
} : { type: "post_message" };
|
|
44056
|
-
}
|
|
44057
|
-
function buildSimpleStaySilentAction(input) {
|
|
44058
|
-
const reason = joinSimpleStructuredActionTextParts([input.headerBody, joinSimpleStructuredActionText(input.headerBody ? input.bodyLines : trimSingleLeadingEmptyLine(input.bodyLines))]);
|
|
44059
|
-
return reason ? {
|
|
44060
|
-
type: "stay_silent",
|
|
44061
|
-
reason
|
|
44062
|
-
} : { type: "stay_silent" };
|
|
44063
|
-
}
|
|
44064
|
-
function buildSimplePostStatusAction(input) {
|
|
44065
|
-
const statusFromHeader = input.headerArgs[0]?.trim();
|
|
44066
|
-
const headerNote = input.headerArgs.slice(1).join(" ").trim();
|
|
44067
|
-
const bodyLinesAfterSingleSpacer = trimSingleLeadingEmptyLine(input.bodyLines);
|
|
44068
|
-
const status = statusFromHeader || bodyLinesAfterSingleSpacer[0]?.trim();
|
|
44069
|
-
if (!status) return null;
|
|
44070
|
-
let textLines;
|
|
44071
|
-
if (statusFromHeader) textLines = headerNote ? [headerNote, ...input.bodyLines] : trimSingleLeadingEmptyLine(input.bodyLines);
|
|
44072
|
-
else textLines = trimSingleLeadingEmptyLine(bodyLinesAfterSingleSpacer.slice(1));
|
|
44073
|
-
const text = joinSimpleStructuredActionText(textLines);
|
|
44074
|
-
return text ? {
|
|
44075
|
-
type: "post_status",
|
|
44076
|
-
status,
|
|
44077
|
-
text
|
|
44078
|
-
} : {
|
|
44079
|
-
type: "post_status",
|
|
44080
|
-
status
|
|
44081
|
-
};
|
|
44082
|
-
}
|
|
44083
|
-
function trimSimpleStructuredActionOuterEmptyLines(lines) {
|
|
44084
|
-
const nextLines = [...lines];
|
|
44085
|
-
if (nextLines[0]?.trim() === "") nextLines.shift();
|
|
44086
|
-
if (nextLines.at(-1)?.trim() === "") nextLines.pop();
|
|
44087
|
-
return nextLines;
|
|
44088
|
-
}
|
|
44089
|
-
function trimSingleLeadingEmptyLine(lines) {
|
|
44090
|
-
return lines[0]?.trim() === "" ? lines.slice(1) : lines;
|
|
44091
|
-
}
|
|
44092
|
-
function joinSimpleStructuredActionText(lines) {
|
|
44093
|
-
const text = lines.join("\n");
|
|
44094
|
-
return text.trim().length > 0 ? text : null;
|
|
44095
|
-
}
|
|
44096
|
-
function joinSimpleStructuredActionTextParts(parts) {
|
|
44097
|
-
const definedParts = parts.filter((part) => typeof part === "string" && part.trim().length > 0);
|
|
44098
|
-
if (definedParts.length === 0) return null;
|
|
44099
|
-
return definedParts.join("\n");
|
|
44100
|
-
}
|
|
44101
|
-
function normalizeExtractedOpenMeldSpaceEgressAction(input) {
|
|
44102
|
-
const normalizedInput = normalizeOpenMeldSpaceEgressActionInput(input);
|
|
44103
|
-
const parsed = openMeldSpaceEgressActionSchema.safeParse(normalizedInput);
|
|
44104
|
-
if (!parsed.success) throw new Error(parsed.error.issues[0]?.message ?? "OpenMeld Space egress action is invalid");
|
|
44105
|
-
if (!(normalizedInput && typeof normalizedInput === "object")) return parsed.data;
|
|
44106
|
-
if (parsed.data.type === "post_status") {
|
|
44107
|
-
const preservedText = normalizedInput.text;
|
|
44108
|
-
if (typeof preservedText === "string" && preservedText.trim().length > 0) return {
|
|
44109
|
-
...parsed.data,
|
|
44110
|
-
text: preservedText
|
|
44111
|
-
};
|
|
44112
|
-
}
|
|
44113
|
-
if (parsed.data.type === "post_message" && "messageEnvelope" in normalizedInput && normalizedInput.messageEnvelope && typeof normalizedInput.messageEnvelope === "object") {
|
|
44114
|
-
const preservedText = normalizedInput.messageEnvelope.text;
|
|
44115
|
-
if (typeof preservedText === "string" && preservedText.trim().length > 0) return {
|
|
44116
|
-
...parsed.data,
|
|
44117
|
-
messageEnvelope: {
|
|
44118
|
-
...parsed.data.messageEnvelope,
|
|
44119
|
-
text: preservedText
|
|
44120
|
-
}
|
|
44121
|
-
};
|
|
44122
|
-
}
|
|
44123
|
-
return parsed.data;
|
|
44124
|
-
}
|
|
44125
|
-
function appendMissingJsonClosers(blockText) {
|
|
44126
|
-
const stack = [];
|
|
44127
|
-
let inString = false;
|
|
44128
|
-
let escaped = false;
|
|
44129
|
-
for (const character of blockText) {
|
|
44130
|
-
if (escaped) {
|
|
44131
|
-
escaped = false;
|
|
44132
|
-
continue;
|
|
44133
|
-
}
|
|
44134
|
-
if (character === "\\") {
|
|
44135
|
-
escaped = true;
|
|
44136
|
-
continue;
|
|
44137
|
-
}
|
|
44138
|
-
if (character === "\"") {
|
|
44139
|
-
inString = !inString;
|
|
44140
|
-
continue;
|
|
44141
|
-
}
|
|
44142
|
-
if (inString) continue;
|
|
44143
|
-
if (character === "{") {
|
|
44144
|
-
stack.push("}");
|
|
44145
|
-
continue;
|
|
44146
|
-
}
|
|
44147
|
-
if (character === "[") {
|
|
44148
|
-
stack.push("]");
|
|
44149
|
-
continue;
|
|
44150
|
-
}
|
|
44151
|
-
if ((character === "}" || character === "]") && stack.at(-1) === character) stack.pop();
|
|
44152
|
-
}
|
|
44153
|
-
if (inString || stack.length === 0) return null;
|
|
44154
|
-
return `${blockText}${stack.reverse().join("")}`;
|
|
44155
|
-
}
|
|
44156
43768
|
const SPACE_CONTRACT_ALLOWED_ACTION_ORDER = [
|
|
44157
43769
|
"post_message",
|
|
44158
43770
|
"post_status",
|
|
@@ -44177,41 +43789,23 @@ function areAllowedActionsEquivalent(left, right) {
|
|
|
44177
43789
|
return canonicalLeft.length === canonicalRight.length && canonicalLeft.every((action, index) => action === canonicalRight[index]);
|
|
44178
43790
|
}
|
|
44179
43791
|
const COLLABORATION_HOW_THIS_SPACE_WORKS = "OpenMeld is an external collaboration layer, not your private scratchpad. Work normally in your local context, then publish only the public outcome this Space needs with one OpenMeld Space Action.";
|
|
44180
|
-
const COLLABORATION_ACTION_REQUIREMENT = "Final outcome:
|
|
44181
|
-
const COLLABORATION_REPAIR_REQUIREMENT = "
|
|
43792
|
+
const COLLABORATION_ACTION_REQUIREMENT = "Final outcome: call exactly one dispatch-scoped OpenMeld Space Action CLI command. Your answer text never selects or substitutes for that action.";
|
|
43793
|
+
const COLLABORATION_REPAIR_REQUIREMENT = "Preserve the user's intent and call exactly one dispatch-scoped OpenMeld Space Action CLI command. Do not print an action as JSON or prose.";
|
|
44182
43794
|
const RAW_CONTEXT_SHARING_HOW_THIS_SPACE_WORKS = "This Space uses transparent context sharing: OpenMeld may share your raw reply directly. Use OpenMeld Space Action when you need a controlled visible outcome.";
|
|
44183
43795
|
const RAW_CONTEXT_SHARING_ACTION_REQUIREMENT = "Raw reply is allowed. Use OpenMeld Space Action only when you need a controlled visible outcome.";
|
|
44184
|
-
const RAW_CONTEXT_SHARING_REPAIR_REQUIREMENT = "
|
|
44185
|
-
function
|
|
44186
|
-
const lines = [
|
|
43796
|
+
const RAW_CONTEXT_SHARING_REPAIR_REQUIREMENT = "Return the plain raw reply, or call one dispatch-scoped OpenMeld Space Action CLI command for a controlled visible outcome. Answer text never becomes an action.";
|
|
43797
|
+
function buildActionGuidanceLines$1(input) {
|
|
43798
|
+
const lines = [];
|
|
44187
43799
|
for (const allowedAction of input.allowedActions) switch (allowedAction) {
|
|
44188
43800
|
case "post_message":
|
|
44189
|
-
lines.push("Use
|
|
44190
|
-
lines.push([
|
|
44191
|
-
"Canonical post_message block:",
|
|
44192
|
-
"```openmeld-space-action",
|
|
44193
|
-
"{\"type\":\"post_message\",\"messageEnvelope\":{\"text\":\"Hello.\",\"activationTargets\":[],\"referenceTargets\":[]}}",
|
|
44194
|
-
"```"
|
|
44195
|
-
].join("\n"));
|
|
43801
|
+
lines.push("Use the dispatch-scoped Space Action reply command for normal public replies, greetings, answers, and discussion.");
|
|
44196
43802
|
break;
|
|
44197
43803
|
case "post_status":
|
|
44198
43804
|
lines.push("Use post_status only for final-safe outcomes: done, blocked, needs_input, or handoff. Do not use \"working\" or \"ready\" because post_status closes the Wake.");
|
|
44199
43805
|
lines.push(`Keep post_status text at 120 characters or fewer. Use post_message for answers, discussion, or anything longer.`);
|
|
44200
|
-
lines.push([
|
|
44201
|
-
"Canonical post_status block (prefer final-safe statuses: done | blocked | needs_input | handoff):",
|
|
44202
|
-
"```openmeld-space-action",
|
|
44203
|
-
"{\"type\":\"post_status\",\"status\":\"done\",\"text\":\"Status update.\"}",
|
|
44204
|
-
"```"
|
|
44205
|
-
].join("\n"));
|
|
44206
43806
|
break;
|
|
44207
43807
|
case "stay_silent":
|
|
44208
|
-
lines.push("Use
|
|
44209
|
-
lines.push([
|
|
44210
|
-
"Canonical stay_silent block:",
|
|
44211
|
-
"```openmeld-space-action",
|
|
44212
|
-
"{\"type\":\"stay_silent\",\"reason\":\"No public reply is needed.\"}",
|
|
44213
|
-
"```"
|
|
44214
|
-
].join("\n"));
|
|
43808
|
+
lines.push("Use the dispatch-scoped Space Action silent command only when you intentionally do not want OpenMeld to publish a public reply.");
|
|
44215
43809
|
break;
|
|
44216
43810
|
default: break;
|
|
44217
43811
|
}
|
|
@@ -44221,8 +43815,8 @@ function resolveSpacePublicationRequirement(input) {
|
|
|
44221
43815
|
const publicationMode = input?.publicationMode ?? DEFAULT_SPACE_CONTRACT_FIELDS.publicationMode;
|
|
44222
43816
|
const allowedActions = canonicalizeAllowedActions(input?.allowedActions ?? DEFAULT_SPACE_CONTRACT_FIELDS.allowedActions);
|
|
44223
43817
|
if (publicationMode === "raw_context_sharing") return {
|
|
43818
|
+
actionGuidanceLines: buildActionGuidanceLines$1({ allowedActions }),
|
|
44224
43819
|
actionRequirementLine: RAW_CONTEXT_SHARING_ACTION_REQUIREMENT,
|
|
44225
|
-
actionSchemaGuidanceLines: buildActionSchemaGuidanceLines({ allowedActions }),
|
|
44226
43820
|
allowedActions,
|
|
44227
43821
|
allowsRawReplyWithoutAction: true,
|
|
44228
43822
|
howThisSpaceWorks: RAW_CONTEXT_SHARING_HOW_THIS_SPACE_WORKS,
|
|
@@ -44231,8 +43825,8 @@ function resolveSpacePublicationRequirement(input) {
|
|
|
44231
43825
|
requiresExplicitPublicAction: false
|
|
44232
43826
|
};
|
|
44233
43827
|
return {
|
|
43828
|
+
actionGuidanceLines: buildActionGuidanceLines$1({ allowedActions }),
|
|
44234
43829
|
actionRequirementLine: COLLABORATION_ACTION_REQUIREMENT,
|
|
44235
|
-
actionSchemaGuidanceLines: buildActionSchemaGuidanceLines({ allowedActions }),
|
|
44236
43830
|
allowedActions,
|
|
44237
43831
|
allowsRawReplyWithoutAction: false,
|
|
44238
43832
|
howThisSpaceWorks: COLLABORATION_HOW_THIS_SPACE_WORKS,
|
|
@@ -51438,23 +51032,6 @@ const CODEX_USER_AGENT_VERSION_RE = /\/([^\s]+)/u;
|
|
|
51438
51032
|
const CLI_SEMVER_RE = /\b(\d+\.\d+\.\d+(?:[-+][^\s]+)?)\b/u;
|
|
51439
51033
|
const SEMVER_CORE_RE = /^v?(\d+)\.(\d+)\.(\d+)/u;
|
|
51440
51034
|
const WHITESPACE_RE = /\s+/u;
|
|
51441
|
-
const EMAIL_RE = /[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}/iu;
|
|
51442
|
-
const CLAUDE_UNAUTHENTICATED_OUTPUT_PATTERNS = [
|
|
51443
|
-
"invalid api key",
|
|
51444
|
-
"invalid token",
|
|
51445
|
-
"expired token",
|
|
51446
|
-
"missing api key",
|
|
51447
|
-
"missing credentials",
|
|
51448
|
-
"authentication_failed",
|
|
51449
|
-
"oauth_org_not_allowed",
|
|
51450
|
-
"failed to authenticate",
|
|
51451
|
-
"authentication failed",
|
|
51452
|
-
"oauth session expired",
|
|
51453
|
-
"not logged in",
|
|
51454
|
-
"not authenticated",
|
|
51455
|
-
"not signed in",
|
|
51456
|
-
"login required"
|
|
51457
|
-
];
|
|
51458
51035
|
const latestControllerVersionCache = /* @__PURE__ */ new Map();
|
|
51459
51036
|
const CONTROLLER_INTERFACE_SNAPSHOT_RESOLVERS = {
|
|
51460
51037
|
"claude-code": resolveClaudeCodeInterfaceSnapshot,
|
|
@@ -51914,18 +51491,31 @@ async function resolveClaudeCodeInterfaceSnapshot(input) {
|
|
|
51914
51491
|
launchContract: input.launchContract
|
|
51915
51492
|
}), runLaunchContractCommand({
|
|
51916
51493
|
allowNonZeroExit: true,
|
|
51917
|
-
args: [
|
|
51494
|
+
args: [
|
|
51495
|
+
"auth",
|
|
51496
|
+
"status",
|
|
51497
|
+
"--json"
|
|
51498
|
+
],
|
|
51918
51499
|
launchContract: input.launchContract
|
|
51919
51500
|
})]);
|
|
51920
51501
|
const auth = resolveClaudeAuthSnapshot(authProbe);
|
|
51921
51502
|
const version = versionProbe.ok ? parseCliVersion(versionProbe.stdout) : null;
|
|
51503
|
+
let message = input.baseSnapshot.message;
|
|
51504
|
+
let status = input.baseSnapshot.status;
|
|
51505
|
+
if (auth.status === "unauthenticated") {
|
|
51506
|
+
message = "Claude Code is installed, but this computer is not signed in to Claude Code.";
|
|
51507
|
+
status = "error";
|
|
51508
|
+
} else if (auth.status === "unknown") {
|
|
51509
|
+
message = "OpenMeld could not read Claude Code authentication status.";
|
|
51510
|
+
status = "warning";
|
|
51511
|
+
}
|
|
51922
51512
|
return {
|
|
51923
|
-
probeCompleted: authProbe.ok,
|
|
51513
|
+
probeCompleted: authProbe.ok && auth.status !== "unknown",
|
|
51924
51514
|
snapshot: {
|
|
51925
51515
|
...input.baseSnapshot,
|
|
51926
51516
|
auth,
|
|
51927
|
-
message
|
|
51928
|
-
status
|
|
51517
|
+
message,
|
|
51518
|
+
status,
|
|
51929
51519
|
version,
|
|
51930
51520
|
versionAdvisory: await resolveControllerVersionAdvisory({
|
|
51931
51521
|
checkedAt: input.baseSnapshot.checkedAt,
|
|
@@ -51942,7 +51532,11 @@ async function resolveCursorInterfaceSnapshot(input) {
|
|
|
51942
51532
|
launchContract: input.launchContract
|
|
51943
51533
|
}), runLaunchContractCommand({
|
|
51944
51534
|
allowNonZeroExit: true,
|
|
51945
|
-
args: [
|
|
51535
|
+
args: [
|
|
51536
|
+
"status",
|
|
51537
|
+
"--format",
|
|
51538
|
+
"json"
|
|
51539
|
+
],
|
|
51946
51540
|
launchContract: input.launchContract
|
|
51947
51541
|
})]);
|
|
51948
51542
|
const auth = resolveCursorAuthSnapshot(authProbe);
|
|
@@ -52437,45 +52031,25 @@ function resolveCodexAuthSnapshot(response) {
|
|
|
52437
52031
|
function resolveClaudeAuthSnapshot(probe) {
|
|
52438
52032
|
if (!probe.ok) return { status: "unknown" };
|
|
52439
52033
|
const payload = parseJsonRecord(probe.stdout);
|
|
52440
|
-
if (payload) {
|
|
52441
|
-
|
|
52442
|
-
|
|
52443
|
-
|
|
52444
|
-
|
|
52445
|
-
|
|
52446
|
-
|
|
52447
|
-
|
|
52448
|
-
|
|
52449
|
-
};
|
|
52450
|
-
}
|
|
52451
|
-
const output = `${probe.stdout}\n${probe.stderr}`.trim();
|
|
52452
|
-
const lower = output.toLowerCase();
|
|
52453
|
-
if (CLAUDE_UNAUTHENTICATED_OUTPUT_PATTERNS.some((pattern) => lower.includes(pattern))) return { status: "unauthenticated" };
|
|
52454
|
-
if (probe.code === 0 && output.length > 0) {
|
|
52455
|
-
const email = resolveLikelyEmail(output);
|
|
52456
|
-
return {
|
|
52457
|
-
...email ? { email } : {},
|
|
52458
|
-
label: email ?? "Signed in",
|
|
52459
|
-
status: "authenticated",
|
|
52460
|
-
type: "claude"
|
|
52461
|
-
};
|
|
52462
|
-
}
|
|
52463
|
-
return { status: "unknown" };
|
|
52034
|
+
if (typeof payload?.loggedIn !== "boolean") return { status: "unknown" };
|
|
52035
|
+
if (!payload.loggedIn) return { status: "unauthenticated" };
|
|
52036
|
+
const email = normalizeOptionalText$15(payload.email);
|
|
52037
|
+
return {
|
|
52038
|
+
...email ? { email } : {},
|
|
52039
|
+
label: email ?? "Signed in",
|
|
52040
|
+
status: "authenticated",
|
|
52041
|
+
type: "claude"
|
|
52042
|
+
};
|
|
52464
52043
|
}
|
|
52465
52044
|
function resolveCursorAuthSnapshot(probe) {
|
|
52466
52045
|
if (!probe.ok) return { status: "unknown" };
|
|
52467
|
-
const
|
|
52468
|
-
|
|
52469
|
-
if (
|
|
52470
|
-
|
|
52471
|
-
|
|
52472
|
-
|
|
52473
|
-
|
|
52474
|
-
label: email ?? "Signed in",
|
|
52475
|
-
status: "authenticated",
|
|
52476
|
-
type: "cursor_login"
|
|
52477
|
-
};
|
|
52478
|
-
}
|
|
52046
|
+
const payload = parseJsonRecord(probe.stdout);
|
|
52047
|
+
if (payload?.status === "unauthenticated") return { status: "unauthenticated" };
|
|
52048
|
+
if (payload?.status === "authenticated") return {
|
|
52049
|
+
label: "Signed in",
|
|
52050
|
+
status: "authenticated",
|
|
52051
|
+
type: "cursor_login"
|
|
52052
|
+
};
|
|
52479
52053
|
return { status: "unknown" };
|
|
52480
52054
|
}
|
|
52481
52055
|
function resolveOpenClawAuthProbe(probe) {
|
|
@@ -52562,9 +52136,6 @@ function normalizeOptionalText$15(value) {
|
|
|
52562
52136
|
const normalized = value.trim();
|
|
52563
52137
|
return normalized.length > 0 ? normalized : null;
|
|
52564
52138
|
}
|
|
52565
|
-
function resolveLikelyEmail(value) {
|
|
52566
|
-
return value.match(EMAIL_RE)?.[0] ?? null;
|
|
52567
|
-
}
|
|
52568
52139
|
function toErrorMessage$16(error) {
|
|
52569
52140
|
if (error instanceof Error) {
|
|
52570
52141
|
const message = error.message.trim();
|
|
@@ -57315,14 +56886,14 @@ function renderMandatoryCompletionSection(input) {
|
|
|
57315
56886
|
"- Do not finish this Wake with a plain-text final answer. Plain prose stays local and is not a public Space reply in Collaboration mode.",
|
|
57316
56887
|
buildMandatoryCompletionActionLine(input, publicationRequirement),
|
|
57317
56888
|
"- After the Space Action command succeeds, stop. OpenMeld reads that command as the public outcome.",
|
|
57318
|
-
|
|
56889
|
+
"- If the command cannot run, stop and let OpenMeld report the structured failure. Do not print JSON or prose as a substitute for the tool call."
|
|
57319
56890
|
].join("\n");
|
|
57320
56891
|
}
|
|
57321
56892
|
function buildMandatoryCompletionActionLine(input, publicationRequirement) {
|
|
57322
56893
|
if (publicationRequirement.allowedActions.includes("post_message")) return `- Normal completion: run \`${buildSpaceActionCommand(input, "reply \"your public message\"")}\` and wait for it to finish.`;
|
|
57323
56894
|
if (publicationRequirement.allowedActions.includes("post_status")) return `- Normal completion: run \`${buildSpaceActionCommand(input, "status done \"short completion update\"")}\` and wait for it to finish.`;
|
|
57324
56895
|
if (publicationRequirement.allowedActions.includes("stay_silent")) return `- Normal completion: run \`${buildSpaceActionCommand(input, "silent --reason \"reason\"")}\` and wait for it to finish.`;
|
|
57325
|
-
return
|
|
56896
|
+
return "- No permitted OpenMeld Space action is available. Do not invent one in answer text.";
|
|
57326
56897
|
}
|
|
57327
56898
|
function buildServiceFreshnessWarningLines(input) {
|
|
57328
56899
|
return input.serviceFreshnessWarningLines?.filter(Boolean) ?? [];
|
|
@@ -57359,9 +56930,6 @@ function buildActionGuidanceLines(input) {
|
|
|
57359
56930
|
function buildSpaceActionCommand(input, action) {
|
|
57360
56931
|
return `${normalizeOptionalText$44(input.cliEntry) ?? "openmeld"} space action ${action}`;
|
|
57361
56932
|
}
|
|
57362
|
-
function buildPromptSpaceActionCommand(input) {
|
|
57363
|
-
return `${normalizeOptionalText$44(input.cliEntry) ?? "openmeld"} prompt space-action --raw`;
|
|
57364
|
-
}
|
|
57365
56933
|
function buildSendTargetReferenceLines(input) {
|
|
57366
56934
|
if (!(input.sendTargetReferenceLines && input.sendTargetReferenceLines.length > 0)) return [];
|
|
57367
56935
|
return ["- Send target reference:", ...input.sendTargetReferenceLines.map((line) => ` ${line}`)];
|
|
@@ -63391,8 +62959,8 @@ function renderDaemonStartNeedsAttention(input) {
|
|
|
63391
62959
|
//#endregion
|
|
63392
62960
|
//#region src/local-components/manifest.ts
|
|
63393
62961
|
const OPENMELD_CLI_COMMAND_CONTRACT_VERSION = "openmeld-cli-command-contract-2026-05-local-components-v1";
|
|
63394
|
-
const OPENMELD_SKILLS_CONTRACT_VERSION = "openmeld-skills-contract-2026-
|
|
63395
|
-
const OPENMELD_SERVICE_CONTRACT_VERSION =
|
|
62962
|
+
const OPENMELD_SKILLS_CONTRACT_VERSION = "openmeld-skills-contract-2026-08-tool-owned-actions-v2";
|
|
62963
|
+
const OPENMELD_SERVICE_CONTRACT_VERSION = "openmeld-service-contract-2026-08-agent-answers-content-v1";
|
|
63396
62964
|
const LOCAL_COMPONENTS_SNAPSHOT_FILE = "local-components.json";
|
|
63397
62965
|
const SERVICE_COMPONENT_UPDATE_CODES = /* @__PURE__ */ new Set([
|
|
63398
62966
|
"version_outdated",
|
|
@@ -63790,8 +63358,8 @@ const RECOVERY_PROMPT = [
|
|
|
63790
63358
|
"OpenMeld execution recovery.",
|
|
63791
63359
|
"Continue this exact controller conversation.",
|
|
63792
63360
|
"Do not redo the task, call tools, edit files, or perform external actions.",
|
|
63793
|
-
"Return
|
|
63794
|
-
"
|
|
63361
|
+
"Return the best faithful final answer you can recover from this conversation.",
|
|
63362
|
+
"Your answer is content only. OpenMeld decides recovery status from the typed provider outcome, never from words in your answer."
|
|
63795
63363
|
].join(" ");
|
|
63796
63364
|
async function resumeExactControllerConversation(input) {
|
|
63797
63365
|
const identity = input.request.identity;
|
|
@@ -63851,7 +63419,7 @@ async function resumeExactControllerConversation(input) {
|
|
|
63851
63419
|
status: "outcome_unknown"
|
|
63852
63420
|
};
|
|
63853
63421
|
const output = result.output.trim();
|
|
63854
|
-
if (!output
|
|
63422
|
+
if (!output) return {
|
|
63855
63423
|
destination: input.request.destination,
|
|
63856
63424
|
identity,
|
|
63857
63425
|
message: "The exact conversation did not contain a completed result.",
|
|
@@ -65766,7 +65334,7 @@ function buildAgentReplyReconsiderationPrompt(input) {
|
|
|
65766
65334
|
"Keep the user's full request as the goal. Reconsider only the final Space action in light of these newer messages.",
|
|
65767
65335
|
"Replace the proposal when a distinct, useful contribution is still possible. Avoid duplicating work or a conclusion another Agent has already posted.",
|
|
65768
65336
|
"Choose stay_silent only when no distinct, useful, non-duplicative contribution remains.",
|
|
65769
|
-
"
|
|
65337
|
+
"Call exactly one dispatch-scoped OpenMeld Space Action CLI command for the final action. Answer text never becomes an action.",
|
|
65770
65338
|
`Previous proposed action: ${JSON.stringify(input.action)}`,
|
|
65771
65339
|
`Newer Space messages: ${JSON.stringify(updates)}`
|
|
65772
65340
|
].join("\n");
|
|
@@ -66439,7 +66007,6 @@ function buildResultDispatchJournalMetadata(payload) {
|
|
|
66439
66007
|
}
|
|
66440
66008
|
//#endregion
|
|
66441
66009
|
//#region src/local-service/dispatch/execute-dispatch-structured-action-repair.ts
|
|
66442
|
-
const STRUCTURED_SPACE_ACTION_BLOCK_HEADER_REGEX = /^\s*\r?\n?/u;
|
|
66443
66010
|
function resolveStructuredActionRequirementFailure$1(input) {
|
|
66444
66011
|
if (input.resolution.parseError) return {
|
|
66445
66012
|
failureReason: input.resolution.parseError,
|
|
@@ -66490,12 +66057,12 @@ function buildStructuredActionRepairPrompt$1(input) {
|
|
|
66490
66057
|
"This is a bounded repair of the public delivery action only. Do not redo the user's work.",
|
|
66491
66058
|
"Do not change the user's intent.",
|
|
66492
66059
|
...SPACE_ACTION_CONTEXT_GUIDANCE_LINES,
|
|
66493
|
-
"
|
|
66494
|
-
"
|
|
66060
|
+
"Your answer text never selects an OpenMeld Space action.",
|
|
66061
|
+
"Call exactly one dispatch-scoped OpenMeld Space Action CLI command to repair the delivery action.",
|
|
66495
66062
|
publicationRequirement.repairRequirementLine,
|
|
66496
66063
|
...SPACE_ACTION_TARGET_GUIDANCE_LINES,
|
|
66497
66064
|
...normalizeOptionalText$44(input.currentReplyToSignalId) ? [`post_message.messageEnvelope.replyToSignalId must match the current dispatch reply target: ${normalizeOptionalText$44(input.currentReplyToSignalId)}.`] : [],
|
|
66498
|
-
...publicationRequirement.
|
|
66065
|
+
...publicationRequirement.actionGuidanceLines,
|
|
66499
66066
|
...buildStructuredActionRepairSendTargetReferenceLines(input.sendTargetReferenceLines),
|
|
66500
66067
|
`If you need recent public room context, use \`${historyCommand}\`.`,
|
|
66501
66068
|
`If you need the OpenMeld action rules again, read the official guidance with \`${promptCommand}\` or \`${spaceGuideCommand}\`.`,
|
|
@@ -66510,7 +66077,7 @@ function buildStructuredActionRepairCompletionLines(input) {
|
|
|
66510
66077
|
return [
|
|
66511
66078
|
"Repair completion rule:",
|
|
66512
66079
|
buildStructuredActionRepairPrimaryCommandLine(input),
|
|
66513
|
-
"If the command cannot run,
|
|
66080
|
+
"If the command cannot run, stop. Do not print JSON or prose as a substitute for the tool call.",
|
|
66514
66081
|
"Do not finish with an explanation of what you will do."
|
|
66515
66082
|
];
|
|
66516
66083
|
}
|
|
@@ -66518,7 +66085,7 @@ function buildStructuredActionRepairPrimaryCommandLine(input) {
|
|
|
66518
66085
|
if (input.publicationRequirement.allowedActions.includes("post_message")) return `For a normal reply, run \`${input.cliEntry} space action reply "corrected public message"\` now and wait for it to finish.`;
|
|
66519
66086
|
if (input.publicationRequirement.allowedActions.includes("post_status")) return `For a final status, run \`${input.cliEntry} space action status done "short completion update"\` now and wait for it to finish.`;
|
|
66520
66087
|
if (input.publicationRequirement.allowedActions.includes("stay_silent")) return `If no public reply is needed, run \`${input.cliEntry} space action silent --reason "reason"\` now and wait for it to finish.`;
|
|
66521
|
-
return
|
|
66088
|
+
return "No permitted OpenMeld Space action is available. Do not invent one in answer text.";
|
|
66522
66089
|
}
|
|
66523
66090
|
function buildStructuredActionRepairSendTargetReferenceLines(sendTargetReferenceLines) {
|
|
66524
66091
|
if (!(sendTargetReferenceLines && sendTargetReferenceLines.length > 0)) return [];
|
|
@@ -66536,51 +66103,6 @@ function resolveStructuredActionRepairContinuation$1(input) {
|
|
|
66536
66103
|
agentControllerConversationOverride: input.runtimeResult.contextResolution?.agentControllerConversation ?? contextDelta?.agentControllerConversation ?? input.agentControllerConversationOverride ?? null
|
|
66537
66104
|
};
|
|
66538
66105
|
}
|
|
66539
|
-
function buildSyntheticStructuredSpaceActionRepairResult$1(input) {
|
|
66540
|
-
const payload = input.runtimeResult.resultPayload;
|
|
66541
|
-
if (payload.status !== "success" && payload.status !== "partial_success") return null;
|
|
66542
|
-
const repairedAction = attemptLocalStructuredSpaceActionRepair(payload.output);
|
|
66543
|
-
if (!repairedAction) return null;
|
|
66544
|
-
const candidate = resolveTrailingStructuredSpaceActionCandidate(payload.output);
|
|
66545
|
-
return {
|
|
66546
|
-
...input.runtimeResult,
|
|
66547
|
-
resultPayload: {
|
|
66548
|
-
...payload,
|
|
66549
|
-
output: resolveStructuredActionOutputFallback({
|
|
66550
|
-
action: repairedAction,
|
|
66551
|
-
cleanedOutput: candidate?.cleanedOutput ?? payload.output
|
|
66552
|
-
}),
|
|
66553
|
-
spaceAction: repairedAction
|
|
66554
|
-
}
|
|
66555
|
-
};
|
|
66556
|
-
}
|
|
66557
|
-
function attemptLocalStructuredSpaceActionRepair(output) {
|
|
66558
|
-
const candidate = resolveTrailingStructuredSpaceActionCandidate(output);
|
|
66559
|
-
if (!candidate) return;
|
|
66560
|
-
const parsedBlock = tryParseStructuredSpaceActionBlockInput(candidate.blockText);
|
|
66561
|
-
if (!(parsedBlock.actionInput && !parsedBlock.parseError)) return;
|
|
66562
|
-
const normalizedAction = normalizeOpenMeldSpaceEgressActionInput(hydrateOpenMeldSpaceEgressActionInputFromCleanedOutput({
|
|
66563
|
-
action: parsedBlock.actionInput,
|
|
66564
|
-
cleanedOutput: candidate.cleanedOutput
|
|
66565
|
-
}));
|
|
66566
|
-
const parsedAction = openMeldSpaceEgressActionSchema.safeParse(normalizedAction);
|
|
66567
|
-
if (!parsedAction.success) return;
|
|
66568
|
-
return parsedAction.data;
|
|
66569
|
-
}
|
|
66570
|
-
function resolveTrailingStructuredSpaceActionCandidate(output) {
|
|
66571
|
-
const normalizedOutput = typeof output === "string" ? output : "";
|
|
66572
|
-
const markerIndex = normalizedOutput.lastIndexOf("```openmeld-space-action");
|
|
66573
|
-
if (markerIndex < 0) return null;
|
|
66574
|
-
const afterMarker = normalizedOutput.slice(markerIndex + 24);
|
|
66575
|
-
const blockStartOffset = STRUCTURED_SPACE_ACTION_BLOCK_HEADER_REGEX.exec(afterMarker)?.[0].length ?? 0;
|
|
66576
|
-
let blockText = afterMarker.slice(blockStartOffset).trim();
|
|
66577
|
-
if (blockText.endsWith("```")) blockText = blockText.slice(0, -3).trimEnd();
|
|
66578
|
-
if (blockText.length === 0) return null;
|
|
66579
|
-
return {
|
|
66580
|
-
blockText,
|
|
66581
|
-
cleanedOutput: normalizedOutput.slice(0, markerIndex).trimEnd()
|
|
66582
|
-
};
|
|
66583
|
-
}
|
|
66584
66106
|
function buildInvalidStructuredActionOutputPreview(runtimeResult) {
|
|
66585
66107
|
const payload = runtimeResult.resultPayload;
|
|
66586
66108
|
if (payload.status !== "success" && payload.status !== "partial_success") return null;
|
|
@@ -66754,7 +66276,6 @@ const reconcileBootstrapInjectedContextAfterDispatch = reconcileBootstrapInjecte
|
|
|
66754
66276
|
const resolveBootstrapPlan = resolveBootstrapPlan$1;
|
|
66755
66277
|
const rollbackBootstrapExecutionStateAfterDispatchFailure = rollbackBootstrapExecutionStateAfterDispatchFailure$1;
|
|
66756
66278
|
const buildStructuredActionRepairPrompt = buildStructuredActionRepairPrompt$1;
|
|
66757
|
-
const buildSyntheticStructuredSpaceActionRepairResult = buildSyntheticStructuredSpaceActionRepairResult$1;
|
|
66758
66279
|
const coerceRuntimeResultToStructuredActionFailure = coerceRuntimeResultToStructuredActionFailure$1;
|
|
66759
66280
|
const resolveStructuredActionRepairContinuation = resolveStructuredActionRepairContinuation$1;
|
|
66760
66281
|
const resolveStructuredActionRequirementFailure = resolveStructuredActionRequirementFailure$1;
|
|
@@ -69179,10 +68700,7 @@ function normalizeResolvedPostMessageAction(input) {
|
|
|
69179
68700
|
const normalizedPostMessageAction = normalizeDispatchPostMessageAction({
|
|
69180
68701
|
action,
|
|
69181
68702
|
currentReplyToSignalId: input.parsedTask.replyToSnapshot?.signalId ?? null,
|
|
69182
|
-
inputKind:
|
|
69183
|
-
runtimeResult: input.runtimeResult,
|
|
69184
|
-
structuredSpaceActionResolution: input.structuredSpaceActionResolution
|
|
69185
|
-
}),
|
|
68703
|
+
inputKind: "direct_payload",
|
|
69186
68704
|
sendTargetReference: input.sendTargetReference
|
|
69187
68705
|
});
|
|
69188
68706
|
emitRunLine({
|
|
@@ -69210,10 +68728,7 @@ function normalizeResolvedPostMessageAction(input) {
|
|
|
69210
68728
|
activationTargetsCount: action.messageEnvelope.activationTargets.length,
|
|
69211
68729
|
dispatchId: input.parsedTask.dispatchId,
|
|
69212
68730
|
failureReason,
|
|
69213
|
-
inputKind:
|
|
69214
|
-
runtimeResult: input.runtimeResult,
|
|
69215
|
-
structuredSpaceActionResolution: input.structuredSpaceActionResolution
|
|
69216
|
-
}),
|
|
68731
|
+
inputKind: "direct_payload",
|
|
69217
68732
|
memberDirectoryLoaded: input.sendTargetReference.status === "loaded",
|
|
69218
68733
|
referenceTargetsCount: action.messageEnvelope.referenceTargets.length,
|
|
69219
68734
|
replyToSignalIdResolved: Boolean(action.messageEnvelope.replyToSignalId),
|
|
@@ -69301,55 +68816,14 @@ async function maybeRepairStructuredSpaceAction(input) {
|
|
|
69301
68816
|
taskId: input.parsedTask.taskId
|
|
69302
68817
|
}
|
|
69303
68818
|
});
|
|
69304
|
-
const localRepairEvaluation = resolveStructuredActionRepairEvaluation({
|
|
69305
|
-
runtimeResult: input.runtimeResult,
|
|
69306
|
-
useLocalSyntheticRepair: true
|
|
69307
|
-
});
|
|
69308
|
-
if (localRepairEvaluation.accepted && localRepairEvaluation.runtimeResult) {
|
|
69309
|
-
emitRunLine({
|
|
69310
|
-
presenter: input.presenter,
|
|
69311
|
-
code: "daemon.run.structured_action_repair_completed",
|
|
69312
|
-
text: `structured OpenMeld Space action repair completed for task ${input.parsedTask.taskId}`,
|
|
69313
|
-
payload: {
|
|
69314
|
-
dispatchId: input.parsedTask.dispatchId,
|
|
69315
|
-
repaired: true,
|
|
69316
|
-
repairMode: "local_synthetic",
|
|
69317
|
-
targetProfileId: input.parsedTask.targetProfileId,
|
|
69318
|
-
taskId: input.parsedTask.taskId
|
|
69319
|
-
}
|
|
69320
|
-
});
|
|
69321
|
-
return {
|
|
69322
|
-
finalFailureDiagnostics: null,
|
|
69323
|
-
runtimeResult: applyStructuredSpaceActionProvenanceToRuntimeResult({
|
|
69324
|
-
runtimeResult: localRepairEvaluation.runtimeResult,
|
|
69325
|
-
provenance: "local_repair"
|
|
69326
|
-
})
|
|
69327
|
-
};
|
|
69328
|
-
}
|
|
69329
|
-
const localFailureDiagnostics = resolveStructuredActionFailureDiagnostics({
|
|
69330
|
-
carrierKind: localRepairEvaluation.carrierKind,
|
|
69331
|
-
parseError: localRepairEvaluation.parseError ?? input.failureReason,
|
|
69332
|
-
publicFailureReason: input.failureReason,
|
|
69333
|
-
repairMode: "local_synthetic",
|
|
69334
|
-
runtimeResult: localRepairEvaluation.runtimeResult ?? input.runtimeResult
|
|
69335
|
-
});
|
|
69336
|
-
emitRunLine({
|
|
69337
|
-
presenter: input.presenter,
|
|
69338
|
-
code: "daemon.run.structured_action_repair_failed",
|
|
69339
|
-
text: `structured OpenMeld Space action repair failed for task ${input.parsedTask.taskId}`,
|
|
69340
|
-
payload: {
|
|
69341
|
-
dispatchId: input.parsedTask.dispatchId,
|
|
69342
|
-
...localFailureDiagnostics,
|
|
69343
|
-
failureReason: input.failureReason,
|
|
69344
|
-
repairedRuntimeStatus: localRepairEvaluation.repairedRuntimeStatus,
|
|
69345
|
-
repairedStructuredActionPresent: localRepairEvaluation.repairedStructuredActionPresent,
|
|
69346
|
-
repairMode: "local_synthetic",
|
|
69347
|
-
targetProfileId: input.parsedTask.targetProfileId,
|
|
69348
|
-
taskId: input.parsedTask.taskId
|
|
69349
|
-
}
|
|
69350
|
-
});
|
|
69351
68819
|
if (!input.runControllerRepair) return {
|
|
69352
|
-
finalFailureDiagnostics:
|
|
68820
|
+
finalFailureDiagnostics: resolveStructuredActionFailureDiagnostics({
|
|
68821
|
+
carrierKind: "none",
|
|
68822
|
+
parseError: input.failureReason,
|
|
68823
|
+
publicFailureReason: input.failureReason,
|
|
68824
|
+
repairMode: "controller_roundtrip",
|
|
68825
|
+
runtimeResult: input.runtimeResult
|
|
68826
|
+
}),
|
|
69353
68827
|
runtimeResult: null
|
|
69354
68828
|
};
|
|
69355
68829
|
let providerRepairRuntimeResult;
|
|
@@ -69405,10 +68879,7 @@ async function maybeRepairStructuredSpaceAction(input) {
|
|
|
69405
68879
|
presenter: input.presenter,
|
|
69406
68880
|
runtimeResult: providerRepairRuntimeResult
|
|
69407
68881
|
});
|
|
69408
|
-
const providerRepairEvaluation = resolveStructuredActionRepairEvaluation({
|
|
69409
|
-
runtimeResult: providerRepairRuntimeResult,
|
|
69410
|
-
useLocalSyntheticRepair: true
|
|
69411
|
-
});
|
|
68882
|
+
const providerRepairEvaluation = resolveStructuredActionRepairEvaluation({ runtimeResult: providerRepairRuntimeResult });
|
|
69412
68883
|
if (!(providerRepairEvaluation.accepted && providerRepairEvaluation.runtimeResult)) {
|
|
69413
68884
|
const providerFailureDiagnostics = resolveStructuredActionFailureDiagnostics({
|
|
69414
68885
|
carrierKind: providerRepairEvaluation.carrierKind,
|
|
@@ -69458,7 +68929,7 @@ async function maybeRepairStructuredSpaceAction(input) {
|
|
|
69458
68929
|
};
|
|
69459
68930
|
}
|
|
69460
68931
|
function resolveStructuredActionRepairEvaluation(input) {
|
|
69461
|
-
const runtimeResult = input.
|
|
68932
|
+
const runtimeResult = input.runtimeResult;
|
|
69462
68933
|
const repairedResolution = resolveStructuredSpaceActionFromRuntimePayload(runtimeResult);
|
|
69463
68934
|
const repairedAction = runtimeResult.resultPayload.spaceAction ?? repairedResolution.action;
|
|
69464
68935
|
const repairedRuntimeStatus = runtimeResult.resultPayload.status;
|
|
@@ -69513,15 +68984,11 @@ function resolveStructuredSpaceActionFromRuntimePayload(runtimeResult) {
|
|
|
69513
68984
|
cleanedOutput: void 0,
|
|
69514
68985
|
parseError: null
|
|
69515
68986
|
};
|
|
69516
|
-
const extraction = tryExtractTrailingStructuredSpaceActionBlock({ output: payload.output });
|
|
69517
68987
|
return {
|
|
69518
|
-
action:
|
|
69519
|
-
carrierKind:
|
|
69520
|
-
cleanedOutput:
|
|
69521
|
-
|
|
69522
|
-
cleanedOutput: extraction.cleanedOutput
|
|
69523
|
-
}),
|
|
69524
|
-
parseError: extraction.parseError
|
|
68988
|
+
action: payload.spaceAction,
|
|
68989
|
+
carrierKind: "none",
|
|
68990
|
+
cleanedOutput: void 0,
|
|
68991
|
+
parseError: null
|
|
69525
68992
|
};
|
|
69526
68993
|
}
|
|
69527
68994
|
function applyStructuredSpaceActionResolutionToRuntimePayload(input) {
|
|
@@ -69552,10 +69019,6 @@ function resolveStructuredSpaceActionProvenance(input) {
|
|
|
69552
69019
|
if (!input.resolvedSpaceAction) return;
|
|
69553
69020
|
return input.runtimeResult.resultPayload.spaceActionProvenance ?? "direct";
|
|
69554
69021
|
}
|
|
69555
|
-
function resolvePostMessageInputKind(input) {
|
|
69556
|
-
if (input.runtimeResult.resultPayload.spaceAction?.type === "post_message") return "direct_payload";
|
|
69557
|
-
return input.structuredSpaceActionResolution.carrierKind === "trailing_json" ? "trailing_json" : "fenced_block";
|
|
69558
|
-
}
|
|
69559
69022
|
function runDispatchRuntimeExecution(input) {
|
|
69560
69023
|
return runRuntimeTask({
|
|
69561
69024
|
...input.agentControllerConversationOverride ? { agentContextOverride: {
|
|
@@ -97102,8 +96565,6 @@ const LEAVE_CARD_MIN_CONTENT_WIDTH = 8;
|
|
|
97102
96565
|
const LEAVE_CARD_LEADING_BLANK_LINES = 2;
|
|
97103
96566
|
const MEMBERS_PANEL_REFRESH_DEBOUNCE_MS = 250;
|
|
97104
96567
|
const SPACE_META_REFRESH_DEBOUNCE_MS = 1e3;
|
|
97105
|
-
const SPACE_MEMBER_ADDED_NOTICE_REGEX = / added .+ to this space\./i;
|
|
97106
|
-
const SPACE_MEMBER_REMOVED_NOTICE_REGEX = / removed .+ from this space\./i;
|
|
97107
96568
|
function resolveOptionalReadableLocalSpaceConfig(result, operation) {
|
|
97108
96569
|
if (result.kind === "missing") return null;
|
|
97109
96570
|
if (isLocalSpaceStateCorruptResult(result)) throw toLocalSpaceStateIntegrityError({
|
|
@@ -99498,9 +98959,7 @@ function shouldRefreshMembersSnapshotForEvent(event) {
|
|
|
99498
98959
|
const meta = resolveSignalTextMetaFromEnvelope$1(event);
|
|
99499
98960
|
const purpose = String(meta?.purpose ?? "").trim();
|
|
99500
98961
|
if (purpose === "space_membership_join_notice" || purpose === "space_membership_remove_notice") return true;
|
|
99501
|
-
|
|
99502
|
-
if (!text) return false;
|
|
99503
|
-
return SPACE_MEMBER_ADDED_NOTICE_REGEX.test(text) || SPACE_MEMBER_REMOVED_NOTICE_REGEX.test(text);
|
|
98962
|
+
return false;
|
|
99504
98963
|
}
|
|
99505
98964
|
function shouldRefreshSpaceMetaForEvent(event) {
|
|
99506
98965
|
if (!isSignalEnvelope(event)) return false;
|
|
@@ -106949,4 +106408,4 @@ function isHumanInteractiveSpaceRuntime(runtime) {
|
|
|
106949
106408
|
//#endregion
|
|
106950
106409
|
export { runAgentsRepair as $, readAgentActivityIntegrationStatus as $a, performManagedInstall as $i, formatDaemonServiceDowngradeBlockedRecommendation as $n, resolveProfileWorkspaceRuntime as $r, readBundledOpenMeldCliSkillDocumentByPath as $t, assertFullSignalIdArgument as A, alignSelectedOpenMeldProfileStorage as Aa, getAgentControllerPermissionModeDisplayMetadata as Ai, inspectSpaceCacheFile as An, unbindProject as Ao, buildAgentOverviewFromContract as Ar, shouldEmitAgentOverview as At, persistAgentTransportSelection as B, getProfileDefaultView as Ba, getCurrentCommandCheckState as Bi, formatRemovedCcRelationMessage as Bn, outLine as Bo, runDaemonServiceFullAlignment as Br, parseJsonResponse$1 as Bt, toSpaceMetaUpsertInput as C, createOpenMeldAgentProfile as Ca, classifyDaemonServiceWakeability as Ci, submitProfileRuntimeAgentControllerReport as Cn, bindProject as Co, registerSpaceMemberSelectionOptions as Cr, runDaemonTeardownStrict as Ct, formatHumanReadTargetList as D, primeOpenMeldProfilesSessionCache as Da, resolveOpenMeldEnvironmentTarget as Di, resolveLocalAgentControllerBlockerReasonCodes as Dn, removeProjectConnection as Do, registerDaemonControlTargetOptions as Dr, reconcileCliVersionView as Dt, buildHumanReplyContextSummary as E, listOpenMeldProfiles as Ea, resolveDaemonDeviceId as Ei, collectLocalAgentControllerInventory as En, migrateProjectBindingStore as Eo, getCliVersionInfo as Er, buildProfileWorkspaceRows as Et, emitSpaceAgentOverview as F, buildHumanAuthenticationCard as Fa, resolveAgentExecutionStatus as Fi, buildSignalIndex as Fn, renderTextInfoCard as Fo, OPENMELD_AGENT_MENTAL_MODEL_LINES as Fr, fetchSpaceMeta as Ft, runAgentsCustomList as G, requestLocalAgentActivitySync as Ga, resolveVersionChangeDirection as Gi, assessCliUpdate as Gn, cliJsonSkillsShowEnvelopeSchema as Go, formatAgentReplyReadinessLabel as Gr, runDaemonStartDecisionPrompt as Gt, runAgents as H, LocalProjectConnectionError as Ha, resetCurrentCommandCheckState as Hi, promptSearchSelect as Hn, cliJsonOutputEnvelopeSchema as Ho, resolveServiceReadinessFromServiceStatus as Hr, writeInstalledLocalComponentsSnapshot as Ht, emitSpaceCliAgentOverview as I, createAuthenticationError as Ia, resolveAgentProfileEditCapabilities as Ii, buildSignalMessageReadProjection as In, sanitizeTerminalDisplayText as Io, SPACE_CONTRACT_ALLOWED_ACTION_ORDER as Ir, updateSpaceMeta as It, runAgentsDetect as J, resolveAgentActivityRouteForPath as Ja, getDaemonSystemServiceLogPath as Ji, readDispatchOwnedRuntimeGuard as Jn, revokeOrganizationJoinLinkResponseSchema as Jo, mapAgentReplyReadinessToLegacyAutoReply as Jr, runSkillsEnsure as Jt, runAgentsCustomRemove as K, isAgentActivityRouteRegistered as Ka, readCurrentDaemonRuntimeContext as Ki, isCliUpdateCheckApplicable as Kn, getOrganizationJoinLinkResponseSchema as Ko, formatDeviceReplyReadinessLabel as Kr, collectSkillsReadinessSnapshot as Kt, prepareLocalAgentReadiness as L, resolveAuthenticationGuidance as La, resolveEvidenceSyncHealth as Li, buildSpaceRoundReadProjection as Ln, emitCliJsonEnvelope as Lo, areAllowedActionsEquivalent as Lr, readGatewayJsonResponse as Lt, prepareAuthenticatedSpaceCommandContext as M, getSelectedOpenMeldProfileId as Ma, listAgentControllerPermissionModeOptions as Mi, assertNoRemovedCcSpaceAddressingSyntax as Mn, enqueueControllerTaskLifecycleEventWhileLocked as Mo, formatDualViewGuideForDisplay as Mr, readDaemonStartFailureLogTailLines as Mt, resolveOpenMeldProfileForSpaceCommand as N, setSelectedOpenMeldProfileId as Na, parseAgentControllerRef as Ni, buildDispatchResultMessageReadProjection as Nn, readControllerTaskLifecycleOutboxHealth as No, buildDualViewGuideMessage as Nr, fetchSpaceUpdates as Nt, parseEnvelope as O, resolveOpenMeldProfile as Oa, buildAgentControllerRef as Oi, resolveLocalAgentControllerLaunchability as On, runIfAgentActivityBindingGenerationIsCurrent as Oo, registerAuthLoginRequestOptions as Or, emitDaemonAgentOverview as Ot, resolveSpaceAccessLabel as P, buildAgentAuthenticationGuide as Pa, resolveAgentControllerPermissionModeForController as Pi, buildDispatchResultReplyWorkflowProjection as Pn, renderInfoCard as Po, formatAgentOverviewPayload as Pr, createCliSpaceApi as Pt, runAgentsManage as Q, installAgentActivityIntegrations as Qa, buildInstallSelfJsonPayload as Qi, resolveElapsedTimeMs as Qn, createModelCatalogReadSession as Qr, ensureLocalSkills as Qt, buildReplyReadinessGuidance as R, resolveAuthenticationGuidanceFromError as Ra, resolveNativeAgentControllerPermissionModeForController as Ri, buildUpdatesReplyWorkflowProjection as Rn, errLine as Ro, buildAgentFacingPublicationModeGuideLines as Rr, readGatewayTextResponse as Rt, loadSpaceSignalIndexOrNull as S, resolveOpenMeldProfileOrNull as Sa, classifyDaemonServiceRunStartability as Si, computeRetryDelayMs as Sn, removeProjectOutbox as So, getCommandHintsFromContract as Sr, runDaemonStop as St, buildFormalSignalReadPayload as T, deleteOpenMeldProfile as Ta, ensureDaemonRuntimePaths as Ti, submitRuntimeAgentControllerReports as Tn, listProjectConnectionsWithStatus as To, registerSkillsTargetSelectionOptions as Tr, buildProfileWorkspacePresentation as Tt, runAgentsConfig as U, validateLocalProjectConnectionPath as Ua, startCurrentCommandCheckScope as Ui, isReturnKeypress as Un, cliJsonSkillsListEnvelopeSchema as Uo, resolveDaemonServiceFreshnessWarning as Ur, resolveDaemonServiceParticipationStatus as Ut, resolveAgentProfileSetup as V, setProfileDefaultView as Va, isCurrentCommandCheckScopeActive as Vi, promptSearchMultiselect as Vn, cliBinaryDeltaPatchSchema as Vo, formatDaemonFailureContextText as Vr, resolveLocalComponentsStatus as Vt, runAgentsCustomAdd as W, LocalDaemonControlPlaneClientError as Wa, inspectDaemonServiceInventory as Wi, runInteractivePrompt as Wn, cliJsonSkillsLoadEnvelopeSchema as Wo, resolveCurrentReplyReadinessSnapshot as Wr, runDaemonServiceParticipationGate as Wt, runAgentsEnable as X, AGENT_ACTIVITY_INTEGRATION_OWNER as Xa, readDaemonServiceJobCrashExitCode as Xi, writeDispatchSpaceActionRecord as Xn, package_default as Xo, resolveOpenClawLocalDiagnosticsValue as Xr, runSkillsUninstall as Xt, runAgentsDisable as Y, unregisterAgentActivityRoute as Ya, isDaemonServiceJobNeverSpawned as Yi, readDispatchSpaceActionContextFromEnv as Yn, compareAgentControllerRefsForDisplay as Yo, resolveGatewayChainReadiness as Yr, runSkillsInstall as Yt, runAgentsList as Z, defaultManagedIntegrationPaths as Za, resolveDaemonServiceManager as Zi, formatElapsedTime as Zn, syncProfileWorkspaceState as Zr, runSkillsUpdate as Zt, runSpaceWriteWithPasswordRetry as _, parseCliViewMode as _a, buildDaemonRouteObservationPresentation as _i, promptTextEntry as _n, normalizeSharedSessionTitle as _o, createSpaceUpdatesGuideError as _r, runDaemonInterrupt as _t, runSpaceDelete as a, readVersionState as aa, setOpenMeldManagedProfileWorkspace as ai, ensureCommandAuthenticationOrCancel as an, formatOpenMeldCliLine as ao, createProfileMenuGuideError as ar, printOpenMeldBanner as at, buildIdentityOnlyMembersSnapshotForReadProjection as b, isSelectedOpenMeldProfileRequiredError as ba, buildDaemonServiceTargetSpec as bi, resolveServiceParticipationReadiness as bn, removeProjectInbox as bo, createUpgradeConfirmationGuideError as br, runDaemonSnapshot as bt, runSpaceLeave as c, resolveOpenMeldDistribution as ca, syncDeviceRuntimeStateProjection as ci, runAuthLogout as cn, resolveSetupFollowUpCliEntryCommand as co, createSpaceAliasTargetGuideError as cr, renderOpenMeldLogo as ct, runSpaceRemoveMembers as d, resolveCurrentDaemonExpectedVersion as da, listAgentTargetStates as di, buildAuthStatusRows as dn, readDaemonServiceContract as do, createSpaceMenuGuideError as dr, resolveSpaceSendText as dt, buildNextVersionState as ea, ensureOpenMeldManagedProfileWorkspace as ei, readRuntimeReportingHealthState as en, resolveAgentActivityDispatcherCommand as eo, formatDaemonServiceMissingRecommendation as er, runAgentsShow as et, runSpaceSend as f, buildHumanErrorCopy as fa, reconcileNewRunnableBuiltinAgentsForSetup as fi, buildAuthStatusSnapshot as fn, upsertDaemonServiceContract as fo, createSpacePublicationSetGuideError as fr, runDaemon as ft, runSpaceReadWithPasswordRetry as g, formatMessage as ga, PREPARE_SESSION_RECONNECT_GRACE_MS as gi, resolveCreateProfileName as gn, resolveObservedAgentActivityBinding as go, createSpaceTargetGuideError as gr, runDaemonInstall as gt, uploadPreparedSpaceFiles as h, createPresenter as ha, resolveLocalRegistryAgentIdFromAgentControllerRef as hi, resolveCreateProfileKind as hn, buildAgentActivityEvent as ho, createSpaceSubcommandTargetGuideError as hr, runDaemonCancel as ht, runSpaceCreate as i, fetchLatestPackageInfo as ia, setCustomProfileWorkspace as ii, buildCommandAuthenticationPromptMessage as in, formatOpenMeldCliCommands as io, createProfileCreateGuideError as ir, colorizeDisplayProfileLabel as it, assertValidSpaceIdTarget as j, clearSelectedOpenMeldProfileId as ja, getAgentControllerPermissionModeFieldLabel as ji, upsertSpaceConfig as jn, canonicalizeLocalProjectPath as jo, DualViewGuideError as jr, runDaemonStartupPreflight as jt, isSpaceCommandOutputHandledError as k, updateOpenMeldProfile as ka, createAgentExecutionStatusDisplayRows as ki, resolveLocalAgentControllerReportDecision as kn, setDefaultProjectConnection as ko, registerBuiltinAgentSelectionOptions as kr, createDelayedSpinner as kt, runSpaceList as l, resolveDaemonRuntimeContractCompatibility as la, createPrimaryBindingReadSession as li, runAuthMenu as ln, resolveUserFacingCliEntryCommand as lo, createSpaceContractSetGuideError as lr, renderOpenMeldTagline as lt, prepareRequestedSpaceSendFiles as m, renderHumanTextErrorCard as ma, notifyDaemonRouteCatalogChanged as mi, createProfileByKind as mn, removeAgentActivityContextCache as mo, createSpaceResultGuideError as mr, runDaemonBackgroundStartForDecision as mt, promptAndConfirmSpacePassword as n, ensureVersionStateReady as na, readProfileWorkspaceConfig as ni, connectWebSocket as nn, formatInlineOpenMeldCliCommands as no, createDoctorFailedGuideError as nr, postLocalParticipationMutationReconcile as nt, runSpaceHistory as o, writeVersionState as oa, validateCustomProfileWorkspacePath as oi, evaluateCommandAuthentication as on, formatOpenMeldCliTextBlock as oo, createResetConfirmationGuideError as or, renderOpenMeldBrandBlockLines as ot, runSpaceWatch as p, renderHumanErrorCard as pa, listBuiltinAgentsRegistryEntries as pi, formatActiveOrganizationLabel as pn, readAgentActivityContextForPath as po, createSpaceRemoveMembersGuideError as pr, runDaemonAutostart as pt, runAgentsCustomUpdate as q, registerAgentActivityRoute as qa, readCurrentObservedDaemonRuntimeStatus as qi, assertDispatchOwnedRuntimePublicWriteAllowed as qn, organizationJoinLinkErrorResponseSchema as qo, formatHumanReplyReadinessReason as qr, runSkillsCheck as qt, runSpaceAddMembers as r, fetchLatestCliBinaryRelease as ra, resolveConfiguredProfileWorkspacePath as ri, assessServerRequiredVersion as rn, formatOpenMeldCliCommand as ro, createProfileActionGuideError as rr, colorizeAgentLabel as rt, runSpaceJoin as s, isBinaryDistribution as sa, describeProfileWorkspacePathValidationFailure as si, runAuthLogin as sn, formatProfileAwareOpenMeldCliCommands as so, createSpaceAddMembersGuideError as sr, renderOpenMeldHeader as st, buildCreateSpacePasswordPromptConfig as t, compareSemver as ta, normalizeCustomProfileWorkspacePath as ti, readRecentDaemonDispatchJournalEvents as tn, uninstallAgentActivityIntegrations as to, canUseInteractivePrompts as tr, formatTransportModeDisplay as tt, runSpacePassword as u, toStartBackgroundHelperExecutionCompatibility as ua, resolveAgentProfilePrimaryAgentControllerReport as ui, runAuthStatus as un, syncLocalAgentActivity as uo, createSpaceLeaveGuideError as ur, resolveGatewayWebOrigin as ut, buildHumanReadSignalsTranscriptItems as v, resolveRuntimeContext as va, buildOnboardingPlan as vi, ensureAgentProfileRuntimeBinding as vn, readCodexSessionTitles as vo, createStartAgentIdentityGuideError as vr, runDaemonReinstall as vt, buildFormalDispatchResultReadPayload as w, createOpenMeldHumanProfile as wa, readRecentDaemonLifecycleEvents as wi, submitRuntimeAgentControllerReport as wn, listProjectBindings as wo, SPACE_ADD_MEMBERS_PROGRESS_HEARTBEAT_MS as wr, runDaemonUninstall as wt, loadSpaceIdentityDirectoryOrNull as x, requireOpenMeldProfile as xa, resolveDaemonServiceAlignmentDecision as xi, assessActionParticipationCandidate as xn, readAgentActivityOutboxHealth as xo, getCommandEntryContract as xr, runDaemonStatusFlow as xt, emitHumanReadSignalsTextProjection as y, resolveViewProfileKey as ya, getSetupFlowCopy as yi, formatServiceParticipationReadinessLabel as yn, enqueueAgentActivityHookEvent as yo, createStartAuthenticationGuideError as yr, runDaemonRunAfterEntryChecks as yt, resolveHumanControllerDisplayName as z, resolveAuthenticationGuidanceFromMessage as za, finishCurrentCommandCheckScope as zi, createSpaceMemberIdentityIndex as zn, outJsonLine as zo, canonicalizeAllowedActions as zr, toStructuredGatewayFailure as zt };
|
|
106951
106410
|
|
|
106952
|
-
//# sourceMappingURL=command-
|
|
106411
|
+
//# sourceMappingURL=command-DjZ6uBsa.js.map
|