openmeld 0.3.163 → 0.3.164
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-BGHiNfW1.js → add-me-membership-qKR8PKLL.js} +2 -2
- package/dist/{add-me-membership-BGHiNfW1.js.map → add-me-membership-qKR8PKLL.js.map} +1 -1
- package/dist/{api-client-foundation-CM_YDN01.js → api-client-foundation-BQyVR0ev.js} +1 -1
- package/dist/{api-client-foundation-DyJw6DSc.js → api-client-foundation-C0Zq2voT.js} +2 -2
- package/dist/{api-client-foundation-DyJw6DSc.js.map → api-client-foundation-C0Zq2voT.js.map} +1 -1
- package/dist/{command-CZ8e1Yrm.js → command-BmHKOgIq.js} +6 -6
- package/dist/{command-CZ8e1Yrm.js.map → command-BmHKOgIq.js.map} +1 -1
- package/dist/{dist-DOwOSSty.js → dist-BZQBQLYA.js} +1 -1
- package/dist/{dist-DL_cNw8Y.js → dist-C7GcYLZj.js} +6 -1
- package/dist/dist-C7GcYLZj.js.map +1 -0
- package/dist/{elapsed-time-CwU1_Va7.js → elapsed-time-BDn2tDRl.js} +2 -2
- package/dist/{elapsed-time-CwU1_Va7.js.map → elapsed-time-BDn2tDRl.js.map} +1 -1
- package/dist/{installer-BBCQQtVT.js → installer-CnGp0v9d.js} +2 -2
- package/dist/{installer-BBCQQtVT.js.map → installer-CnGp0v9d.js.map} +1 -1
- package/dist/{openmeld-CY8m1A8E.js → openmeld-boZ4gJqB.js} +9 -9
- package/dist/{openmeld-CY8m1A8E.js.map → openmeld-boZ4gJqB.js.map} +1 -1
- package/dist/{openmeld-maintenance-worker-aXOaUwRQ.js → openmeld-maintenance-worker-DqwYU6nm.js} +3 -3
- package/dist/{openmeld-maintenance-worker-aXOaUwRQ.js.map → openmeld-maintenance-worker-DqwYU6nm.js.map} +1 -1
- package/dist/{openmeld-tools-update-coordinator-CY2CSXlX.js → openmeld-tools-update-coordinator-yGkv7wqt.js} +6 -6
- package/dist/{openmeld-tools-update-coordinator-CY2CSXlX.js.map → openmeld-tools-update-coordinator-yGkv7wqt.js.map} +1 -1
- package/dist/openmeld.js +3 -3
- package/dist/upgrade-BO2qPMmW.js +4 -0
- package/dist/{upgrade-Bk_n_j01.js → upgrade-BQcbRIT0.js} +3 -3
- package/dist/{upgrade-Bk_n_j01.js.map → upgrade-BQcbRIT0.js.map} +1 -1
- package/package.json +1 -1
- package/dist/dist-DL_cNw8Y.js.map +0 -1
- package/dist/upgrade-C5abaU0o.js +0 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { r as runSpaceAddMembers } from "./command-
|
|
3
|
+
import { r as runSpaceAddMembers } from "./command-BmHKOgIq.js";
|
|
4
4
|
//#region src/space/add-me-membership.ts
|
|
5
5
|
async function runSpaceAddMeMembership(input) {
|
|
6
6
|
return await runSpaceAddMembers(input);
|
|
@@ -8,4 +8,4 @@ async function runSpaceAddMeMembership(input) {
|
|
|
8
8
|
//#endregion
|
|
9
9
|
export { runSpaceAddMeMembership };
|
|
10
10
|
|
|
11
|
-
//# sourceMappingURL=add-me-membership-
|
|
11
|
+
//# sourceMappingURL=add-me-membership-qKR8PKLL.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-me-membership-
|
|
1
|
+
{"version":3,"file":"add-me-membership-qKR8PKLL.js","names":[],"sources":["../src/space/add-me-membership.ts"],"sourcesContent":["import { runSpaceAddMembers } from \"./command\";\nimport type { SpaceCommandNavigationStatus } from \"./navigation-status\";\n\nexport type SpaceAddMeMembershipInput = Parameters<\n typeof runSpaceAddMembers\n>[0];\nexport type SpaceAddMeMembershipRunner = (\n input: SpaceAddMeMembershipInput\n) => Promise<SpaceCommandNavigationStatus>;\n\nexport async function runSpaceAddMeMembership(\n input: SpaceAddMeMembershipInput\n): Promise<SpaceCommandNavigationStatus> {\n return await runSpaceAddMembers(input);\n}\n"],"mappings":";;;;AAUA,eAAsB,wBACpB,OACuC;CACvC,OAAO,MAAM,mBAAmB,KAAK;AACvC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { t as normalizeBaseUrl } from "./urls-4D7CaXe3.js";
|
|
4
4
|
import { t as isLoopbackHostname } from "./loopback-hostname-DHQPKq8N.js";
|
|
5
|
-
import { Fn as OPENMELD_HEADER_REQUESTED_ORGANIZATION_ID, Rn as buildOpenMeldRequestContextHeaders, Zt as createOpenMeldApiClient } from "./dist-
|
|
5
|
+
import { Fn as OPENMELD_HEADER_REQUESTED_ORGANIZATION_ID, Rn as buildOpenMeldRequestContextHeaders, Zt as createOpenMeldApiClient } from "./dist-C7GcYLZj.js";
|
|
6
6
|
import { M as MAX_SPACE_REQUEST_TIMEOUT_MS, P as MIN_SPACE_REQUEST_TIMEOUT_MS, b as resolveAuthSessionExpiryEligibility, k as DEFAULT_SPACE_REQUEST_TIMEOUT_MS, l as getAuthSessionState } from "./auth-session-xj7oUO1L.js";
|
|
7
7
|
import crypto from "node:crypto";
|
|
8
8
|
//#region src/config/auth-request-compatibility.ts
|
|
@@ -437,4 +437,4 @@ function createCliApiClientFoundation(baseUrl, options = {}) {
|
|
|
437
437
|
//#endregion
|
|
438
438
|
export { buildOpenMeldProfileIdentityRequestHeadersWithAuth as a, buildRequestAuthHeaders as c, buildOpenMeldRequestContextFromProfileIdentity as d, deriveAuthBaseUrlFromGatewayUrl as f, AuthRequestCredentialError as i, canAttachAuthTokenToRequest as l, fetchSpaceRequestWithTimeout as n, buildOpenMeldProfileRequestHeadersWithAuth as o, resolveAuthRequestCompatibility as p, resolveSpaceRequestTimeoutMsForDiagnostics as r, buildOpenMeldRequestContextHeadersWithAuth as s, createCliApiClientFoundation as t, buildOpenMeldRequestContextFromProfile as u };
|
|
439
439
|
|
|
440
|
-
//# sourceMappingURL=api-client-foundation-
|
|
440
|
+
//# sourceMappingURL=api-client-foundation-C0Zq2voT.js.map
|
package/dist/{api-client-foundation-DyJw6DSc.js.map → api-client-foundation-C0Zq2voT.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client-foundation-DyJw6DSc.js","names":["resolveSpaceRequestTimeoutMsForDiagnostics","resolveSpaceRequestTimeoutMsForCliDiagnostics"],"sources":["../src/config/auth-request-compatibility.ts","../src/config/openmeld-request-context.ts","../src/config/request-headers.ts","../src/space/request-timeout.ts","../src/space/fetch-with-timeout.ts","../src/space/api-client-foundation.ts"],"sourcesContent":["import { normalizeBaseUrl } from \"../protocol/urls\";\nimport type { StoredAuthSession } from \"./auth-session\";\nimport { isLoopbackHostname } from \"./loopback-hostname\";\n\nexport type AuthRequestCompatibilityReason =\n | \"invalid_request_url\"\n | \"invalid_auth_url\"\n | \"insecure_transport\"\n | \"host_mismatch\"\n | \"loopback\"\n | \"same_host\"\n | \"gateway_sibling\";\n\nexport type AuthRequestCompatibility = {\n compatible: boolean;\n reason: AuthRequestCompatibilityReason;\n requestHost: string | null;\n authHost: string | null;\n expectedGatewayHost: string | null;\n};\n\nexport function resolveAuthRequestCompatibility(input: {\n session: StoredAuthSession;\n requestUrl: string;\n}): AuthRequestCompatibility {\n const requestUrl = parseUrlOrNull(input.requestUrl);\n if (!requestUrl) {\n return {\n compatible: false,\n reason: \"invalid_request_url\",\n requestHost: null,\n authHost: null,\n expectedGatewayHost: null,\n };\n }\n\n const authBaseUrl = parseUrlOrNull(input.session.authBaseUrl);\n if (!authBaseUrl) {\n return {\n compatible: false,\n reason: \"invalid_auth_url\",\n requestHost: requestUrl.host,\n authHost: null,\n expectedGatewayHost: null,\n };\n }\n\n const expectedGatewayHost = deriveGatewayHost(authBaseUrl);\n const requestHost = requestUrl.host;\n const authHost = authBaseUrl.host;\n\n if (\n isLoopbackHostname(requestUrl.hostname) &&\n isLoopbackHostname(authBaseUrl.hostname)\n ) {\n return {\n compatible: true,\n reason: \"loopback\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n }\n\n if (!isSecureTransportProtocol(requestUrl.protocol)) {\n return {\n compatible: false,\n reason: \"insecure_transport\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n }\n\n if (requestHost === authHost) {\n return {\n compatible: true,\n reason: \"same_host\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n }\n\n if (expectedGatewayHost && requestHost === expectedGatewayHost) {\n return {\n compatible: true,\n reason: \"gateway_sibling\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n }\n\n return {\n compatible: false,\n reason: \"host_mismatch\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n}\n\nexport function deriveAuthBaseUrlFromGatewayUrl(\n gatewayUrl: string\n): string | null {\n const parsed = parseUrlOrNull(gatewayUrl);\n if (!parsed) {\n return null;\n }\n if (!isHttpTransportProtocol(parsed.protocol)) {\n return null;\n }\n if (!parsed.hostname.startsWith(\"gateway.\")) {\n return null;\n }\n\n const authUrl = new URL(parsed.toString());\n authUrl.hostname = `auth.${parsed.hostname.slice(\"gateway.\".length)}`;\n authUrl.pathname = \"/\";\n authUrl.search = \"\";\n authUrl.hash = \"\";\n return normalizeBaseUrl(authUrl.toString());\n}\n\nfunction deriveGatewayHost(authBaseUrl: URL): string | null {\n if (!authBaseUrl.hostname.startsWith(\"auth.\")) {\n return null;\n }\n\n const gatewayUrl = new URL(authBaseUrl.toString());\n gatewayUrl.hostname = `gateway.${authBaseUrl.hostname.slice(\"auth.\".length)}`;\n return gatewayUrl.host;\n}\n\nfunction parseUrlOrNull(value: string): URL | null {\n try {\n return new URL(value);\n } catch {\n return null;\n }\n}\n\nfunction isSecureTransportProtocol(protocol: string): boolean {\n return protocol === \"https:\" || protocol === \"wss:\";\n}\n\nfunction isHttpTransportProtocol(protocol: string): boolean {\n return protocol === \"http:\" || protocol === \"https:\";\n}\n","import crypto from \"node:crypto\";\nimport type { OpenMeldRequestContext } from \"@openmeld/schemas/types\";\nimport type { OpenMeldProfile } from \"./openmeld-profiles-api\";\n\nexport type OpenMeldRequestContextProfileIdentity = {\n openMeldProfileId: string;\n profileKind?: \"human\" | \"agent\" | \"system\";\n kind?: \"human\" | \"agent\";\n profileHandle?: string;\n profileName: string;\n ownerUserId?: string;\n ownerName?: string;\n agentControllerConversationId?: string;\n};\n\nexport function buildOpenMeldRequestContextFromProfile(input: {\n openMeldProfile: OpenMeldProfile;\n requestId?: string;\n agentControllerConversationId?: string;\n}): OpenMeldRequestContext {\n const requestId =\n normalizeOptionalText(input.requestId) ?? crypto.randomUUID();\n const agentControllerConversationId = normalizeOptionalText(\n input.agentControllerConversationId\n );\n const ownerName = normalizeOptionalText(input.openMeldProfile.ownerName);\n\n return {\n actorContext: {\n requestId,\n openMeldProfileId: input.openMeldProfile.openMeldProfileId,\n profileKind: input.openMeldProfile.profileKind,\n profileHandle: input.openMeldProfile.profileHandle,\n profileName: input.openMeldProfile.profileName,\n ownerUserId: input.openMeldProfile.ownerUserId,\n ...(ownerName ? { ownerName } : {}),\n },\n ...(agentControllerConversationId ? { agentControllerConversationId } : {}),\n };\n}\n\nexport function buildOpenMeldRequestContextFromProfileIdentity(input: {\n profileIdentity: OpenMeldRequestContextProfileIdentity;\n requestId?: string;\n}): OpenMeldRequestContext {\n const requestId =\n normalizeOptionalText(input.requestId) ?? crypto.randomUUID();\n const profileHandle = normalizeOptionalText(\n input.profileIdentity.profileHandle\n );\n const ownerUserId = normalizeOptionalText(input.profileIdentity.ownerUserId);\n const ownerName = normalizeOptionalText(input.profileIdentity.ownerName);\n const agentControllerConversationId = normalizeOptionalText(\n input.profileIdentity.agentControllerConversationId\n );\n const profileKind =\n input.profileIdentity.profileKind ??\n (input.profileIdentity.kind === \"human\" ||\n input.profileIdentity.kind === \"agent\"\n ? input.profileIdentity.kind\n : \"system\");\n\n return {\n actorContext: {\n requestId,\n openMeldProfileId: input.profileIdentity.openMeldProfileId,\n profileKind,\n ...(profileHandle ? { profileHandle } : {}),\n profileName: input.profileIdentity.profileName,\n ...(ownerUserId ? { ownerUserId } : {}),\n ...(ownerName ? { ownerName } : {}),\n },\n ...(agentControllerConversationId ? { agentControllerConversationId } : {}),\n };\n}\n\nfunction normalizeOptionalText(value: unknown): string | null {\n const normalized = String(value ?? \"\").trim();\n return normalized.length > 0 ? normalized : null;\n}\n","import {\n buildOpenMeldRequestContextHeaders,\n type OpenMeldRequestContextHeadersInput,\n} from \"@openmeld/gateway-contract\";\nimport type { OpenMeldRequestContext } from \"@openmeld/schemas/types\";\nimport {\n type AuthRequestCompatibilityReason,\n resolveAuthRequestCompatibility,\n} from \"./auth-request-compatibility\";\nimport {\n type AuthSessionStateReasonCode,\n getAuthSessionState,\n type StoredAuthSession,\n} from \"./auth-session\";\nimport { resolveAuthSessionExpiryEligibility } from \"./auth-session-expiry\";\nimport type { OpenMeldProfile } from \"./openmeld-profiles-api\";\nimport {\n buildOpenMeldRequestContextFromProfile,\n buildOpenMeldRequestContextFromProfileIdentity,\n type OpenMeldRequestContextProfileIdentity,\n} from \"./openmeld-request-context\";\n\nconst DEFAULT_TOKEN_TYPE = \"Bearer\";\nconst AUTHORIZATION_HEADER = \"Authorization\";\n\ntype RequestAuthHeadersInput = {\n authSession?: StoredAuthSession | null;\n requestUrl: string;\n};\n\ntype OpenMeldRequestContextHeadersWithAuthInput =\n OpenMeldRequestContextHeadersInput & {\n authSession?: StoredAuthSession | null;\n requestUrl: string;\n };\n\nexport type AuthTokenAttachment =\n | {\n status: \"attachable\";\n token: string;\n tokenType: string;\n }\n | {\n status: \"dropped\";\n reason:\n | \"empty_token\"\n | \"session_expired\"\n | \"session_expiry_invalid\"\n | AuthRequestCompatibilityReason;\n requestHost: string | null;\n authHost: string | null;\n expectedGatewayHost: string | null;\n };\n\nexport type DroppedAuthTokenAttachment = Extract<\n AuthTokenAttachment,\n { status: \"dropped\" }\n>;\n\nexport type AuthRequestCredentialFailureReason =\n | DroppedAuthTokenAttachment[\"reason\"]\n | AuthSessionStateReasonCode\n | \"session_invalid\"\n | \"session_revoked\";\n\nexport class AuthRequestCredentialError extends Error {\n readonly authHost: string | null;\n readonly expectedGatewayHost: string | null;\n readonly reason: AuthRequestCredentialFailureReason;\n readonly requestHost: string | null;\n readonly droppedAttachment?: DroppedAuthTokenAttachment;\n\n constructor(input: {\n authHost: string | null;\n expectedGatewayHost: string | null;\n reason: AuthRequestCredentialFailureReason;\n requestHost: string | null;\n droppedAttachment?: DroppedAuthTokenAttachment;\n }) {\n super(\n `OpenMeld refused to send a request with unusable stored credentials (${input.reason}).`\n );\n this.name = \"AuthRequestCredentialError\";\n this.authHost = input.authHost;\n this.expectedGatewayHost = input.expectedGatewayHost;\n this.reason = input.reason;\n this.requestHost = input.requestHost;\n this.droppedAttachment = input.droppedAttachment;\n }\n}\n\nexport async function buildRequestAuthHeaders(\n input: RequestAuthHeadersInput\n): Promise<Record<string, string>> {\n const headers: Record<string, string> = {};\n await attachAuthHeader(headers, input);\n return headers;\n}\n\nexport async function buildOpenMeldRequestContextHeadersWithAuth(\n input: OpenMeldRequestContextHeadersWithAuthInput\n): Promise<Record<string, string>> {\n const headers = buildOpenMeldRequestContextHeaders(input);\n await attachAuthHeader(headers, input);\n return headers;\n}\n\nexport async function buildOpenMeldProfileRequestHeadersWithAuth(input: {\n openMeldProfile: OpenMeldProfile;\n requestUrl: string;\n authSession?: StoredAuthSession | null;\n agentControllerConversationId?: string;\n spacePassword?: string;\n}): Promise<Record<string, string>> {\n return await buildOpenMeldRequestContextHeadersWithAuth({\n requestContext: buildOpenMeldRequestContextFromProfile({\n openMeldProfile: input.openMeldProfile,\n agentControllerConversationId: input.agentControllerConversationId,\n }),\n requestUrl: input.requestUrl,\n ...(input.authSession === undefined\n ? {}\n : { authSession: input.authSession }),\n ...(input.spacePassword === undefined\n ? {}\n : { spacePassword: input.spacePassword }),\n });\n}\n\nexport async function buildOpenMeldProfileIdentityRequestHeadersWithAuth(input: {\n profileIdentity: OpenMeldRequestContextProfileIdentity;\n requestUrl: string;\n authSession?: StoredAuthSession | null;\n spacePassword?: string;\n}): Promise<Record<string, string>> {\n return await buildOpenMeldRequestContextHeadersWithAuth({\n requestContext: buildOpenMeldRequestContextFromProfileIdentity({\n profileIdentity: input.profileIdentity,\n }),\n requestUrl: input.requestUrl,\n ...(input.authSession === undefined\n ? {}\n : { authSession: input.authSession }),\n ...(input.spacePassword === undefined\n ? {}\n : { spacePassword: input.spacePassword }),\n });\n}\n\nexport function withSpacePassword(\n requestContext: OpenMeldRequestContext,\n spacePassword?: string\n): OpenMeldRequestContextHeadersInput {\n return {\n requestContext,\n ...(spacePassword === undefined ? {} : { spacePassword }),\n };\n}\n\n// One decision for \"can this stored session authenticate this request\", with\n// the drop reason preserved. Header building and the daemon stream connect\n// gate must share this so they cannot drift apart.\nexport function resolveAuthTokenAttachment(input: {\n session: StoredAuthSession;\n requestUrl: string;\n}): AuthTokenAttachment {\n const compatibility = resolveAuthRequestCompatibility({\n session: input.session,\n requestUrl: input.requestUrl,\n });\n const token = normalizeAccessToken(input.session);\n if (!token) {\n return {\n status: \"dropped\",\n reason: \"empty_token\",\n requestHost: compatibility.requestHost,\n authHost: compatibility.authHost,\n expectedGatewayHost: compatibility.expectedGatewayHost,\n };\n }\n if (!compatibility.compatible) {\n return {\n status: \"dropped\",\n reason: compatibility.reason,\n requestHost: compatibility.requestHost,\n authHost: compatibility.authHost,\n expectedGatewayHost: compatibility.expectedGatewayHost,\n };\n }\n const expiryReason = resolveSessionExpiryReason(input.session);\n if (expiryReason) {\n return {\n status: \"dropped\",\n reason: expiryReason,\n requestHost: compatibility.requestHost,\n authHost: compatibility.authHost,\n expectedGatewayHost: compatibility.expectedGatewayHost,\n };\n }\n return {\n status: \"attachable\",\n token,\n tokenType: normalizeTokenType(input.session.tokenType),\n };\n}\n\nexport function requireAuthTokenAttachment(input: {\n session: StoredAuthSession;\n requestUrl: string;\n}): Extract<AuthTokenAttachment, { status: \"attachable\" }> {\n const attachment = resolveAuthTokenAttachment(input);\n if (attachment.status === \"dropped\") {\n throw createAuthRequestCredentialError(attachment);\n }\n return attachment;\n}\n\nasync function attachAuthHeader(\n headers: Record<string, string>,\n input: RequestAuthHeadersInput\n): Promise<void> {\n const session = await resolveAuthSessionForHeaders(input);\n if (session === null) {\n // No stored credentials exist, so there is nothing to strip: the caller\n // is knowingly sending an unauthenticated request.\n return;\n }\n\n let attachment: Extract<AuthTokenAttachment, { status: \"attachable\" }>;\n try {\n attachment = requireAuthTokenAttachment({\n session,\n requestUrl: input.requestUrl,\n });\n } catch (error) {\n if (error instanceof AuthRequestCredentialError) {\n logRejectedAuthRequestCredential(error);\n }\n throw error;\n }\n headers[AUTHORIZATION_HEADER] = `${attachment.tokenType} ${attachment.token}`;\n}\n\nfunction logRejectedAuthRequestCredential(\n error: AuthRequestCredentialError\n): void {\n console.error(\"[openmeld.auth.request_credential_rejected]\", {\n authHost: error.authHost,\n expectedGatewayHost: error.expectedGatewayHost,\n reason: error.reason,\n requestHost: error.requestHost,\n });\n}\n\nasync function resolveAuthSessionForHeaders(\n input: RequestAuthHeadersInput\n): Promise<StoredAuthSession | null> {\n if (input.authSession !== undefined) {\n return input.authSession;\n }\n\n const sessionState = await getAuthSessionState({ refreshExpired: true });\n if (sessionState.state === \"missing\") {\n return null;\n }\n if (sessionState.state !== \"valid\" || sessionState.session === null) {\n const error = new AuthRequestCredentialError({\n authHost: null,\n expectedGatewayHost: null,\n reason:\n sessionState.reasonCode ??\n (sessionState.state === \"revoked\"\n ? \"session_revoked\"\n : \"session_invalid\"),\n requestHost: parseRequestHost(input.requestUrl),\n });\n logRejectedAuthRequestCredential(error);\n throw error;\n }\n\n return sessionState.session;\n}\n\nfunction createAuthRequestCredentialError(\n attachment: DroppedAuthTokenAttachment\n): AuthRequestCredentialError {\n return new AuthRequestCredentialError({\n authHost: attachment.authHost,\n expectedGatewayHost: attachment.expectedGatewayHost,\n reason: attachment.reason,\n requestHost: attachment.requestHost,\n droppedAttachment: attachment,\n });\n}\n\nfunction parseRequestHost(requestUrl: string): string | null {\n try {\n return new URL(requestUrl).host || null;\n } catch {\n return null;\n }\n}\n\nfunction normalizeAccessToken(session: StoredAuthSession): string {\n return String(session.accessToken ?? \"\").trim();\n}\n\nfunction normalizeTokenType(tokenType: string | undefined): string {\n const normalized = String(tokenType ?? \"\").trim();\n return normalized.length > 0 ? normalized : DEFAULT_TOKEN_TYPE;\n}\n\nfunction resolveSessionExpiryReason(\n session: StoredAuthSession\n): \"session_expired\" | \"session_expiry_invalid\" | null {\n const eligibility = resolveAuthSessionExpiryEligibility(session.expiresAt);\n if (eligibility.status === \"invalid\") {\n return \"session_expiry_invalid\";\n }\n return eligibility.status === \"expired\" ? \"session_expired\" : null;\n}\n\nexport function canAttachAuthTokenToRequest(\n session: StoredAuthSession,\n requestUrl: string\n): boolean {\n return (\n resolveAuthTokenAttachment({\n session,\n requestUrl,\n }).status === \"attachable\"\n );\n}\n","import {\n DEFAULT_SPACE_CONVERSATION_VALIDATE_TIMEOUT_MS,\n DEFAULT_SPACE_REQUEST_TIMEOUT_MS,\n MAX_SPACE_REQUEST_TIMEOUT_MS,\n MIN_SPACE_REQUEST_TIMEOUT_MS,\n} from \"../strategy-constants\";\n\nconst SPACE_REQUEST_TIMEOUT_ENV_KEY = \"OPENMELD_SPACE_REQUEST_TIMEOUT_MS\";\n\nexport function resolveSpaceRequestTimeoutMs(override?: number): number {\n if (isFinitePositiveNumber(override)) {\n return clampSpaceRequestTimeoutMs(override);\n }\n\n const fromEnv = Number.parseInt(\n String(process.env[SPACE_REQUEST_TIMEOUT_ENV_KEY] ?? \"\"),\n 10\n );\n if (isFinitePositiveNumber(fromEnv)) {\n return clampSpaceRequestTimeoutMs(fromEnv);\n }\n\n return DEFAULT_SPACE_REQUEST_TIMEOUT_MS;\n}\n\nexport function resolveSpaceRequestTimeoutMsForDiagnostics(): number {\n return resolveSpaceRequestTimeoutMs(undefined);\n}\n\nexport function resolveSpaceConversationValidateTimeoutMs(): number {\n return Math.max(\n resolveSpaceRequestTimeoutMs(undefined),\n DEFAULT_SPACE_CONVERSATION_VALIDATE_TIMEOUT_MS\n );\n}\n\nfunction clampSpaceRequestTimeoutMs(value: number): number {\n const normalized = Math.trunc(value);\n return Math.max(\n MIN_SPACE_REQUEST_TIMEOUT_MS,\n Math.min(MAX_SPACE_REQUEST_TIMEOUT_MS, normalized)\n );\n}\n\nfunction isFinitePositiveNumber(value: unknown): value is number {\n return typeof value === \"number\" && Number.isFinite(value) && value > 0;\n}\n","import {\n resolveSpaceRequestTimeoutMs,\n resolveSpaceRequestTimeoutMsForDiagnostics as resolveSpaceRequestTimeoutMsForCliDiagnostics,\n} from \"./request-timeout\";\n\nexport async function fetchSpaceRequestWithTimeout(input: {\n url: string;\n operation: string;\n init?: RequestInit;\n timeoutMs?: number;\n}): Promise<Response> {\n const timeoutMs = resolveSpaceRequestTimeoutMs(input.timeoutMs);\n const timeoutSignal = AbortSignal.timeout(timeoutMs);\n const composed = composeAbortSignals(input.init?.signal, timeoutSignal);\n\n try {\n try {\n return await fetch(input.url, {\n ...input.init,\n signal: composed.signal,\n });\n } catch (error) {\n // A keep-alive connection that a proxy silently dropped fails exactly\n // once and undici evicts it; the retry rides a fresh connection. This\n // is what keeps a long-lived service working behind flaky proxies\n // without asking users to touch their network config.\n if (\n timeoutSignal.aborted ||\n composed.signal.aborted ||\n !shouldWrapNetworkRequestError(error)\n ) {\n throw error;\n }\n return await fetch(input.url, {\n ...input.init,\n signal: composed.signal,\n });\n }\n } catch (error) {\n if (timeoutSignal.aborted) {\n throw createSpaceRequestTimeoutError({\n operation: input.operation,\n timeoutMs,\n cause: error,\n });\n }\n if (shouldWrapNetworkRequestError(error)) {\n throw createSpaceRequestNetworkError({\n operation: input.operation,\n url: input.url,\n cause: error,\n });\n }\n throw error;\n } finally {\n composed.cleanup();\n }\n}\n\nexport function resolveSpaceRequestTimeoutMsForDiagnostics(): number {\n return resolveSpaceRequestTimeoutMsForCliDiagnostics();\n}\n\nfunction createSpaceRequestTimeoutError(input: {\n operation: string;\n timeoutMs: number;\n cause: unknown;\n}): Error {\n const error = new Error(\n `${input.operation} request timed out after ${input.timeoutMs}ms`,\n { cause: input.cause }\n ) as Error & { code?: string };\n error.code = \"network.timeout\";\n return error;\n}\n\nfunction createSpaceRequestNetworkError(input: {\n operation: string;\n url: string;\n cause: unknown;\n}): Error {\n const error = new Error(\n `${input.operation} request could not reach ${describeRequestTarget(input.url)} (${toErrorMessage(input.cause)})`,\n { cause: input.cause }\n ) as Error & { code?: string };\n error.code = \"network.request_failed\";\n return error;\n}\n\nfunction composeAbortSignals(\n parent: AbortSignal | null | undefined,\n timeout: AbortSignal\n): { signal: AbortSignal; cleanup: () => void } {\n if (!parent) {\n return {\n signal: timeout,\n cleanup: () => undefined,\n };\n }\n\n if (parent.aborted || timeout.aborted) {\n const controller = new AbortController();\n controller.abort();\n return {\n signal: controller.signal,\n cleanup: () => undefined,\n };\n }\n\n const controller = new AbortController();\n const abort = () => {\n controller.abort();\n };\n\n parent.addEventListener(\"abort\", abort, { once: true });\n timeout.addEventListener(\"abort\", abort, { once: true });\n\n return {\n signal: controller.signal,\n cleanup: () => {\n parent.removeEventListener(\"abort\", abort);\n timeout.removeEventListener(\"abort\", abort);\n },\n };\n}\n\nfunction describeRequestTarget(url: string): string {\n try {\n return new URL(url).origin;\n } catch {\n return url;\n }\n}\n\nfunction toErrorMessage(error: unknown): string {\n if (error instanceof Error) {\n const message = error.message.trim();\n return message.length > 0 ? message : \"request failed\";\n }\n const message = String(error ?? \"\").trim();\n return message.length > 0 ? message : \"request failed\";\n}\n\nfunction shouldWrapNetworkRequestError(error: unknown): boolean {\n if (error instanceof TypeError) {\n return true;\n }\n if (\n typeof error === \"object\" &&\n error !== null &&\n \"code\" in error &&\n typeof error.code === \"string\" &&\n error.code.startsWith(\"ERR_SSL_\")\n ) {\n return true;\n }\n const message = toErrorMessage(error).toLowerCase();\n return (\n message.includes(\"fetch failed\") ||\n message.includes(\"failed to fetch\") ||\n message.includes(\"network request failed\") ||\n message.includes(\"ssl_decryption_failed_or_bad_record_mac\")\n );\n}\n","import {\n createOpenMeldApiClient,\n type OpenMeldApiClientFoundation,\n} from \"@openmeld/api-client\";\nimport {\n buildOpenMeldRequestContextHeaders,\n OPENMELD_HEADER_REQUESTED_ORGANIZATION_ID,\n} from \"@openmeld/gateway-contract\";\nimport { buildRequestAuthHeaders } from \"../config/request-headers\";\nimport { fetchSpaceRequestWithTimeout } from \"./fetch-with-timeout\";\n\nexport function createCliApiClientFoundation(\n baseUrl: string,\n options: {\n onAuthHeadersResolved?: (headers: Record<string, string>) => void;\n organizationId?: string;\n } = {}\n): OpenMeldApiClientFoundation {\n return createOpenMeldApiClient({\n baseUrl,\n transport: async (request) =>\n await fetchSpaceRequestWithTimeout({\n url: request.url,\n operation: request.operation,\n init: request.init,\n timeoutMs: request.timeoutMs,\n }),\n getAuthHeaders: async ({ requestUrl }) => {\n const headers = await buildRequestAuthHeaders({\n requestUrl,\n });\n if (options.organizationId) {\n headers[OPENMELD_HEADER_REQUESTED_ORGANIZATION_ID] =\n options.organizationId;\n }\n options.onAuthHeadersResolved?.(headers);\n return headers;\n },\n getRequestContextHeaders: async ({ requestContext, spacePassword }) =>\n buildOpenMeldRequestContextHeaders({\n requestContext,\n ...(spacePassword === undefined ? {} : { spacePassword }),\n }),\n });\n}\n"],"mappings":";;;;;;;;AAqBA,SAAgB,gCAAgC,OAGnB;CAC3B,MAAM,aAAa,eAAe,MAAM,UAAU;CAClD,IAAI,CAAC,YACH,OAAO;EACL,YAAY;EACZ,QAAQ;EACR,aAAa;EACb,UAAU;EACV,qBAAqB;CACvB;CAGF,MAAM,cAAc,eAAe,MAAM,QAAQ,WAAW;CAC5D,IAAI,CAAC,aACH,OAAO;EACL,YAAY;EACZ,QAAQ;EACR,aAAa,WAAW;EACxB,UAAU;EACV,qBAAqB;CACvB;CAGF,MAAM,sBAAsB,kBAAkB,WAAW;CACzD,MAAM,cAAc,WAAW;CAC/B,MAAM,WAAW,YAAY;CAE7B,IACE,mBAAmB,WAAW,QAAQ,KACtC,mBAAmB,YAAY,QAAQ,GAEvC,OAAO;EACL,YAAY;EACZ,QAAQ;EACR;EACA;EACA;CACF;CAGF,IAAI,CAAC,0BAA0B,WAAW,QAAQ,GAChD,OAAO;EACL,YAAY;EACZ,QAAQ;EACR;EACA;EACA;CACF;CAGF,IAAI,gBAAgB,UAClB,OAAO;EACL,YAAY;EACZ,QAAQ;EACR;EACA;EACA;CACF;CAGF,IAAI,uBAAuB,gBAAgB,qBACzC,OAAO;EACL,YAAY;EACZ,QAAQ;EACR;EACA;EACA;CACF;CAGF,OAAO;EACL,YAAY;EACZ,QAAQ;EACR;EACA;EACA;CACF;AACF;AAEA,SAAgB,gCACd,YACe;CACf,MAAM,SAAS,eAAe,UAAU;CACxC,IAAI,CAAC,QACH,OAAO;CAET,IAAI,CAAC,wBAAwB,OAAO,QAAQ,GAC1C,OAAO;CAET,IAAI,CAAC,OAAO,SAAS,WAAW,UAAU,GACxC,OAAO;CAGT,MAAM,UAAU,IAAI,IAAI,OAAO,SAAS,CAAC;CACzC,QAAQ,WAAW,QAAQ,OAAO,SAAS,MAAM,CAAiB;CAClE,QAAQ,WAAW;CACnB,QAAQ,SAAS;CACjB,QAAQ,OAAO;CACf,OAAO,iBAAiB,QAAQ,SAAS,CAAC;AAC5C;AAEA,SAAS,kBAAkB,aAAiC;CAC1D,IAAI,CAAC,YAAY,SAAS,WAAW,OAAO,GAC1C,OAAO;CAGT,MAAM,aAAa,IAAI,IAAI,YAAY,SAAS,CAAC;CACjD,WAAW,WAAW,WAAW,YAAY,SAAS,MAAM,CAAc;CAC1E,OAAO,WAAW;AACpB;AAEA,SAAS,eAAe,OAA2B;CACjD,IAAI;EACF,OAAO,IAAI,IAAI,KAAK;CACtB,QAAQ;EACN,OAAO;CACT;AACF;AAEA,SAAS,0BAA0B,UAA2B;CAC5D,OAAO,aAAa,YAAY,aAAa;AAC/C;AAEA,SAAS,wBAAwB,UAA2B;CAC1D,OAAO,aAAa,WAAW,aAAa;AAC9C;;;ACtIA,SAAgB,uCAAuC,OAI5B;CACzB,MAAM,YACJ,sBAAsB,MAAM,SAAS,KAAK,OAAO,WAAW;CAC9D,MAAM,gCAAgC,sBACpC,MAAM,6BACR;CACA,MAAM,YAAY,sBAAsB,MAAM,gBAAgB,SAAS;CAEvE,OAAO;EACL,cAAc;GACZ;GACA,mBAAmB,MAAM,gBAAgB;GACzC,aAAa,MAAM,gBAAgB;GACnC,eAAe,MAAM,gBAAgB;GACrC,aAAa,MAAM,gBAAgB;GACnC,aAAa,MAAM,gBAAgB;GACnC,GAAI,YAAY,EAAE,UAAU,IAAI,CAAC;EACnC;EACA,GAAI,gCAAgC,EAAE,8BAA8B,IAAI,CAAC;CAC3E;AACF;AAEA,SAAgB,+CAA+C,OAGpC;CACzB,MAAM,YACJ,sBAAsB,MAAM,SAAS,KAAK,OAAO,WAAW;CAC9D,MAAM,gBAAgB,sBACpB,MAAM,gBAAgB,aACxB;CACA,MAAM,cAAc,sBAAsB,MAAM,gBAAgB,WAAW;CAC3E,MAAM,YAAY,sBAAsB,MAAM,gBAAgB,SAAS;CACvE,MAAM,gCAAgC,sBACpC,MAAM,gBAAgB,6BACxB;CACA,MAAM,cACJ,MAAM,gBAAgB,gBACrB,MAAM,gBAAgB,SAAS,WAChC,MAAM,gBAAgB,SAAS,UAC3B,MAAM,gBAAgB,OACtB;CAEN,OAAO;EACL,cAAc;GACZ;GACA,mBAAmB,MAAM,gBAAgB;GACzC;GACA,GAAI,gBAAgB,EAAE,cAAc,IAAI,CAAC;GACzC,aAAa,MAAM,gBAAgB;GACnC,GAAI,cAAc,EAAE,YAAY,IAAI,CAAC;GACrC,GAAI,YAAY,EAAE,UAAU,IAAI,CAAC;EACnC;EACA,GAAI,gCAAgC,EAAE,8BAA8B,IAAI,CAAC;CAC3E;AACF;AAEA,SAAS,sBAAsB,OAA+B;CAC5D,MAAM,aAAa,OAAO,SAAS,EAAE,CAAC,CAAC,KAAK;CAC5C,OAAO,WAAW,SAAS,IAAI,aAAa;AAC9C;;;ACzDA,MAAM,qBAAqB;AAC3B,MAAM,uBAAuB;AA0C7B,IAAa,6BAAb,cAAgD,MAAM;CACpD;CACA;CACA;CACA;CACA;CAEA,YAAY,OAMT;EACD,MACE,wEAAwE,MAAM,OAAO,GACvF;EACA,KAAK,OAAO;EACZ,KAAK,WAAW,MAAM;EACtB,KAAK,sBAAsB,MAAM;EACjC,KAAK,SAAS,MAAM;EACpB,KAAK,cAAc,MAAM;EACzB,KAAK,oBAAoB,MAAM;CACjC;AACF;AAEA,eAAsB,wBACpB,OACiC;CACjC,MAAM,UAAkC,CAAC;CACzC,MAAM,iBAAiB,SAAS,KAAK;CACrC,OAAO;AACT;AAEA,eAAsB,2CACpB,OACiC;CACjC,MAAM,UAAU,mCAAmC,KAAK;CACxD,MAAM,iBAAiB,SAAS,KAAK;CACrC,OAAO;AACT;AAEA,eAAsB,2CAA2C,OAM7B;CAClC,OAAO,MAAM,2CAA2C;EACtD,gBAAgB,uCAAuC;GACrD,iBAAiB,MAAM;GACvB,+BAA+B,MAAM;EACvC,CAAC;EACD,YAAY,MAAM;EAClB,GAAI,MAAM,gBAAgB,KAAA,IACtB,CAAC,IACD,EAAE,aAAa,MAAM,YAAY;EACrC,GAAI,MAAM,kBAAkB,KAAA,IACxB,CAAC,IACD,EAAE,eAAe,MAAM,cAAc;CAC3C,CAAC;AACH;AAEA,eAAsB,mDAAmD,OAKrC;CAClC,OAAO,MAAM,2CAA2C;EACtD,gBAAgB,+CAA+C,EAC7D,iBAAiB,MAAM,gBACzB,CAAC;EACD,YAAY,MAAM;EAClB,GAAI,MAAM,gBAAgB,KAAA,IACtB,CAAC,IACD,EAAE,aAAa,MAAM,YAAY;EACrC,GAAI,MAAM,kBAAkB,KAAA,IACxB,CAAC,IACD,EAAE,eAAe,MAAM,cAAc;CAC3C,CAAC;AACH;AAeA,SAAgB,2BAA2B,OAGnB;CACtB,MAAM,gBAAgB,gCAAgC;EACpD,SAAS,MAAM;EACf,YAAY,MAAM;CACpB,CAAC;CACD,MAAM,QAAQ,qBAAqB,MAAM,OAAO;CAChD,IAAI,CAAC,OACH,OAAO;EACL,QAAQ;EACR,QAAQ;EACR,aAAa,cAAc;EAC3B,UAAU,cAAc;EACxB,qBAAqB,cAAc;CACrC;CAEF,IAAI,CAAC,cAAc,YACjB,OAAO;EACL,QAAQ;EACR,QAAQ,cAAc;EACtB,aAAa,cAAc;EAC3B,UAAU,cAAc;EACxB,qBAAqB,cAAc;CACrC;CAEF,MAAM,eAAe,2BAA2B,MAAM,OAAO;CAC7D,IAAI,cACF,OAAO;EACL,QAAQ;EACR,QAAQ;EACR,aAAa,cAAc;EAC3B,UAAU,cAAc;EACxB,qBAAqB,cAAc;CACrC;CAEF,OAAO;EACL,QAAQ;EACR;EACA,WAAW,mBAAmB,MAAM,QAAQ,SAAS;CACvD;AACF;AAEA,SAAgB,2BAA2B,OAGgB;CACzD,MAAM,aAAa,2BAA2B,KAAK;CACnD,IAAI,WAAW,WAAW,WACxB,MAAM,iCAAiC,UAAU;CAEnD,OAAO;AACT;AAEA,eAAe,iBACb,SACA,OACe;CACf,MAAM,UAAU,MAAM,6BAA6B,KAAK;CACxD,IAAI,YAAY,MAGd;CAGF,IAAI;CACJ,IAAI;EACF,aAAa,2BAA2B;GACtC;GACA,YAAY,MAAM;EACpB,CAAC;CACH,SAAS,OAAO;EACd,IAAI,iBAAiB,4BACnB,iCAAiC,KAAK;EAExC,MAAM;CACR;CACA,QAAQ,wBAAwB,GAAG,WAAW,UAAU,GAAG,WAAW;AACxE;AAEA,SAAS,iCACP,OACM;CACN,QAAQ,MAAM,+CAA+C;EAC3D,UAAU,MAAM;EAChB,qBAAqB,MAAM;EAC3B,QAAQ,MAAM;EACd,aAAa,MAAM;CACrB,CAAC;AACH;AAEA,eAAe,6BACb,OACmC;CACnC,IAAI,MAAM,gBAAgB,KAAA,GACxB,OAAO,MAAM;CAGf,MAAM,eAAe,MAAM,oBAAoB,EAAE,gBAAgB,KAAK,CAAC;CACvE,IAAI,aAAa,UAAU,WACzB,OAAO;CAET,IAAI,aAAa,UAAU,WAAW,aAAa,YAAY,MAAM;EACnE,MAAM,QAAQ,IAAI,2BAA2B;GAC3C,UAAU;GACV,qBAAqB;GACrB,QACE,aAAa,eACZ,aAAa,UAAU,YACpB,oBACA;GACN,aAAa,iBAAiB,MAAM,UAAU;EAChD,CAAC;EACD,iCAAiC,KAAK;EACtC,MAAM;CACR;CAEA,OAAO,aAAa;AACtB;AAEA,SAAS,iCACP,YAC4B;CAC5B,OAAO,IAAI,2BAA2B;EACpC,UAAU,WAAW;EACrB,qBAAqB,WAAW;EAChC,QAAQ,WAAW;EACnB,aAAa,WAAW;EACxB,mBAAmB;CACrB,CAAC;AACH;AAEA,SAAS,iBAAiB,YAAmC;CAC3D,IAAI;EACF,OAAO,IAAI,IAAI,UAAU,CAAC,CAAC,QAAQ;CACrC,QAAQ;EACN,OAAO;CACT;AACF;AAEA,SAAS,qBAAqB,SAAoC;CAChE,OAAO,OAAO,QAAQ,eAAe,EAAE,CAAC,CAAC,KAAK;AAChD;AAEA,SAAS,mBAAmB,WAAuC;CACjE,MAAM,aAAa,OAAO,aAAa,EAAE,CAAC,CAAC,KAAK;CAChD,OAAO,WAAW,SAAS,IAAI,aAAa;AAC9C;AAEA,SAAS,2BACP,SACqD;CACrD,MAAM,cAAc,oCAAoC,QAAQ,SAAS;CACzE,IAAI,YAAY,WAAW,WACzB,OAAO;CAET,OAAO,YAAY,WAAW,YAAY,oBAAoB;AAChE;AAEA,SAAgB,4BACd,SACA,YACS;CACT,OACE,2BAA2B;EACzB;EACA;CACF,CAAC,CAAC,CAAC,WAAW;AAElB;;;ACrUA,MAAM,gCAAgC;AAEtC,SAAgB,6BAA6B,UAA2B;CACtE,IAAI,uBAAuB,QAAQ,GACjC,OAAO,2BAA2B,QAAQ;CAG5C,MAAM,UAAU,OAAO,SACrB,OAAO,QAAQ,IAAI,kCAAkC,EAAE,GACvD,EACF;CACA,IAAI,uBAAuB,OAAO,GAChC,OAAO,2BAA2B,OAAO;CAG3C,OAAO;AACT;AAEA,SAAgBA,+CAAqD;CACnE,OAAO,6BAA6B,KAAA,CAAS;AAC/C;AASA,SAAS,2BAA2B,OAAuB;CAEzD,OAAO,KAAK,IACV,8BACA,KAAK,IAAI,8BAHQ,KAAK,MAAM,KAGoB,CAAC,CACnD;AACF;AAEA,SAAS,uBAAuB,OAAiC;CAC/D,OAAO,OAAO,UAAU,YAAY,OAAO,SAAS,KAAK,KAAK,QAAQ;AACxE;;;ACzCA,eAAsB,6BAA6B,OAK7B;CACpB,MAAM,YAAY,6BAA6B,MAAM,SAAS;CAC9D,MAAM,gBAAgB,YAAY,QAAQ,SAAS;CACnD,MAAM,WAAW,oBAAoB,MAAM,MAAM,QAAQ,aAAa;CAEtE,IAAI;EACF,IAAI;GACF,OAAO,MAAM,MAAM,MAAM,KAAK;IAC5B,GAAG,MAAM;IACT,QAAQ,SAAS;GACnB,CAAC;EACH,SAAS,OAAO;GAKd,IACE,cAAc,WACd,SAAS,OAAO,WAChB,CAAC,8BAA8B,KAAK,GAEpC,MAAM;GAER,OAAO,MAAM,MAAM,MAAM,KAAK;IAC5B,GAAG,MAAM;IACT,QAAQ,SAAS;GACnB,CAAC;EACH;CACF,SAAS,OAAO;EACd,IAAI,cAAc,SAChB,MAAM,+BAA+B;GACnC,WAAW,MAAM;GACjB;GACA,OAAO;EACT,CAAC;EAEH,IAAI,8BAA8B,KAAK,GACrC,MAAM,+BAA+B;GACnC,WAAW,MAAM;GACjB,KAAK,MAAM;GACX,OAAO;EACT,CAAC;EAEH,MAAM;CACR,UAAU;EACR,SAAS,QAAQ;CACnB;AACF;AAEA,SAAgB,6CAAqD;CACnE,OAAOC,6CAA8C;AACvD;AAEA,SAAS,+BAA+B,OAI9B;CACR,MAAM,QAAQ,IAAI,MAChB,GAAG,MAAM,UAAU,2BAA2B,MAAM,UAAU,KAC9D,EAAE,OAAO,MAAM,MAAM,CACvB;CACA,MAAM,OAAO;CACb,OAAO;AACT;AAEA,SAAS,+BAA+B,OAI9B;CACR,MAAM,QAAQ,IAAI,MAChB,GAAG,MAAM,UAAU,2BAA2B,sBAAsB,MAAM,GAAG,EAAE,IAAI,eAAe,MAAM,KAAK,EAAE,IAC/G,EAAE,OAAO,MAAM,MAAM,CACvB;CACA,MAAM,OAAO;CACb,OAAO;AACT;AAEA,SAAS,oBACP,QACA,SAC8C;CAC9C,IAAI,CAAC,QACH,OAAO;EACL,QAAQ;EACR,eAAe,KAAA;CACjB;CAGF,IAAI,OAAO,WAAW,QAAQ,SAAS;EACrC,MAAM,aAAa,IAAI,gBAAgB;EACvC,WAAW,MAAM;EACjB,OAAO;GACL,QAAQ,WAAW;GACnB,eAAe,KAAA;EACjB;CACF;CAEA,MAAM,aAAa,IAAI,gBAAgB;CACvC,MAAM,cAAc;EAClB,WAAW,MAAM;CACnB;CAEA,OAAO,iBAAiB,SAAS,OAAO,EAAE,MAAM,KAAK,CAAC;CACtD,QAAQ,iBAAiB,SAAS,OAAO,EAAE,MAAM,KAAK,CAAC;CAEvD,OAAO;EACL,QAAQ,WAAW;EACnB,eAAe;GACb,OAAO,oBAAoB,SAAS,KAAK;GACzC,QAAQ,oBAAoB,SAAS,KAAK;EAC5C;CACF;AACF;AAEA,SAAS,sBAAsB,KAAqB;CAClD,IAAI;EACF,OAAO,IAAI,IAAI,GAAG,CAAC,CAAC;CACtB,QAAQ;EACN,OAAO;CACT;AACF;AAEA,SAAS,eAAe,OAAwB;CAC9C,IAAI,iBAAiB,OAAO;EAC1B,MAAM,UAAU,MAAM,QAAQ,KAAK;EACnC,OAAO,QAAQ,SAAS,IAAI,UAAU;CACxC;CACA,MAAM,UAAU,OAAO,SAAS,EAAE,CAAC,CAAC,KAAK;CACzC,OAAO,QAAQ,SAAS,IAAI,UAAU;AACxC;AAEA,SAAS,8BAA8B,OAAyB;CAC9D,IAAI,iBAAiB,WACnB,OAAO;CAET,IACE,OAAO,UAAU,YACjB,UAAU,QACV,UAAU,SACV,OAAO,MAAM,SAAS,YACtB,MAAM,KAAK,WAAW,UAAU,GAEhC,OAAO;CAET,MAAM,UAAU,eAAe,KAAK,CAAC,CAAC,YAAY;CAClD,OACE,QAAQ,SAAS,cAAc,KAC/B,QAAQ,SAAS,iBAAiB,KAClC,QAAQ,SAAS,wBAAwB,KACzC,QAAQ,SAAS,yCAAyC;AAE9D;;;ACxJA,SAAgB,6BACd,SACA,UAGI,CAAC,GACwB;CAC7B,OAAO,wBAAwB;EAC7B;EACA,WAAW,OAAO,YAChB,MAAM,6BAA6B;GACjC,KAAK,QAAQ;GACb,WAAW,QAAQ;GACnB,MAAM,QAAQ;GACd,WAAW,QAAQ;EACrB,CAAC;EACH,gBAAgB,OAAO,EAAE,iBAAiB;GACxC,MAAM,UAAU,MAAM,wBAAwB,EAC5C,WACF,CAAC;GACD,IAAI,QAAQ,gBACV,QAAQ,6CACN,QAAQ;GAEZ,QAAQ,wBAAwB,OAAO;GACvC,OAAO;EACT;EACA,0BAA0B,OAAO,EAAE,gBAAgB,oBACjD,mCAAmC;GACjC;GACA,GAAI,kBAAkB,KAAA,IAAY,CAAC,IAAI,EAAE,cAAc;EACzD,CAAC;CACL,CAAC;AACH"}
|
|
1
|
+
{"version":3,"file":"api-client-foundation-C0Zq2voT.js","names":["resolveSpaceRequestTimeoutMsForDiagnostics","resolveSpaceRequestTimeoutMsForCliDiagnostics"],"sources":["../src/config/auth-request-compatibility.ts","../src/config/openmeld-request-context.ts","../src/config/request-headers.ts","../src/space/request-timeout.ts","../src/space/fetch-with-timeout.ts","../src/space/api-client-foundation.ts"],"sourcesContent":["import { normalizeBaseUrl } from \"../protocol/urls\";\nimport type { StoredAuthSession } from \"./auth-session\";\nimport { isLoopbackHostname } from \"./loopback-hostname\";\n\nexport type AuthRequestCompatibilityReason =\n | \"invalid_request_url\"\n | \"invalid_auth_url\"\n | \"insecure_transport\"\n | \"host_mismatch\"\n | \"loopback\"\n | \"same_host\"\n | \"gateway_sibling\";\n\nexport type AuthRequestCompatibility = {\n compatible: boolean;\n reason: AuthRequestCompatibilityReason;\n requestHost: string | null;\n authHost: string | null;\n expectedGatewayHost: string | null;\n};\n\nexport function resolveAuthRequestCompatibility(input: {\n session: StoredAuthSession;\n requestUrl: string;\n}): AuthRequestCompatibility {\n const requestUrl = parseUrlOrNull(input.requestUrl);\n if (!requestUrl) {\n return {\n compatible: false,\n reason: \"invalid_request_url\",\n requestHost: null,\n authHost: null,\n expectedGatewayHost: null,\n };\n }\n\n const authBaseUrl = parseUrlOrNull(input.session.authBaseUrl);\n if (!authBaseUrl) {\n return {\n compatible: false,\n reason: \"invalid_auth_url\",\n requestHost: requestUrl.host,\n authHost: null,\n expectedGatewayHost: null,\n };\n }\n\n const expectedGatewayHost = deriveGatewayHost(authBaseUrl);\n const requestHost = requestUrl.host;\n const authHost = authBaseUrl.host;\n\n if (\n isLoopbackHostname(requestUrl.hostname) &&\n isLoopbackHostname(authBaseUrl.hostname)\n ) {\n return {\n compatible: true,\n reason: \"loopback\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n }\n\n if (!isSecureTransportProtocol(requestUrl.protocol)) {\n return {\n compatible: false,\n reason: \"insecure_transport\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n }\n\n if (requestHost === authHost) {\n return {\n compatible: true,\n reason: \"same_host\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n }\n\n if (expectedGatewayHost && requestHost === expectedGatewayHost) {\n return {\n compatible: true,\n reason: \"gateway_sibling\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n }\n\n return {\n compatible: false,\n reason: \"host_mismatch\",\n requestHost,\n authHost,\n expectedGatewayHost,\n };\n}\n\nexport function deriveAuthBaseUrlFromGatewayUrl(\n gatewayUrl: string\n): string | null {\n const parsed = parseUrlOrNull(gatewayUrl);\n if (!parsed) {\n return null;\n }\n if (!isHttpTransportProtocol(parsed.protocol)) {\n return null;\n }\n if (!parsed.hostname.startsWith(\"gateway.\")) {\n return null;\n }\n\n const authUrl = new URL(parsed.toString());\n authUrl.hostname = `auth.${parsed.hostname.slice(\"gateway.\".length)}`;\n authUrl.pathname = \"/\";\n authUrl.search = \"\";\n authUrl.hash = \"\";\n return normalizeBaseUrl(authUrl.toString());\n}\n\nfunction deriveGatewayHost(authBaseUrl: URL): string | null {\n if (!authBaseUrl.hostname.startsWith(\"auth.\")) {\n return null;\n }\n\n const gatewayUrl = new URL(authBaseUrl.toString());\n gatewayUrl.hostname = `gateway.${authBaseUrl.hostname.slice(\"auth.\".length)}`;\n return gatewayUrl.host;\n}\n\nfunction parseUrlOrNull(value: string): URL | null {\n try {\n return new URL(value);\n } catch {\n return null;\n }\n}\n\nfunction isSecureTransportProtocol(protocol: string): boolean {\n return protocol === \"https:\" || protocol === \"wss:\";\n}\n\nfunction isHttpTransportProtocol(protocol: string): boolean {\n return protocol === \"http:\" || protocol === \"https:\";\n}\n","import crypto from \"node:crypto\";\nimport type { OpenMeldRequestContext } from \"@openmeld/schemas/types\";\nimport type { OpenMeldProfile } from \"./openmeld-profiles-api\";\n\nexport type OpenMeldRequestContextProfileIdentity = {\n openMeldProfileId: string;\n profileKind?: \"human\" | \"agent\" | \"system\";\n kind?: \"human\" | \"agent\";\n profileHandle?: string;\n profileName: string;\n ownerUserId?: string;\n ownerName?: string;\n agentControllerConversationId?: string;\n};\n\nexport function buildOpenMeldRequestContextFromProfile(input: {\n openMeldProfile: OpenMeldProfile;\n requestId?: string;\n agentControllerConversationId?: string;\n}): OpenMeldRequestContext {\n const requestId =\n normalizeOptionalText(input.requestId) ?? crypto.randomUUID();\n const agentControllerConversationId = normalizeOptionalText(\n input.agentControllerConversationId\n );\n const ownerName = normalizeOptionalText(input.openMeldProfile.ownerName);\n\n return {\n actorContext: {\n requestId,\n openMeldProfileId: input.openMeldProfile.openMeldProfileId,\n profileKind: input.openMeldProfile.profileKind,\n profileHandle: input.openMeldProfile.profileHandle,\n profileName: input.openMeldProfile.profileName,\n ownerUserId: input.openMeldProfile.ownerUserId,\n ...(ownerName ? { ownerName } : {}),\n },\n ...(agentControllerConversationId ? { agentControllerConversationId } : {}),\n };\n}\n\nexport function buildOpenMeldRequestContextFromProfileIdentity(input: {\n profileIdentity: OpenMeldRequestContextProfileIdentity;\n requestId?: string;\n}): OpenMeldRequestContext {\n const requestId =\n normalizeOptionalText(input.requestId) ?? crypto.randomUUID();\n const profileHandle = normalizeOptionalText(\n input.profileIdentity.profileHandle\n );\n const ownerUserId = normalizeOptionalText(input.profileIdentity.ownerUserId);\n const ownerName = normalizeOptionalText(input.profileIdentity.ownerName);\n const agentControllerConversationId = normalizeOptionalText(\n input.profileIdentity.agentControllerConversationId\n );\n const profileKind =\n input.profileIdentity.profileKind ??\n (input.profileIdentity.kind === \"human\" ||\n input.profileIdentity.kind === \"agent\"\n ? input.profileIdentity.kind\n : \"system\");\n\n return {\n actorContext: {\n requestId,\n openMeldProfileId: input.profileIdentity.openMeldProfileId,\n profileKind,\n ...(profileHandle ? { profileHandle } : {}),\n profileName: input.profileIdentity.profileName,\n ...(ownerUserId ? { ownerUserId } : {}),\n ...(ownerName ? { ownerName } : {}),\n },\n ...(agentControllerConversationId ? { agentControllerConversationId } : {}),\n };\n}\n\nfunction normalizeOptionalText(value: unknown): string | null {\n const normalized = String(value ?? \"\").trim();\n return normalized.length > 0 ? normalized : null;\n}\n","import {\n buildOpenMeldRequestContextHeaders,\n type OpenMeldRequestContextHeadersInput,\n} from \"@openmeld/gateway-contract\";\nimport type { OpenMeldRequestContext } from \"@openmeld/schemas/types\";\nimport {\n type AuthRequestCompatibilityReason,\n resolveAuthRequestCompatibility,\n} from \"./auth-request-compatibility\";\nimport {\n type AuthSessionStateReasonCode,\n getAuthSessionState,\n type StoredAuthSession,\n} from \"./auth-session\";\nimport { resolveAuthSessionExpiryEligibility } from \"./auth-session-expiry\";\nimport type { OpenMeldProfile } from \"./openmeld-profiles-api\";\nimport {\n buildOpenMeldRequestContextFromProfile,\n buildOpenMeldRequestContextFromProfileIdentity,\n type OpenMeldRequestContextProfileIdentity,\n} from \"./openmeld-request-context\";\n\nconst DEFAULT_TOKEN_TYPE = \"Bearer\";\nconst AUTHORIZATION_HEADER = \"Authorization\";\n\ntype RequestAuthHeadersInput = {\n authSession?: StoredAuthSession | null;\n requestUrl: string;\n};\n\ntype OpenMeldRequestContextHeadersWithAuthInput =\n OpenMeldRequestContextHeadersInput & {\n authSession?: StoredAuthSession | null;\n requestUrl: string;\n };\n\nexport type AuthTokenAttachment =\n | {\n status: \"attachable\";\n token: string;\n tokenType: string;\n }\n | {\n status: \"dropped\";\n reason:\n | \"empty_token\"\n | \"session_expired\"\n | \"session_expiry_invalid\"\n | AuthRequestCompatibilityReason;\n requestHost: string | null;\n authHost: string | null;\n expectedGatewayHost: string | null;\n };\n\nexport type DroppedAuthTokenAttachment = Extract<\n AuthTokenAttachment,\n { status: \"dropped\" }\n>;\n\nexport type AuthRequestCredentialFailureReason =\n | DroppedAuthTokenAttachment[\"reason\"]\n | AuthSessionStateReasonCode\n | \"session_invalid\"\n | \"session_revoked\";\n\nexport class AuthRequestCredentialError extends Error {\n readonly authHost: string | null;\n readonly expectedGatewayHost: string | null;\n readonly reason: AuthRequestCredentialFailureReason;\n readonly requestHost: string | null;\n readonly droppedAttachment?: DroppedAuthTokenAttachment;\n\n constructor(input: {\n authHost: string | null;\n expectedGatewayHost: string | null;\n reason: AuthRequestCredentialFailureReason;\n requestHost: string | null;\n droppedAttachment?: DroppedAuthTokenAttachment;\n }) {\n super(\n `OpenMeld refused to send a request with unusable stored credentials (${input.reason}).`\n );\n this.name = \"AuthRequestCredentialError\";\n this.authHost = input.authHost;\n this.expectedGatewayHost = input.expectedGatewayHost;\n this.reason = input.reason;\n this.requestHost = input.requestHost;\n this.droppedAttachment = input.droppedAttachment;\n }\n}\n\nexport async function buildRequestAuthHeaders(\n input: RequestAuthHeadersInput\n): Promise<Record<string, string>> {\n const headers: Record<string, string> = {};\n await attachAuthHeader(headers, input);\n return headers;\n}\n\nexport async function buildOpenMeldRequestContextHeadersWithAuth(\n input: OpenMeldRequestContextHeadersWithAuthInput\n): Promise<Record<string, string>> {\n const headers = buildOpenMeldRequestContextHeaders(input);\n await attachAuthHeader(headers, input);\n return headers;\n}\n\nexport async function buildOpenMeldProfileRequestHeadersWithAuth(input: {\n openMeldProfile: OpenMeldProfile;\n requestUrl: string;\n authSession?: StoredAuthSession | null;\n agentControllerConversationId?: string;\n spacePassword?: string;\n}): Promise<Record<string, string>> {\n return await buildOpenMeldRequestContextHeadersWithAuth({\n requestContext: buildOpenMeldRequestContextFromProfile({\n openMeldProfile: input.openMeldProfile,\n agentControllerConversationId: input.agentControllerConversationId,\n }),\n requestUrl: input.requestUrl,\n ...(input.authSession === undefined\n ? {}\n : { authSession: input.authSession }),\n ...(input.spacePassword === undefined\n ? {}\n : { spacePassword: input.spacePassword }),\n });\n}\n\nexport async function buildOpenMeldProfileIdentityRequestHeadersWithAuth(input: {\n profileIdentity: OpenMeldRequestContextProfileIdentity;\n requestUrl: string;\n authSession?: StoredAuthSession | null;\n spacePassword?: string;\n}): Promise<Record<string, string>> {\n return await buildOpenMeldRequestContextHeadersWithAuth({\n requestContext: buildOpenMeldRequestContextFromProfileIdentity({\n profileIdentity: input.profileIdentity,\n }),\n requestUrl: input.requestUrl,\n ...(input.authSession === undefined\n ? {}\n : { authSession: input.authSession }),\n ...(input.spacePassword === undefined\n ? {}\n : { spacePassword: input.spacePassword }),\n });\n}\n\nexport function withSpacePassword(\n requestContext: OpenMeldRequestContext,\n spacePassword?: string\n): OpenMeldRequestContextHeadersInput {\n return {\n requestContext,\n ...(spacePassword === undefined ? {} : { spacePassword }),\n };\n}\n\n// One decision for \"can this stored session authenticate this request\", with\n// the drop reason preserved. Header building and the daemon stream connect\n// gate must share this so they cannot drift apart.\nexport function resolveAuthTokenAttachment(input: {\n session: StoredAuthSession;\n requestUrl: string;\n}): AuthTokenAttachment {\n const compatibility = resolveAuthRequestCompatibility({\n session: input.session,\n requestUrl: input.requestUrl,\n });\n const token = normalizeAccessToken(input.session);\n if (!token) {\n return {\n status: \"dropped\",\n reason: \"empty_token\",\n requestHost: compatibility.requestHost,\n authHost: compatibility.authHost,\n expectedGatewayHost: compatibility.expectedGatewayHost,\n };\n }\n if (!compatibility.compatible) {\n return {\n status: \"dropped\",\n reason: compatibility.reason,\n requestHost: compatibility.requestHost,\n authHost: compatibility.authHost,\n expectedGatewayHost: compatibility.expectedGatewayHost,\n };\n }\n const expiryReason = resolveSessionExpiryReason(input.session);\n if (expiryReason) {\n return {\n status: \"dropped\",\n reason: expiryReason,\n requestHost: compatibility.requestHost,\n authHost: compatibility.authHost,\n expectedGatewayHost: compatibility.expectedGatewayHost,\n };\n }\n return {\n status: \"attachable\",\n token,\n tokenType: normalizeTokenType(input.session.tokenType),\n };\n}\n\nexport function requireAuthTokenAttachment(input: {\n session: StoredAuthSession;\n requestUrl: string;\n}): Extract<AuthTokenAttachment, { status: \"attachable\" }> {\n const attachment = resolveAuthTokenAttachment(input);\n if (attachment.status === \"dropped\") {\n throw createAuthRequestCredentialError(attachment);\n }\n return attachment;\n}\n\nasync function attachAuthHeader(\n headers: Record<string, string>,\n input: RequestAuthHeadersInput\n): Promise<void> {\n const session = await resolveAuthSessionForHeaders(input);\n if (session === null) {\n // No stored credentials exist, so there is nothing to strip: the caller\n // is knowingly sending an unauthenticated request.\n return;\n }\n\n let attachment: Extract<AuthTokenAttachment, { status: \"attachable\" }>;\n try {\n attachment = requireAuthTokenAttachment({\n session,\n requestUrl: input.requestUrl,\n });\n } catch (error) {\n if (error instanceof AuthRequestCredentialError) {\n logRejectedAuthRequestCredential(error);\n }\n throw error;\n }\n headers[AUTHORIZATION_HEADER] = `${attachment.tokenType} ${attachment.token}`;\n}\n\nfunction logRejectedAuthRequestCredential(\n error: AuthRequestCredentialError\n): void {\n console.error(\"[openmeld.auth.request_credential_rejected]\", {\n authHost: error.authHost,\n expectedGatewayHost: error.expectedGatewayHost,\n reason: error.reason,\n requestHost: error.requestHost,\n });\n}\n\nasync function resolveAuthSessionForHeaders(\n input: RequestAuthHeadersInput\n): Promise<StoredAuthSession | null> {\n if (input.authSession !== undefined) {\n return input.authSession;\n }\n\n const sessionState = await getAuthSessionState({ refreshExpired: true });\n if (sessionState.state === \"missing\") {\n return null;\n }\n if (sessionState.state !== \"valid\" || sessionState.session === null) {\n const error = new AuthRequestCredentialError({\n authHost: null,\n expectedGatewayHost: null,\n reason:\n sessionState.reasonCode ??\n (sessionState.state === \"revoked\"\n ? \"session_revoked\"\n : \"session_invalid\"),\n requestHost: parseRequestHost(input.requestUrl),\n });\n logRejectedAuthRequestCredential(error);\n throw error;\n }\n\n return sessionState.session;\n}\n\nfunction createAuthRequestCredentialError(\n attachment: DroppedAuthTokenAttachment\n): AuthRequestCredentialError {\n return new AuthRequestCredentialError({\n authHost: attachment.authHost,\n expectedGatewayHost: attachment.expectedGatewayHost,\n reason: attachment.reason,\n requestHost: attachment.requestHost,\n droppedAttachment: attachment,\n });\n}\n\nfunction parseRequestHost(requestUrl: string): string | null {\n try {\n return new URL(requestUrl).host || null;\n } catch {\n return null;\n }\n}\n\nfunction normalizeAccessToken(session: StoredAuthSession): string {\n return String(session.accessToken ?? \"\").trim();\n}\n\nfunction normalizeTokenType(tokenType: string | undefined): string {\n const normalized = String(tokenType ?? \"\").trim();\n return normalized.length > 0 ? normalized : DEFAULT_TOKEN_TYPE;\n}\n\nfunction resolveSessionExpiryReason(\n session: StoredAuthSession\n): \"session_expired\" | \"session_expiry_invalid\" | null {\n const eligibility = resolveAuthSessionExpiryEligibility(session.expiresAt);\n if (eligibility.status === \"invalid\") {\n return \"session_expiry_invalid\";\n }\n return eligibility.status === \"expired\" ? \"session_expired\" : null;\n}\n\nexport function canAttachAuthTokenToRequest(\n session: StoredAuthSession,\n requestUrl: string\n): boolean {\n return (\n resolveAuthTokenAttachment({\n session,\n requestUrl,\n }).status === \"attachable\"\n );\n}\n","import {\n DEFAULT_SPACE_CONVERSATION_VALIDATE_TIMEOUT_MS,\n DEFAULT_SPACE_REQUEST_TIMEOUT_MS,\n MAX_SPACE_REQUEST_TIMEOUT_MS,\n MIN_SPACE_REQUEST_TIMEOUT_MS,\n} from \"../strategy-constants\";\n\nconst SPACE_REQUEST_TIMEOUT_ENV_KEY = \"OPENMELD_SPACE_REQUEST_TIMEOUT_MS\";\n\nexport function resolveSpaceRequestTimeoutMs(override?: number): number {\n if (isFinitePositiveNumber(override)) {\n return clampSpaceRequestTimeoutMs(override);\n }\n\n const fromEnv = Number.parseInt(\n String(process.env[SPACE_REQUEST_TIMEOUT_ENV_KEY] ?? \"\"),\n 10\n );\n if (isFinitePositiveNumber(fromEnv)) {\n return clampSpaceRequestTimeoutMs(fromEnv);\n }\n\n return DEFAULT_SPACE_REQUEST_TIMEOUT_MS;\n}\n\nexport function resolveSpaceRequestTimeoutMsForDiagnostics(): number {\n return resolveSpaceRequestTimeoutMs(undefined);\n}\n\nexport function resolveSpaceConversationValidateTimeoutMs(): number {\n return Math.max(\n resolveSpaceRequestTimeoutMs(undefined),\n DEFAULT_SPACE_CONVERSATION_VALIDATE_TIMEOUT_MS\n );\n}\n\nfunction clampSpaceRequestTimeoutMs(value: number): number {\n const normalized = Math.trunc(value);\n return Math.max(\n MIN_SPACE_REQUEST_TIMEOUT_MS,\n Math.min(MAX_SPACE_REQUEST_TIMEOUT_MS, normalized)\n );\n}\n\nfunction isFinitePositiveNumber(value: unknown): value is number {\n return typeof value === \"number\" && Number.isFinite(value) && value > 0;\n}\n","import {\n resolveSpaceRequestTimeoutMs,\n resolveSpaceRequestTimeoutMsForDiagnostics as resolveSpaceRequestTimeoutMsForCliDiagnostics,\n} from \"./request-timeout\";\n\nexport async function fetchSpaceRequestWithTimeout(input: {\n url: string;\n operation: string;\n init?: RequestInit;\n timeoutMs?: number;\n}): Promise<Response> {\n const timeoutMs = resolveSpaceRequestTimeoutMs(input.timeoutMs);\n const timeoutSignal = AbortSignal.timeout(timeoutMs);\n const composed = composeAbortSignals(input.init?.signal, timeoutSignal);\n\n try {\n try {\n return await fetch(input.url, {\n ...input.init,\n signal: composed.signal,\n });\n } catch (error) {\n // A keep-alive connection that a proxy silently dropped fails exactly\n // once and undici evicts it; the retry rides a fresh connection. This\n // is what keeps a long-lived service working behind flaky proxies\n // without asking users to touch their network config.\n if (\n timeoutSignal.aborted ||\n composed.signal.aborted ||\n !shouldWrapNetworkRequestError(error)\n ) {\n throw error;\n }\n return await fetch(input.url, {\n ...input.init,\n signal: composed.signal,\n });\n }\n } catch (error) {\n if (timeoutSignal.aborted) {\n throw createSpaceRequestTimeoutError({\n operation: input.operation,\n timeoutMs,\n cause: error,\n });\n }\n if (shouldWrapNetworkRequestError(error)) {\n throw createSpaceRequestNetworkError({\n operation: input.operation,\n url: input.url,\n cause: error,\n });\n }\n throw error;\n } finally {\n composed.cleanup();\n }\n}\n\nexport function resolveSpaceRequestTimeoutMsForDiagnostics(): number {\n return resolveSpaceRequestTimeoutMsForCliDiagnostics();\n}\n\nfunction createSpaceRequestTimeoutError(input: {\n operation: string;\n timeoutMs: number;\n cause: unknown;\n}): Error {\n const error = new Error(\n `${input.operation} request timed out after ${input.timeoutMs}ms`,\n { cause: input.cause }\n ) as Error & { code?: string };\n error.code = \"network.timeout\";\n return error;\n}\n\nfunction createSpaceRequestNetworkError(input: {\n operation: string;\n url: string;\n cause: unknown;\n}): Error {\n const error = new Error(\n `${input.operation} request could not reach ${describeRequestTarget(input.url)} (${toErrorMessage(input.cause)})`,\n { cause: input.cause }\n ) as Error & { code?: string };\n error.code = \"network.request_failed\";\n return error;\n}\n\nfunction composeAbortSignals(\n parent: AbortSignal | null | undefined,\n timeout: AbortSignal\n): { signal: AbortSignal; cleanup: () => void } {\n if (!parent) {\n return {\n signal: timeout,\n cleanup: () => undefined,\n };\n }\n\n if (parent.aborted || timeout.aborted) {\n const controller = new AbortController();\n controller.abort();\n return {\n signal: controller.signal,\n cleanup: () => undefined,\n };\n }\n\n const controller = new AbortController();\n const abort = () => {\n controller.abort();\n };\n\n parent.addEventListener(\"abort\", abort, { once: true });\n timeout.addEventListener(\"abort\", abort, { once: true });\n\n return {\n signal: controller.signal,\n cleanup: () => {\n parent.removeEventListener(\"abort\", abort);\n timeout.removeEventListener(\"abort\", abort);\n },\n };\n}\n\nfunction describeRequestTarget(url: string): string {\n try {\n return new URL(url).origin;\n } catch {\n return url;\n }\n}\n\nfunction toErrorMessage(error: unknown): string {\n if (error instanceof Error) {\n const message = error.message.trim();\n return message.length > 0 ? message : \"request failed\";\n }\n const message = String(error ?? \"\").trim();\n return message.length > 0 ? message : \"request failed\";\n}\n\nfunction shouldWrapNetworkRequestError(error: unknown): boolean {\n if (error instanceof TypeError) {\n return true;\n }\n if (\n typeof error === \"object\" &&\n error !== null &&\n \"code\" in error &&\n typeof error.code === \"string\" &&\n error.code.startsWith(\"ERR_SSL_\")\n ) {\n return true;\n }\n const message = toErrorMessage(error).toLowerCase();\n return (\n message.includes(\"fetch failed\") ||\n message.includes(\"failed to fetch\") ||\n message.includes(\"network request failed\") ||\n message.includes(\"ssl_decryption_failed_or_bad_record_mac\")\n );\n}\n","import {\n createOpenMeldApiClient,\n type OpenMeldApiClientFoundation,\n} from \"@openmeld/api-client\";\nimport {\n buildOpenMeldRequestContextHeaders,\n OPENMELD_HEADER_REQUESTED_ORGANIZATION_ID,\n} from \"@openmeld/gateway-contract\";\nimport { buildRequestAuthHeaders } from \"../config/request-headers\";\nimport { fetchSpaceRequestWithTimeout } from \"./fetch-with-timeout\";\n\nexport function createCliApiClientFoundation(\n baseUrl: string,\n options: {\n onAuthHeadersResolved?: (headers: Record<string, string>) => void;\n organizationId?: string;\n } = {}\n): OpenMeldApiClientFoundation {\n return createOpenMeldApiClient({\n baseUrl,\n transport: async (request) =>\n await fetchSpaceRequestWithTimeout({\n url: request.url,\n operation: request.operation,\n init: request.init,\n timeoutMs: request.timeoutMs,\n }),\n getAuthHeaders: async ({ requestUrl }) => {\n const headers = await buildRequestAuthHeaders({\n requestUrl,\n });\n if (options.organizationId) {\n headers[OPENMELD_HEADER_REQUESTED_ORGANIZATION_ID] =\n options.organizationId;\n }\n options.onAuthHeadersResolved?.(headers);\n return headers;\n },\n getRequestContextHeaders: async ({ requestContext, spacePassword }) =>\n buildOpenMeldRequestContextHeaders({\n requestContext,\n ...(spacePassword === undefined ? {} : { spacePassword }),\n }),\n });\n}\n"],"mappings":"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"}
|
|
@@ -4,17 +4,17 @@ import { _ as toSpaceWsUrl, a as toSpaceCreateUrl, d as toSpaceMembersUrl, f as
|
|
|
4
4
|
import { t as isLoopbackHostname } from "./loopback-hostname-DHQPKq8N.js";
|
|
5
5
|
import { A as formatLocalMachineIssueMessage, E as createBackgroundExecutionBlockedIssue, I as accountsDir, J as normalizeAccountKey, K as legacyAccountProfileSpacesDir, N as accountProfileSpaceCacheDir, Q as openMeldManagedBinaryPath, Y as normalizeOpenMeldProfileId, _ as resolveCliContextId, b as resolveOpenMeldLaneDescriptor, dt as resolveOpenMeldRootDir, j as OPENMELD_HOME_ENV_KEY, l as resolveOpenMeldOrphanedLockIssue, lt as resolveOpenMeldEnvPreset, r as isOpenMeldLockError, t as acquireLock, tt as openMeldRootDir, u as runWithHeldLock, ut as resolveOpenMeldPresetOwnedPathInput, w as assessLocalMachineFailure } from "./lock-VfUd0-tH.js";
|
|
6
6
|
import { _ as canonicalizeBuiltinAgentControllerRef, b as parseAgentControllerRef, d as resolveBuiltinAgentControllerConversationKind, l as buildAgentControllerConversationRef, v as normalizeBuiltinAgentControllerId, y as normalizeKnownBuiltinAgentControllerId } from "./controller-contract-CvjP4mYj.js";
|
|
7
|
-
import { $ as resolveCurrentReplyReadinessSnapshot, $i as emitDaemonLifecycleEvent, $n as resolveLocalRegistryAgentIdFromAgentControllerRef, $t as removeMissingProjectConnections, A as formatDaemonFailureContextText, Aa as CONTROLLED_SHUTDOWN_RESULT_ACK_TIMEOUT_MS, Ai as formatDaemonOwnerSummaryLabel, An as canManageRegistryAgentSkillTargets, Ao as createAuthenticationError, Ar as buildTaskResultEnvelope, At as resolveLocalRuntimeControllerSupport, B as buildDaemonServiceUpdateRequiredNextStep, Ba as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS, Bi as resolveDaemonRuntimeState, Bn as requestLocalDaemonShutdown, Bo as DAEMON_SERVICE_AUTO_HEAL_ANOMALIES, Br as buildAuthenticatedControlPlaneResponse, Bt as resolveConfiguredProfileWorkspacePathForAccount, C as ensureDaemonSystemServiceCommandFiles, Ca as normalizeText$2, Ci as resolveInstalledClaudeCodeLaunchCandidates, Cn as reconcileNewRunnableBuiltinAgentRegistrations, Cr as resolveDispatchQueueLogMeta, Ct as createRouteCatalogFromMutableState, D as resolvePreferredDaemonDeviceId, Da as CATALOG_SYNC_RETRY_INTERVAL_MS, Di as materializeCliLaunchCommand, Dn as setAgentRegistrationEnabled, Do as buildAuthenticationStatusLabel, Dr as resolveLatestScopedConversationExecutionState, Dt as buildRuntimeRouteTargets, E as resolveDaemonDeviceId, Ea as warnDaemonEvent, Ei as buildCliLaunchInvocation, En as resolveAgentTargetState, Er as resolveCompatibleConversationExecutionState, Et as syncDaemonRouteCatalogState, Fa as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS, Fi as summarizeDaemonOwnerSnapshot, Fn as resolveRegistryRuntimeAdapterCapabilitySnapshot, Fo as resolveAuthenticationReasonFromState, Fr as resolveConversationExecutionStateByLookupKey, Ft as ensureOpenMeldManagedProfileWorkspace, G as clearDaemonStartFailureState, Ga as clearDaemonServiceContract, Gn as sortAgentRegistrations, Go as classifyDaemonServiceWakeability, Gr as buildInformationProtectionPromptPlan, Gt as ProjectBindingOperationError, H as formatDaemonServiceUpdateRequiredMessage, Ha as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS, Hi as waitForDaemonSystemServiceToStop, Hn as normalizeAgentId, Ho as DAEMON_SERVICE_REPAIR_ANOMALIES, Hr as DEFAULT_TASK_LIFECYCLE_HEARTBEAT_INTERVAL_MS, I as buildDaemonServiceRefreshNextStep, Ia as DEFAULT_RECONNECT_DELAY_MS, Ii as clearDaemonRuntimeStateIfDefinitelyStopped, In as resolveRegistryRuntimeAdapterContractByAgentControllerRef, Io as buildDaemonServiceTargetSpec, Ir as seedLegacyAgentContext, J as buildDaemonServiceDependencyMeaning, Ja as upsertDaemonServiceContract, Ji as cleanupInactiveDaemonServiceBundles, Jn as resolveBuiltinAgentControllerDefinition, Jt as isProjectBound, K as writeDaemonStartFailureState, Ka as isDaemonServiceContractIdentityReusable, Ki as extractDaemonCommandEntryPath, Kn as repairBuiltinControllerInstall, Kr as buildWorkingLanguagePromptPlan, Kt as ProjectBindingStoreUpdateRequiredError, L as buildDaemonServiceRefreshPromptMessage, La as HEARTBEAT_RESPONSE_TIMEOUT_MS, Li as getEffectiveDaemonRuntimeStatus, Lo as resolveDaemonServiceAlignmentDecision, Lr as settleInflightTask, M as resolveDaemonStatusAttention, Ma as DAEMON_RUNTIME_CONTRACT_EPOCH, Mi as readCurrentDaemonOwnerSnapshot, Mn as resolveSkillsAgentRegistry, Mo as resolveAuthenticationGuidance, Mr as commitResolvedAgentContext, N as resolveDaemonStatusAuthenticationAttention, Na as DAEMON_STREAM_CONNECT_TIMEOUT_MS, Ni as resolveDaemonStopStrategy, Nn as listBuiltinAgentsRegistryEntries, No as resolveAuthenticationGuidanceFromError, Nr as loadLedgerState, Nt as resolveCurrentEffectiveProfileWorkingFolderRuntime, O as captureDaemonServiceEvidence, Oa as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS, Oi as inspectDaemonServiceInventory, On as updateAgentCustomTarget, Oo as buildCommandAuthenticationPromptMessage$1, Or as runRuntimeTask, Ot as readLocalEnabledControllers, P as resolveServiceReadiness, Pa as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS, Pi as resolveStoppedContractWriteBlockedReason, Pn as resolveRegistryOriginLaunchCommand, Pr as removeConversationExecutionState, Pt as resolveProfileWorkspaceRuntime, Q as resolveDaemonServiceDependencyDiagnostics, Qi as resolveDaemonBundleEntryPathFromState, Qn as isPnpmGlobalCommandPath, Qr as isAgentExecutionReadyOrConnecting, Qt as removeAgentActivityBindingsWhileDeliveryLocked, R as buildDaemonServiceRepairGuidance, Ra as MAX_RECONNECT_DELAY_MS, Ri as readCurrentDaemonRuntimeContext, Rn as LocalDaemonControlPlaneClientError, Ro as isVersionDowngrade, Rr as upsertConversationExecutionState, Rt as readProfileWorkspaceConfigForAccount, S as buildDaemonSystemServiceCommandSpec, Sa as normalizeOptionalText$21, Si as verifyCodexAppServerThread, Sn as readAgentRuntimeConfigHealth, So as clearAllSelectedOpenMeldProfileIds, Sr as resolveCatalogSyncIntervalMs, St as createMutableRouteCatalogState, T as ensureDaemonRuntimePaths, Ta as toErrorMessage$19, Ti as createUnsupportedProviderUsageLimits, Tn as removeAgentCustomTarget, Tr as resolveCompatibleAgentContextMatch, Tt as summarizeSkippedDaemonProfiles, U as buildDaemonServiceFreshnessPromptLines, Ua as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS, Ui as cleanupLegacySharedDaemonServiceState, Un as normalizeAgentIds, Uo as DAEMON_SERVICE_WAKEABILITY_ADVISORY_ANOMALIES, Ur as areAgentControllerInterfaceAccountsSame, V as formatDaemonServiceRefreshReliabilityMessage, Va as REGISTER_RESPONSE_TIMEOUT_MS, Vi as resolveDaemonServiceManagerForRuntimeState, Vn as sendLocalDaemonControlPlaneRequest, Vo as DAEMON_SERVICE_FULL_ALIGNMENT_ANOMALIES, Vr as buildAgentContextLookupKey, Vt as setCustomProfileWorkspace, W as resolveDaemonServiceFreshnessWarning, Wa as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS, Wi as listDaemonOwnedProcesses, Wn as parseAgentEnabledOption, Wo as classifyDaemonServiceRunStartability, Wr as buildAgentControllerRef, X as buildDaemonServiceDependencySummary, Xa as OPENMELD_VERSION, Xi as readDaemonActiveBundleState, Xn as isHomebrewCommandPath, Xt as listProjectConnectionsWithStatus, Y as buildDaemonServiceDependencyNextStep, Ya as resolveCurrentDaemonExpectedVersion, Yi as prepareDaemonServiceBundle, Yn as isBunGlobalCommandPath, Yr as createAuthorityOpenMeldServiceRuntimeId, Yt as listProjectBindings, Z as buildDaemonServiceDependencyTitle, Zi as resolveAlignedDaemonActiveBundleEntryPath, Zn as isNpmGlobalCommandPath, _ as isDaemonInventoryRunningAndStartReady$1, _a as asRecord, _i as resolveInstalledGrokBuildLaunchCandidates, _n as createRegistrationFromCatalogTarget, _r as MIN_HEARTBEAT_INTERVAL_MS, _t as normalizeOpenClawSpaceIdPrefix, a as resolveOpenMeldToolsMaintenanceProjection, aa as runDaemonServiceManagerAction, ar as resolveRouteRegistrationReconcileDecision, as as formatInlineOpenMeldCliCommands, at as REPLY_READINESS_COPY, b as waitForSystemServiceStartup$1, ba as normalizeHeartbeatIntervalMs, bi as resolveInstalledCodexLaunchCandidates, bn as listAgentTargetStates, bo as readDaemonCatalogSyncSignal, br as pruneStaleLeases, bt as writeDaemonRouteCatalogCache, ci as resolveSelectableCandidates, cn as withAgentActivityLocalStateLock, cr as normalizeDispatchPostMessageAction, ct as resolveReplyReadinessGuidanceSummaryCopy, d as scheduleDaemonServiceUpdate, di as createLocalAdapterEntries, dn as emitDriftDetectedEvidence, do as createOpenMeldAgentProfile, dr as createLocalTaskInterruptSender, ea as formatDaemonLifecycleOriginSummary, ei as parseAgentControllerRef$1, en as removeProjectConnection, er as normalizeDispatchThreadAction, es as resolveServiceUpdateUrgency, f as DaemonServiceLifecycleDrainTimeoutError, fi as parseOpenCodeGoUsageResponse, fn as emitReconcileCompletedEvidence, fo as createOpenMeldHumanProfile, fr as buildLocalServiceDiagnosticsPayload, ft as resolveGatewayChainRepairGuidance, g as uninstallDaemonServiceUpdateWorker, ga as DaemonServiceRunError, gi as probeGrokBuildAcpInterface, gn as addAgentCustomTarget, gr as MAX_HEARTBEAT_INTERVAL_MS, gs as resolveBuiltinAgentControllerBrand, gt as buildOpenClawSpaceSessionKey, ha as readDaemonRuntimeContractRepairReport, hi as GrokBuildAcpTransportError, hn as resolveAgentProfilePrimaryAgentControllerReport, ho as listOpenMeldProfiles, hr as ADAPTIVE_HEARTBEAT_JITTER_RATIO, hs as compareAgentControllerRefsForDisplay, ht as prepareProviderRuntime, i as readOpenMeldToolsMaintenancePolicy, ia as resolveRecentDaemonSignalStopCause, ir as isDaemonReconcileInProgressError, is as resolveAuthBaseUrl, j as resolveDaemonStatusSnapshot, ja as CONTROLLED_SHUTDOWN_SOCKET_CLOSE_TIMEOUT_MS, ji as hasActiveDaemonOwners, jo as extractAuthenticationPromptAction, jr as appendLedgerHistoryEntry, jt as syncProfileWorkspaceState, k as captureDaemonServiceEvidenceBestEffort, ka as CONTROLLED_SHUTDOWN_REQUEST_TIMEOUT_MS, ki as buildDaemonOwnerSnapshotFromObservedState, kn as updateAgentRegistrations, ko as buildHumanAuthenticationCard, kr as buildRuntimeWorkspaceFingerprint, kt as resolveLocalController, la as readLastDaemonServiceUpdate, li as resolveCatalogSyncSkippedProfilesLogState, lo as requireOpenMeldProfile, lr as createPendingAgentInteractionRegistry, ls as formatOpenMeldCliTextBlock, lt as resolveOpenClawDiagnosticsGuidance, m as ensureDaemonServiceMaintenanceInstalled, ma as ensureDaemonRuntimeContractState, mi as resolveInstalledOpenCodeLaunchCandidates, mo as getOpenMeldProfileCapabilities, mr as createInflightTaskControlRegistry, mt as resolveOpenClawLocalDiagnosticsValue, n as readLastOpenMeldToolsUpdateAttempt, na as readLatestDaemonLifecycleOriginEvent, ni as renderWorkingLanguagePrompt, nr as SPACE_ACTION_CONTEXT_GUIDANCE_LINES, ns as describeServerRequiredVersionUnavailableReason, o as writeOpenMeldToolsMaintenancePolicy, oa as runWithDaemonLifecycleCommandJournal, on as resolveLocalProjectConnectionForPath, or as createSerialAgentInteractionCallback, os as formatOpenMeldCliCommand, ot as formatSpaceMemberCommandRecoveryCopy, p as runDaemonServiceLifecycle, pi as forkOpenCodeServerSession, pn as emitReconcileStartedEvidence, pr as createLocalExecutionSlots, ps as resolveUserFacingCliEntryCommand, pt as resolveGatewayChainRetryGuidance, q as buildDaemonServiceDependencyDetails, qa as readDaemonServiceContract, qi as resolveDaemonBundleIdFromEntryPath, qn as EMPTY_AGENT_CONTROLLER_INTERFACE_CAPABILITIES, qo as compareSemver, qr as createAgentControllerInterfaceDisplayRows, qt as bindProject, r as readPendingOpenMeldToolsUpdateAttempt, rn as setDefaultProjectConnection, ro as resolveRuntimeContext, rr as SPACE_ACTION_TARGET_GUIDANCE_LINES, rs as resolveOpenMeldEnvironmentTarget, rt as formatReplyReadinessSummary, s as assessCliUpdate, sn as withAgentActivityDeliveryLock, so as resolveCurrentOpenMeldAccountContext, sr as buildDispatchReplyContextSummary, ss as formatOpenMeldCliCommands, st as resolveReplyReadinessAvailabilityReasonCopy, t as createOpenMeldToolsUpdateCoordinator, ta as readLatestDaemonLifecycleConnectionStateEvent, ti as renderInformationProtectionPrompt, tn as resolveProjectBindingForPath, tr as syncRuntimeEventToInflightTaskControlRegistry, ts as assessServerRequiredVersion, ua as readPendingDaemonServiceUpdate, ui as createLocalAdapterContainer, un as syncDeviceRuntimeStateProjection, uo as resolveOpenMeldProfileOrNull, ur as mergeOpenClawGatewayVisibility, us as formatProfileAwareOpenMeldCliCommand, ut as classifyGatewayChainFailure, v as isSystemServiceStartupTimeoutError, va as dirnamePath, vi as projectCodexUsageLimits, vn as listAgentCustomTargets, vr as applyAcceptedLeases, vt as slugifyOpenClawNamePart, w as buildLedgerPaths, wa as nowIsoString, wi as createUnavailableProviderUsageLimits, wr as resolveDispatchContinuityObservation, wt as loadDaemonRouteCatalog, x as writeDaemonServiceContract, xa as normalizeNonNegativeInteger$1, xi as forkCodexAppServerThread, xn as manageAgentRegistrationInstallation, xr as resolveAdaptiveHeartbeatIntervalMs, xt as resolveLocalServiceDemand, y as resolveSystemServiceStartupWaitMs, ya as emitRunLine, yi as resolveCodexTimeoutMs, yn as listAgentRegistrations, yo as assertAdditionalHumanProfileCreationEnabled, yr as applyIntervalJitterMs, yt as readDaemonRouteCatalogCache, z as buildDaemonServiceStatusReadOnlyDetail, za as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS, zi as readCurrentObservedDaemonRuntimeStatus, zr as withLedgerStateTransaction } from "./openmeld-tools-update-coordinator-CY2CSXlX.js";
|
|
8
|
-
import { $r as spaceMemberDirectoryEntrySchema, An as parseEnvelope$1, Ar as createCenterAgentRoutineResponseSchema, At as buildSpaceAttachmentDownloadPath, Bn as getSpaceUpdatesResponseSchema, Ci as toCompatibleSpaceAddressingRequestWireValue, Dn as DAEMON_STREAM_KEEPALIVE_PING, Dr as organizationComputersResponseSchema, Fr as resumeCenterAgentRoutineResponseSchema, Ft as createAccountSpaceIndexApi, Gr as localProjectControlDaemonFrameSchema, Hn as SPACE_DISPATCH_TRACE_PROMPT_PREVIEW_MAX_CHARS, In as OPENMELD_HEADER_REQUEST_ID, Ir as updateCenterAgentRoutineResponseSchema, It as createAgentActivityApi, Jr as postSpaceMembersResponseSchema, Kr as localProjectControlDiscoverProjectsResponseSchema, Kt as createFetchTransport, Ln as OPENMELD_HEADER_SPACE_ADDRESSING_VERSION, Lt as createAgentProfileBindingApi, Mn as parseServerErrorFrame$1, Mr as listCenterAgentRoutineRunsResponseSchema, Nn as resolveCustomMentionAliasOverride, Nr as listCenterAgentRoutinesResponseSchema, Or as submitFeedbackIssueRequestSchema, Pr as pauseCenterAgentRoutineResponseSchema, Qr as spaceMemberDirectoryAllowedRelationsSchema, Qt as createOrganizationApi, Rr as AGENT_ACTIVITY_PRESENCE_TTL_MAX_MS, Ur as agentActivitySnapshotResponseSchema, Vn as spaceEntryTargetSchema, Wr as localProjectControlConnectionSchema, Yr as removeSpaceMembersResponseSchema, Zn as submitAgentControllerTaskLifecycleEventItemSchema, Zr as spaceMemberAgentWakeAvailabilitySchema, Zt as createOpenMeldApiClient, _n as resolveAccountSpaceIndexGatewayHost, _r as organizationSkillReleaseSummarySchema, ai as agentActivitySessionInventoryResponseSchema, ar as OPENMELD_RUNTIME_CAPABILITIES_HEADER, bn as toStructuredApiClientFailure, br as organizationDirectoryResponseSchema, bt as buildProfileSpaceHistoryStatusPath, ci as archiveProjectResponseSchema, cn as createSpaceApi, cr as computerFileAccessPolicySchema, di as projectSchema, dr as resolveInitialSpaceAccessMode, ei as spaceMemberDirectorySchema, fi as updateProjectResponseSchema, fr as spaceCreatorSchema, hr as listOrganizationSkillsResponseSchema, ir as COMPUTER_FILE_ACCESS_RUNTIME_CAPABILITY, jn as parseIncoming$1, jr as deleteCenterAgentRoutineResponseSchema, kn as MAX_TEXT_LENGTH, kr as submitFeedbackIssueResponseSchema, li as createProjectResponseSchema, mr as getOrganizationSkillResponseSchema, n as OpenMeldApiClientInvalidResponseError, or as computerFileAccessDaemonFrameSchema, pi as centerAgentToolSpeakerSchema, pr as spaceMetaSchema, qr as leaveSpaceResponseSchema, rn as createProfileSpaceHistoryApi, rr as gatewayErrorEnvelopeSchema, si as observedLocalAgentSessionSchema, sn as createRuntimeReportingApi, sr as computerFileAccessPolicyInputSchema, t as OpenMeldApiClientHttpError, ti as spaceMemberKindSchema, ui as listProjectsResponseSchema, ur as organizationSpaceDirectoryWithMemberCountsResponseSchema, vn as resolveProfileSpaceHistoryGatewayHost, vr as organizationSkillSummarySchema, xt as buildProfileSpaceHistoryUpsertPath, zr as agentActivityEventSchema } from "./dist-
|
|
7
|
+
import { $ as resolveCurrentReplyReadinessSnapshot, $i as emitDaemonLifecycleEvent, $n as resolveLocalRegistryAgentIdFromAgentControllerRef, $t as removeMissingProjectConnections, A as formatDaemonFailureContextText, Aa as CONTROLLED_SHUTDOWN_RESULT_ACK_TIMEOUT_MS, Ai as formatDaemonOwnerSummaryLabel, An as canManageRegistryAgentSkillTargets, Ao as createAuthenticationError, Ar as buildTaskResultEnvelope, At as resolveLocalRuntimeControllerSupport, B as buildDaemonServiceUpdateRequiredNextStep, Ba as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS, Bi as resolveDaemonRuntimeState, Bn as requestLocalDaemonShutdown, Bo as DAEMON_SERVICE_AUTO_HEAL_ANOMALIES, Br as buildAuthenticatedControlPlaneResponse, Bt as resolveConfiguredProfileWorkspacePathForAccount, C as ensureDaemonSystemServiceCommandFiles, Ca as normalizeText$2, Ci as resolveInstalledClaudeCodeLaunchCandidates, Cn as reconcileNewRunnableBuiltinAgentRegistrations, Cr as resolveDispatchQueueLogMeta, Ct as createRouteCatalogFromMutableState, D as resolvePreferredDaemonDeviceId, Da as CATALOG_SYNC_RETRY_INTERVAL_MS, Di as materializeCliLaunchCommand, Dn as setAgentRegistrationEnabled, Do as buildAuthenticationStatusLabel, Dr as resolveLatestScopedConversationExecutionState, Dt as buildRuntimeRouteTargets, E as resolveDaemonDeviceId, Ea as warnDaemonEvent, Ei as buildCliLaunchInvocation, En as resolveAgentTargetState, Er as resolveCompatibleConversationExecutionState, Et as syncDaemonRouteCatalogState, Fa as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS, Fi as summarizeDaemonOwnerSnapshot, Fn as resolveRegistryRuntimeAdapterCapabilitySnapshot, Fo as resolveAuthenticationReasonFromState, Fr as resolveConversationExecutionStateByLookupKey, Ft as ensureOpenMeldManagedProfileWorkspace, G as clearDaemonStartFailureState, Ga as clearDaemonServiceContract, Gn as sortAgentRegistrations, Go as classifyDaemonServiceWakeability, Gr as buildInformationProtectionPromptPlan, Gt as ProjectBindingOperationError, H as formatDaemonServiceUpdateRequiredMessage, Ha as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS, Hi as waitForDaemonSystemServiceToStop, Hn as normalizeAgentId, Ho as DAEMON_SERVICE_REPAIR_ANOMALIES, Hr as DEFAULT_TASK_LIFECYCLE_HEARTBEAT_INTERVAL_MS, I as buildDaemonServiceRefreshNextStep, Ia as DEFAULT_RECONNECT_DELAY_MS, Ii as clearDaemonRuntimeStateIfDefinitelyStopped, In as resolveRegistryRuntimeAdapterContractByAgentControllerRef, Io as buildDaemonServiceTargetSpec, Ir as seedLegacyAgentContext, J as buildDaemonServiceDependencyMeaning, Ja as upsertDaemonServiceContract, Ji as cleanupInactiveDaemonServiceBundles, Jn as resolveBuiltinAgentControllerDefinition, Jt as isProjectBound, K as writeDaemonStartFailureState, Ka as isDaemonServiceContractIdentityReusable, Ki as extractDaemonCommandEntryPath, Kn as repairBuiltinControllerInstall, Kr as buildWorkingLanguagePromptPlan, Kt as ProjectBindingStoreUpdateRequiredError, L as buildDaemonServiceRefreshPromptMessage, La as HEARTBEAT_RESPONSE_TIMEOUT_MS, Li as getEffectiveDaemonRuntimeStatus, Lo as resolveDaemonServiceAlignmentDecision, Lr as settleInflightTask, M as resolveDaemonStatusAttention, Ma as DAEMON_RUNTIME_CONTRACT_EPOCH, Mi as readCurrentDaemonOwnerSnapshot, Mn as resolveSkillsAgentRegistry, Mo as resolveAuthenticationGuidance, Mr as commitResolvedAgentContext, N as resolveDaemonStatusAuthenticationAttention, Na as DAEMON_STREAM_CONNECT_TIMEOUT_MS, Ni as resolveDaemonStopStrategy, Nn as listBuiltinAgentsRegistryEntries, No as resolveAuthenticationGuidanceFromError, Nr as loadLedgerState, Nt as resolveCurrentEffectiveProfileWorkingFolderRuntime, O as captureDaemonServiceEvidence, Oa as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS, Oi as inspectDaemonServiceInventory, On as updateAgentCustomTarget, Oo as buildCommandAuthenticationPromptMessage$1, Or as runRuntimeTask, Ot as readLocalEnabledControllers, P as resolveServiceReadiness, Pa as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS, Pi as resolveStoppedContractWriteBlockedReason, Pn as resolveRegistryOriginLaunchCommand, Pr as removeConversationExecutionState, Pt as resolveProfileWorkspaceRuntime, Q as resolveDaemonServiceDependencyDiagnostics, Qi as resolveDaemonBundleEntryPathFromState, Qn as isPnpmGlobalCommandPath, Qr as isAgentExecutionReadyOrConnecting, Qt as removeAgentActivityBindingsWhileDeliveryLocked, R as buildDaemonServiceRepairGuidance, Ra as MAX_RECONNECT_DELAY_MS, Ri as readCurrentDaemonRuntimeContext, Rn as LocalDaemonControlPlaneClientError, Ro as isVersionDowngrade, Rr as upsertConversationExecutionState, Rt as readProfileWorkspaceConfigForAccount, S as buildDaemonSystemServiceCommandSpec, Sa as normalizeOptionalText$21, Si as verifyCodexAppServerThread, Sn as readAgentRuntimeConfigHealth, So as clearAllSelectedOpenMeldProfileIds, Sr as resolveCatalogSyncIntervalMs, St as createMutableRouteCatalogState, T as ensureDaemonRuntimePaths, Ta as toErrorMessage$19, Ti as createUnsupportedProviderUsageLimits, Tn as removeAgentCustomTarget, Tr as resolveCompatibleAgentContextMatch, Tt as summarizeSkippedDaemonProfiles, U as buildDaemonServiceFreshnessPromptLines, Ua as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS, Ui as cleanupLegacySharedDaemonServiceState, Un as normalizeAgentIds, Uo as DAEMON_SERVICE_WAKEABILITY_ADVISORY_ANOMALIES, Ur as areAgentControllerInterfaceAccountsSame, V as formatDaemonServiceRefreshReliabilityMessage, Va as REGISTER_RESPONSE_TIMEOUT_MS, Vi as resolveDaemonServiceManagerForRuntimeState, Vn as sendLocalDaemonControlPlaneRequest, Vo as DAEMON_SERVICE_FULL_ALIGNMENT_ANOMALIES, Vr as buildAgentContextLookupKey, Vt as setCustomProfileWorkspace, W as resolveDaemonServiceFreshnessWarning, Wa as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS, Wi as listDaemonOwnedProcesses, Wn as parseAgentEnabledOption, Wo as classifyDaemonServiceRunStartability, Wr as buildAgentControllerRef, X as buildDaemonServiceDependencySummary, Xa as OPENMELD_VERSION, Xi as readDaemonActiveBundleState, Xn as isHomebrewCommandPath, Xt as listProjectConnectionsWithStatus, Y as buildDaemonServiceDependencyNextStep, Ya as resolveCurrentDaemonExpectedVersion, Yi as prepareDaemonServiceBundle, Yn as isBunGlobalCommandPath, Yr as createAuthorityOpenMeldServiceRuntimeId, Yt as listProjectBindings, Z as buildDaemonServiceDependencyTitle, Zi as resolveAlignedDaemonActiveBundleEntryPath, Zn as isNpmGlobalCommandPath, _ as isDaemonInventoryRunningAndStartReady$1, _a as asRecord, _i as resolveInstalledGrokBuildLaunchCandidates, _n as createRegistrationFromCatalogTarget, _r as MIN_HEARTBEAT_INTERVAL_MS, _t as normalizeOpenClawSpaceIdPrefix, a as resolveOpenMeldToolsMaintenanceProjection, aa as runDaemonServiceManagerAction, ar as resolveRouteRegistrationReconcileDecision, as as formatInlineOpenMeldCliCommands, at as REPLY_READINESS_COPY, b as waitForSystemServiceStartup$1, ba as normalizeHeartbeatIntervalMs, bi as resolveInstalledCodexLaunchCandidates, bn as listAgentTargetStates, bo as readDaemonCatalogSyncSignal, br as pruneStaleLeases, bt as writeDaemonRouteCatalogCache, ci as resolveSelectableCandidates, cn as withAgentActivityLocalStateLock, cr as normalizeDispatchPostMessageAction, ct as resolveReplyReadinessGuidanceSummaryCopy, d as scheduleDaemonServiceUpdate, di as createLocalAdapterEntries, dn as emitDriftDetectedEvidence, do as createOpenMeldAgentProfile, dr as createLocalTaskInterruptSender, ea as formatDaemonLifecycleOriginSummary, ei as parseAgentControllerRef$1, en as removeProjectConnection, er as normalizeDispatchThreadAction, es as resolveServiceUpdateUrgency, f as DaemonServiceLifecycleDrainTimeoutError, fi as parseOpenCodeGoUsageResponse, fn as emitReconcileCompletedEvidence, fo as createOpenMeldHumanProfile, fr as buildLocalServiceDiagnosticsPayload, ft as resolveGatewayChainRepairGuidance, g as uninstallDaemonServiceUpdateWorker, ga as DaemonServiceRunError, gi as probeGrokBuildAcpInterface, gn as addAgentCustomTarget, gr as MAX_HEARTBEAT_INTERVAL_MS, gs as resolveBuiltinAgentControllerBrand, gt as buildOpenClawSpaceSessionKey, ha as readDaemonRuntimeContractRepairReport, hi as GrokBuildAcpTransportError, hn as resolveAgentProfilePrimaryAgentControllerReport, ho as listOpenMeldProfiles, hr as ADAPTIVE_HEARTBEAT_JITTER_RATIO, hs as compareAgentControllerRefsForDisplay, ht as prepareProviderRuntime, i as readOpenMeldToolsMaintenancePolicy, ia as resolveRecentDaemonSignalStopCause, ir as isDaemonReconcileInProgressError, is as resolveAuthBaseUrl, j as resolveDaemonStatusSnapshot, ja as CONTROLLED_SHUTDOWN_SOCKET_CLOSE_TIMEOUT_MS, ji as hasActiveDaemonOwners, jo as extractAuthenticationPromptAction, jr as appendLedgerHistoryEntry, jt as syncProfileWorkspaceState, k as captureDaemonServiceEvidenceBestEffort, ka as CONTROLLED_SHUTDOWN_REQUEST_TIMEOUT_MS, ki as buildDaemonOwnerSnapshotFromObservedState, kn as updateAgentRegistrations, ko as buildHumanAuthenticationCard, kr as buildRuntimeWorkspaceFingerprint, kt as resolveLocalController, la as readLastDaemonServiceUpdate, li as resolveCatalogSyncSkippedProfilesLogState, lo as requireOpenMeldProfile, lr as createPendingAgentInteractionRegistry, ls as formatOpenMeldCliTextBlock, lt as resolveOpenClawDiagnosticsGuidance, m as ensureDaemonServiceMaintenanceInstalled, ma as ensureDaemonRuntimeContractState, mi as resolveInstalledOpenCodeLaunchCandidates, mo as getOpenMeldProfileCapabilities, mr as createInflightTaskControlRegistry, mt as resolveOpenClawLocalDiagnosticsValue, n as readLastOpenMeldToolsUpdateAttempt, na as readLatestDaemonLifecycleOriginEvent, ni as renderWorkingLanguagePrompt, nr as SPACE_ACTION_CONTEXT_GUIDANCE_LINES, ns as describeServerRequiredVersionUnavailableReason, o as writeOpenMeldToolsMaintenancePolicy, oa as runWithDaemonLifecycleCommandJournal, on as resolveLocalProjectConnectionForPath, or as createSerialAgentInteractionCallback, os as formatOpenMeldCliCommand, ot as formatSpaceMemberCommandRecoveryCopy, p as runDaemonServiceLifecycle, pi as forkOpenCodeServerSession, pn as emitReconcileStartedEvidence, pr as createLocalExecutionSlots, ps as resolveUserFacingCliEntryCommand, pt as resolveGatewayChainRetryGuidance, q as buildDaemonServiceDependencyDetails, qa as readDaemonServiceContract, qi as resolveDaemonBundleIdFromEntryPath, qn as EMPTY_AGENT_CONTROLLER_INTERFACE_CAPABILITIES, qo as compareSemver, qr as createAgentControllerInterfaceDisplayRows, qt as bindProject, r as readPendingOpenMeldToolsUpdateAttempt, rn as setDefaultProjectConnection, ro as resolveRuntimeContext, rr as SPACE_ACTION_TARGET_GUIDANCE_LINES, rs as resolveOpenMeldEnvironmentTarget, rt as formatReplyReadinessSummary, s as assessCliUpdate, sn as withAgentActivityDeliveryLock, so as resolveCurrentOpenMeldAccountContext, sr as buildDispatchReplyContextSummary, ss as formatOpenMeldCliCommands, st as resolveReplyReadinessAvailabilityReasonCopy, t as createOpenMeldToolsUpdateCoordinator, ta as readLatestDaemonLifecycleConnectionStateEvent, ti as renderInformationProtectionPrompt, tn as resolveProjectBindingForPath, tr as syncRuntimeEventToInflightTaskControlRegistry, ts as assessServerRequiredVersion, ua as readPendingDaemonServiceUpdate, ui as createLocalAdapterContainer, un as syncDeviceRuntimeStateProjection, uo as resolveOpenMeldProfileOrNull, ur as mergeOpenClawGatewayVisibility, us as formatProfileAwareOpenMeldCliCommand, ut as classifyGatewayChainFailure, v as isSystemServiceStartupTimeoutError, va as dirnamePath, vi as projectCodexUsageLimits, vn as listAgentCustomTargets, vr as applyAcceptedLeases, vt as slugifyOpenClawNamePart, w as buildLedgerPaths, wa as nowIsoString, wi as createUnavailableProviderUsageLimits, wr as resolveDispatchContinuityObservation, wt as loadDaemonRouteCatalog, x as writeDaemonServiceContract, xa as normalizeNonNegativeInteger$1, xi as forkCodexAppServerThread, xn as manageAgentRegistrationInstallation, xr as resolveAdaptiveHeartbeatIntervalMs, xt as resolveLocalServiceDemand, y as resolveSystemServiceStartupWaitMs, ya as emitRunLine, yi as resolveCodexTimeoutMs, yn as listAgentRegistrations, yo as assertAdditionalHumanProfileCreationEnabled, yr as applyIntervalJitterMs, yt as readDaemonRouteCatalogCache, z as buildDaemonServiceStatusReadOnlyDetail, za as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS, zi as readCurrentObservedDaemonRuntimeStatus, zr as withLedgerStateTransaction } from "./openmeld-tools-update-coordinator-yGkv7wqt.js";
|
|
8
|
+
import { $r as spaceMemberDirectoryEntrySchema, An as parseEnvelope$1, Ar as createCenterAgentRoutineResponseSchema, At as buildSpaceAttachmentDownloadPath, Bn as getSpaceUpdatesResponseSchema, Ci as toCompatibleSpaceAddressingRequestWireValue, Dn as DAEMON_STREAM_KEEPALIVE_PING, Dr as organizationComputersResponseSchema, Fr as resumeCenterAgentRoutineResponseSchema, Ft as createAccountSpaceIndexApi, Gr as localProjectControlDaemonFrameSchema, Hn as SPACE_DISPATCH_TRACE_PROMPT_PREVIEW_MAX_CHARS, In as OPENMELD_HEADER_REQUEST_ID, Ir as updateCenterAgentRoutineResponseSchema, It as createAgentActivityApi, Jr as postSpaceMembersResponseSchema, Kr as localProjectControlDiscoverProjectsResponseSchema, Kt as createFetchTransport, Ln as OPENMELD_HEADER_SPACE_ADDRESSING_VERSION, Lt as createAgentProfileBindingApi, Mn as parseServerErrorFrame$1, Mr as listCenterAgentRoutineRunsResponseSchema, Nn as resolveCustomMentionAliasOverride, Nr as listCenterAgentRoutinesResponseSchema, Or as submitFeedbackIssueRequestSchema, Pr as pauseCenterAgentRoutineResponseSchema, Qr as spaceMemberDirectoryAllowedRelationsSchema, Qt as createOrganizationApi, Rr as AGENT_ACTIVITY_PRESENCE_TTL_MAX_MS, Ur as agentActivitySnapshotResponseSchema, Vn as spaceEntryTargetSchema, Wr as localProjectControlConnectionSchema, Yr as removeSpaceMembersResponseSchema, Zn as submitAgentControllerTaskLifecycleEventItemSchema, Zr as spaceMemberAgentWakeAvailabilitySchema, Zt as createOpenMeldApiClient, _n as resolveAccountSpaceIndexGatewayHost, _r as organizationSkillReleaseSummarySchema, ai as agentActivitySessionInventoryResponseSchema, ar as OPENMELD_RUNTIME_CAPABILITIES_HEADER, bn as toStructuredApiClientFailure, br as organizationDirectoryResponseSchema, bt as buildProfileSpaceHistoryStatusPath, ci as archiveProjectResponseSchema, cn as createSpaceApi, cr as computerFileAccessPolicySchema, di as projectSchema, dr as resolveInitialSpaceAccessMode, ei as spaceMemberDirectorySchema, fi as updateProjectResponseSchema, fr as spaceCreatorSchema, hr as listOrganizationSkillsResponseSchema, ir as COMPUTER_FILE_ACCESS_RUNTIME_CAPABILITY, jn as parseIncoming$1, jr as deleteCenterAgentRoutineResponseSchema, kn as MAX_TEXT_LENGTH, kr as submitFeedbackIssueResponseSchema, li as createProjectResponseSchema, mr as getOrganizationSkillResponseSchema, n as OpenMeldApiClientInvalidResponseError, or as computerFileAccessDaemonFrameSchema, pi as centerAgentToolSpeakerSchema, pr as spaceMetaSchema, qr as leaveSpaceResponseSchema, rn as createProfileSpaceHistoryApi, rr as gatewayErrorEnvelopeSchema, si as observedLocalAgentSessionSchema, sn as createRuntimeReportingApi, sr as computerFileAccessPolicyInputSchema, t as OpenMeldApiClientHttpError, ti as spaceMemberKindSchema, ui as listProjectsResponseSchema, ur as organizationSpaceDirectoryWithMemberCountsResponseSchema, vn as resolveProfileSpaceHistoryGatewayHost, vr as organizationSkillSummarySchema, xt as buildProfileSpaceHistoryUpsertPath, zr as agentActivityEventSchema } from "./dist-C7GcYLZj.js";
|
|
9
9
|
import { $r as openMeldRequestContextSchema, A as runtimeTransportRegisterSessionRequestSchema, An as resolveMessageEnvelopeTargetField, Bn as agentInteractionRequestSchema, Br as normalizeSpacePasswordText, C as runtimeTransportLocalAgentControlManageInstallationFramePayloadSchema, Cr as string, Ct as sanitizeSignalTextPreview, Dn as getSpaceMessageAddressingRelationSupportForTargetKind, E as runtimeTransportLocalAgentControlSetProfileWorkspaceFramePayloadSchema, En as formatCanonicalMentionLiteral, F as runtimeTransportRouteCatalogChangedFramePayloadSchema, G as openMeldDaemonTaskResultPayloadSchema, Gn as formatLocalSetupActionDescription, Hr as resolveSingleSpaceMentionLabels, Ir as runtimeCoordinatorExecutionTokenEnvelopeSchema, J as LOCAL_FOLDER_PICKER_RUNTIME_CAPABILITY, Jn as localCliComponentUpdateProjectionSchema, Kn as formatLocalSetupActionLabel, L as runtimeTransportSubmitTaskResultRequestSchema, Lr as runtimeTransportDeliveryExecutionIdentitySchema, Mr as parseOptionalClientMessageId, N as runtimeTransportResumeControllerConversationFramePayloadSchema, O as runtimeTransportOpenMeldToolsControlFramePayloadSchema, Or as url, P as runtimeTransportResumeControllerConversationResultFramePayloadSchema, Q as localFolderPickerHelperResultSchema, Qn as localServiceComponentUpdateProjectionSchema, Rn as AGENT_INTERACTION_DEFAULT_TIMEOUT_MS, S as runtimeTransportLocalAgentControlInterruptFramePayloadSchema, Sr as strictObject, T as runtimeTransportLocalAgentControlSetEnabledFramePayloadSchema, Tn as collectCanonicalMentionTextFragments, Un as formatLocalComponentsSummaryDescription, Ur as resolveSpaceMentionLabels, Wn as formatLocalComponentsSummaryLabel, X as localFolderPickerDaemonFrameSchema, Y as OPENMELD_LOCAL_FOLDER_PICKER_CAPABILITY_HEADER, Z as localFolderPickerHelperProtocolResultSchema, Zt as spaceFileNameSchema, _ as runtimeTransportForkAgentSessionResultSchema, a as localWakeRouteWorkingFolderObservationSchema, an as openMeldDaemonControlPlaneResponseSchema, b as runtimeTransportLocalAgentControlCancelFramePayloadSchema, bt as SPACE_MEMBER_REMOVE_NOTICE_PURPOSE, c as runtimeTransportDispatchInteractionDeliveredRequestSchema, cr as boolean, d as runtimeTransportDispatchLifecycleRequestSchema, f as runtimeTransportDispatchPreviewEndRequestSchema, fr as enumFactory, gi as resolvePublicAgentAvailabilityCopy, h as runtimeTransportDispatchToolActivityRequestSchema, hr as literal, ht as CONVERSATION_CONTINUITY_WARNING_PURPOSE, j as runtimeTransportRegisterSessionResponseSchema, k as runtimeTransportOpenMeldToolsControlResultFramePayloadSchema, kn as normalizeMessageEnvelope, l as runtimeTransportDispatchInteractionRequestSchema, m as runtimeTransportDispatchRuntimeEvidenceRequestSchema, mr as iso, ni as normalizeOptionalWorkingDirectory, p as runtimeTransportDispatchPreviewRequestSchema, pi as MAX_TEXT_LENGTH$1, q as openMeldSpaceEgressActionSchema, qn as installedLocalComponentsSnapshotSchema, qt as resolveSpaceFileMimeType, r as daemonStreamFrameSchema, ri as openMeldRuntimeProfileIdSchema, s as runtimeTransportDeliverDispatchRequestSchema, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, u as runtimeTransportDispatchInteractionResponseFramePayloadSchema, ur as discriminatedUnion, v as runtimeTransportHeartbeatRequestSchema, vi as sanitizeDispatchErrorSummary, w as runtimeTransportLocalAgentControlRefreshCatalogFramePayloadSchema, wn as MESSAGE_MENTION_TYPE_VALUES, x as runtimeTransportLocalAgentControlForkSessionFramePayloadSchema, xt as SPACE_MENTION_REJECT_NOTICE_PURPOSE, y as runtimeTransportHeartbeatResponseSchema, yt as SPACE_MEMBER_JOIN_NOTICE_PURPOSE, zt as SPACE_FILE_MAX_SIZE_BYTES } from "./runtime-transport-w7zmmzEz.js";
|
|
10
|
-
import { b as computeDirectoryContentHash, f as ensureLocalSkills, g as loadSelectedSkillAssets, r as collectSkillsReadinessSnapshot, t as installSkillsToTargets, u as resolveSkillInstallStateForTarget, v as withSkillsInstallLock, x as OFFICIAL_CLI_SKILL_URL, y as hashBundledSkillAssets } from "./installer-
|
|
10
|
+
import { b as computeDirectoryContentHash, f as ensureLocalSkills, g as loadSelectedSkillAssets, r as collectSkillsReadinessSnapshot, t as installSkillsToTargets, u as resolveSkillInstallStateForTarget, v as withSkillsInstallLock, x as OFFICIAL_CLI_SKILL_URL, y as hashBundledSkillAssets } from "./installer-CnGp0v9d.js";
|
|
11
11
|
import { r as daemonServiceLaneSchema } from "./service-contract-CRyDcIIf.js";
|
|
12
12
|
import { a as readDaemonLocalStateFile, i as writeDaemonRuntimeLease, o as writeDaemonLocalStateFile } from "./daemon-runtime-lease-D_CULMR8.js";
|
|
13
13
|
import { a as beginAuthSessionTransition, h as setAuthSession, i as assertAuthSessionMutationAvailable, l as getAuthSessionState, o as clearAuthSession, v as isBinaryDistribution, y as resolveOpenMeldDistribution } from "./auth-session-xj7oUO1L.js";
|
|
14
|
-
import { B as createSpaceRemoveMembersCurrentProfileGuideError, Bt as deriveContinuity, F as createSpaceLeaveGuideError, Ft as buildCenterAgentRoleTemplateText, G as createSpaceSendInputFileReadFailedGuideError, H as createSpaceResultGuideError, Ht as resolvePublicAgentFailureReason, I as createSpaceMenuGuideError, It as buildCompactDispatchActionGuidanceLines, J as createSpaceTargetGuideError, K as createSpaceSendInputRequiredGuideError, L as createSpaceProfileRequiredGuideError, Lt as buildSpaceEntryBriefNeedMoreLine, M as createSpaceCreateGuideError, N as createSpaceDeleteHumanApprovalGuideError, Nt as buildAgentFacingMentalModelLines, O as createSpaceAddMembersCurrentProfileGuideError, P as createSpaceLeaveCreatorGuideError, R as createSpacePublicationSetGuideError, St as getBuiltinAgentSelectionRequiredArguments, Tt as buildAgentOverviewFromContract, U as createSpaceSendInputConflictGuideError, Ut as resolveSpacePublicationRequirement, V as createSpaceRemoveMembersGuideError, Vt as renderSpaceEntryBrief, W as createSpaceSendInputEmptyGuideError, X as createSpaceUpdatesGuideError, Y as createSpaceUnsupportedProfileKindGuideError, _ as errLine, _t as validateDaemonControlTargetInput, a as formatDaemonServiceDowngradeBlockedRecommendation, at as validateSpaceMemberSelectionInput, b as canUseInteractivePrompts, bt as buildBuiltinAgentSelectionExamples, ct as resolveSpaceAddMembersProgressPhase, d as formatDaemonServiceMissingStatus, et as getCommandEntryContract, f as getDaemonDowngradeBlockedTitle, g as formatMessage, h as sanitizeTerminalDisplayText, ht as getCliVersionInfo, i as formatDaemonInstallFailedMessage, j as createSpaceContractSetGuideError, k as createSpaceAddMembersGuideError, kt as formatAgentOverviewPayload, l as formatDaemonServiceMissingRunStepOne, m as createPresenter, mt as formatCliVersionSummary, n as resolveElapsedTimeMs, nt as ROOT_ENTRY_COMMANDS, o as formatDaemonServiceMissingAction, ot as SPACE_ADD_MEMBERS_AGENT_OVERVIEW_STAGES, p as runDaemonInstallDecisionPrompt, q as createSpaceSubcommandTargetGuideError, r as formatDaemonDowngradeBlockedNextStep, rt as ROOT_ENTRY_START_COMMAND, s as formatDaemonServiceMissingMeaning, st as SPACE_ADD_MEMBERS_PROGRESS_HEARTBEAT_MS, t as formatElapsedTime, u as formatDaemonServiceMissingRunStepTwo, v as outJsonLine, w as createProfileCreateGuideError, wt as validateBuiltinAgentSelectionInput, x as createAuthLoginGuideError, xt as getBuiltinAgentSelectionOptionalArguments, y as outLine, yt as buildBuiltinAgentSelectionCommand, z as createSpaceRemoveMembersCreatorGuideError, zt as composeDispatchBrief } from "./elapsed-time-
|
|
14
|
+
import { B as createSpaceRemoveMembersCurrentProfileGuideError, Bt as deriveContinuity, F as createSpaceLeaveGuideError, Ft as buildCenterAgentRoleTemplateText, G as createSpaceSendInputFileReadFailedGuideError, H as createSpaceResultGuideError, Ht as resolvePublicAgentFailureReason, I as createSpaceMenuGuideError, It as buildCompactDispatchActionGuidanceLines, J as createSpaceTargetGuideError, K as createSpaceSendInputRequiredGuideError, L as createSpaceProfileRequiredGuideError, Lt as buildSpaceEntryBriefNeedMoreLine, M as createSpaceCreateGuideError, N as createSpaceDeleteHumanApprovalGuideError, Nt as buildAgentFacingMentalModelLines, O as createSpaceAddMembersCurrentProfileGuideError, P as createSpaceLeaveCreatorGuideError, R as createSpacePublicationSetGuideError, St as getBuiltinAgentSelectionRequiredArguments, Tt as buildAgentOverviewFromContract, U as createSpaceSendInputConflictGuideError, Ut as resolveSpacePublicationRequirement, V as createSpaceRemoveMembersGuideError, Vt as renderSpaceEntryBrief, W as createSpaceSendInputEmptyGuideError, X as createSpaceUpdatesGuideError, Y as createSpaceUnsupportedProfileKindGuideError, _ as errLine, _t as validateDaemonControlTargetInput, a as formatDaemonServiceDowngradeBlockedRecommendation, at as validateSpaceMemberSelectionInput, b as canUseInteractivePrompts, bt as buildBuiltinAgentSelectionExamples, ct as resolveSpaceAddMembersProgressPhase, d as formatDaemonServiceMissingStatus, et as getCommandEntryContract, f as getDaemonDowngradeBlockedTitle, g as formatMessage, h as sanitizeTerminalDisplayText, ht as getCliVersionInfo, i as formatDaemonInstallFailedMessage, j as createSpaceContractSetGuideError, k as createSpaceAddMembersGuideError, kt as formatAgentOverviewPayload, l as formatDaemonServiceMissingRunStepOne, m as createPresenter, mt as formatCliVersionSummary, n as resolveElapsedTimeMs, nt as ROOT_ENTRY_COMMANDS, o as formatDaemonServiceMissingAction, ot as SPACE_ADD_MEMBERS_AGENT_OVERVIEW_STAGES, p as runDaemonInstallDecisionPrompt, q as createSpaceSubcommandTargetGuideError, r as formatDaemonDowngradeBlockedNextStep, rt as ROOT_ENTRY_START_COMMAND, s as formatDaemonServiceMissingMeaning, st as SPACE_ADD_MEMBERS_PROGRESS_HEARTBEAT_MS, t as formatElapsedTime, u as formatDaemonServiceMissingRunStepTwo, v as outJsonLine, w as createProfileCreateGuideError, wt as validateBuiltinAgentSelectionInput, x as createAuthLoginGuideError, xt as getBuiltinAgentSelectionOptionalArguments, y as outLine, yt as buildBuiltinAgentSelectionCommand, z as createSpaceRemoveMembersCreatorGuideError, zt as composeDispatchBrief } from "./elapsed-time-BDn2tDRl.js";
|
|
15
15
|
import { a as resolveBaseUrl, c as resolveExplicitGatewayUrlOrThrow, d as createDefaultRuntimeAgentControllerSettings, f as getConfiguredDaemonDispatchLimits, g as getConfiguredSkillsConfig, i as normalizeGatewayBaseUrlOrNull, l as DEFAULT_RUNTIME_AGENT_TRANSPORT_MODE, o as resolveBaseUrlOrNull, r as normalizeGatewayBaseUrl } from "./base-url-CgF_v0Ue.js";
|
|
16
16
|
import { n as toErrorMessage$20, t as sleep } from "./dist-o3UL1EGQ.js";
|
|
17
|
-
import { a as buildOpenMeldProfileIdentityRequestHeadersWithAuth, c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfileIdentity, f as deriveAuthBaseUrlFromGatewayUrl, i as AuthRequestCredentialError, l as canAttachAuthTokenToRequest, n as fetchSpaceRequestWithTimeout, o as buildOpenMeldProfileRequestHeadersWithAuth, p as resolveAuthRequestCompatibility, r as resolveSpaceRequestTimeoutMsForDiagnostics, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation, u as buildOpenMeldRequestContextFromProfile } from "./api-client-foundation-
|
|
17
|
+
import { a as buildOpenMeldProfileIdentityRequestHeadersWithAuth, c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfileIdentity, f as deriveAuthBaseUrlFromGatewayUrl, i as AuthRequestCredentialError, l as canAttachAuthTokenToRequest, n as fetchSpaceRequestWithTimeout, o as buildOpenMeldProfileRequestHeadersWithAuth, p as resolveAuthRequestCompatibility, r as resolveSpaceRequestTimeoutMsForDiagnostics, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation, u as buildOpenMeldRequestContextFromProfile } from "./api-client-foundation-C0Zq2voT.js";
|
|
18
18
|
import { A as installDaemon, D as ensureDaemonControlPlaneToken, F as readDaemonServiceRuntimeSnapshot, G as withDaemonServiceRunLock, H as uninstallDaemon, I as releaseDaemonServiceLifecycleLock, K as withDaemonServiceStopLock, L as resolveDaemonControlPlaneEndpoint, R as resolveDaemonServiceRuntimeMetadata, U as withDaemonServiceReconcileLock, V as setDaemonServiceRuntimeState, W as withDaemonServiceRegistrationMutationLock, a as DAEMON_SERVICE_RUNTIME_MODE_ENV, c as acquireDaemonServiceLifecycleLock, d as daemonLifecycleJournalPath, g as daemonRuntimeStateRootPath, i as DAEMON_SERVICE_RUNTIME_DETACHED_ENV, j as isDaemonServiceRuntimeHeartbeatStale, k as getDaemonStatus, l as clearDaemonServiceRuntimeState, m as daemonRuntimeRootPath, o as DAEMON_SERVICE_RUNTIME_STATE_SCHEMA, u as daemonDispatchJournalPath, x as daemonServiceRepairJournalPath } from "./daemon-state-C_KmI_0F.js";
|
|
19
19
|
import { a as disableDaemonServiceAutostartIfConfigured, b as resolveDaemonServiceManager, c as getDaemonSystemServiceLogPath, d as isDaemonServiceBackgroundExecutionBlocked, g as readDaemonServiceJobCrashExitCode, o as formatDaemonServiceJobDiagnosticsEvidence, s as getDaemonServiceLaunchdLabel } from "./daemon-service-manager-DRzfyljb.js";
|
|
20
20
|
import { homedir } from "node:os";
|
|
@@ -63763,4 +63763,4 @@ function isHumanInteractiveSpaceRuntime(runtime) {
|
|
|
63763
63763
|
//#endregion
|
|
63764
63764
|
export { runAgentsList as $, isCurrentCommandCheckScopeActive as $n, ensureCommandAuthenticationOrCancel as $t, parseEnvelope as A, resolveLocalAgentControllerReportDecision as An, renderInfoCard as Ar, buildProfileWorkspaceRows as At, resolveHumanControllerDisplayName as B, buildUpdatesReplyWorkflowProjection as Bn, organizationJoinLinkManagementQuerySchema as Br, fetchSpaceMeta as Bt, toSpaceMetaUpsertInput as C, computeRetryDelayMs as Cn, readCodexSessionTitles as Cr, runDaemonRunAfterEntryChecks as Ct, formatHumanReadTargetList as D, collectLocalAgentControllerInventory as Dn, removeProjectOutbox as Dr, runDaemonTeardownStrict as Dt, buildHumanReplyContextSummary as E, submitRuntimeAgentControllerReports as En, readAgentActivityOutboxHealth as Er, runDaemonStop as Et, resolveOpenMeldProfileForSpaceCommand as F, buildDispatchResultReplyWorkflowProjection as Fn, cliJsonSkillsLoadEnvelopeSchema as Fr, runDaemonStartDecisionPrompt as Ft, runAgentsConfig as G, isReturnKeypress as Gn, parseJsonResponse$1 as Gt, resolveAgentProfileSetup as H, formatRemovedCcRelationMessage as Hn, readGatewayJsonResponse as Ht, emitSpaceAgentOverview as I, buildPublicSpaceEntryUrl as In, cliJsonSkillsShowEnvelopeSchema as Ir, runDaemonStartupPreflight as It, runAgentsCustomRemove as J, readDispatchOwnedRuntimeGuard as Jn, resolveDaemonServiceParticipationStatus as Jt, runAgentsCustomAdd as K, runInteractivePrompt as Kn, resolveLocalComponentsStatus as Kt, emitSpaceCliAgentOverview as L, buildSignalIndex as Ln, acceptOrganizationJoinLinkBodySchema as Lr, readDaemonStartFailureLogTailLines as Lt, assertFullSignalIdArgument as M, upsertSpaceConfig as Mn, emitCliJsonEnvelope as Mr, emitDaemonAgentOverview as Mt, assertValidSpaceIdTarget as N, assertNoRemovedCcSpaceAddressingSyntax as Nn, cliJsonOutputEnvelopeSchema as Nr, createDelayedSpinner as Nt, resolveLinkAccessLabel as O, resolveLocalAgentControllerBlockerReasonCodes as On, enqueueControllerTaskLifecycleEventWhileLocked as Or, runDaemonUninstall as Ot, prepareAuthenticatedSpaceCommandContext as P, buildDispatchResultMessageReadProjection as Pn, cliJsonSkillsListEnvelopeSchema as Pr, shouldEmitAgentOverview as Pt, runAgentsEnable as Q, getCurrentCommandCheckState as Qn, buildCommandAuthenticationPromptMessage as Qt, prepareLocalAgentReadiness as R, buildSignalMessageReadProjection as Rn, getOrganizationJoinLinkResponseSchema as Rr, fetchSpaceUpdates as Rt, loadSpaceSignalIndexOrNull as S, assessActionParticipationCandidate as Sn, normalizeSharedSessionTitle as Sr, runDaemonReinstall as St, buildFormalSignalReadPayload as T, submitRuntimeAgentControllerReport as Tn, removeProjectInbox as Tr, runDaemonStatusFlow as Tt, runDaemonServiceParticipationGate as U, promptSearchMultiselect as Un, readGatewayTextResponse as Ut, persistAgentTransportSelection as V, createSpaceMemberIdentityIndex as Vn, revokeOrganizationJoinLinkResponseSchema as Vr, updateSpaceMeta as Vt, runAgents as W, promptSearchSelect as Wn, toStructuredGatewayFailure as Wt, runAgentsDetect as X, writeDispatchSpaceActionRecord as Xn, readRecentDaemonDispatchJournalEvents as Xt, runAgentsCustomUpdate as Y, readDispatchSpaceActionContextFromEnv as Yn, readRuntimeReportingHealthState as Yt, runAgentsDisable as Z, finishCurrentCommandCheckScope as Zn, connectWebSocket as Zt, runSpaceWriteWithPasswordRetry as _, resolveCreateProfileName as _n, syncLocalAgentActivity as _r, runDaemonAutostart as _t, runSpaceDelete as a, exchangeOneTimeTokenAuthSession as an, LocalProjectConnectionError as ar, colorizeDisplayProfileLabel as at, buildIdentityOnlyMembersSnapshotForReadProjection as b, formatServiceParticipationReadinessLabel as bn, buildAgentActivityEvent as br, runDaemonInstall as bt, runSpaceLeave as c, formatActiveOrganizationLabel as cn, registerAgentActivityRoute as cr, renderOpenMeldHeader as ct, runSpaceRemoveMembers as d, requestDeviceToken as dn, AGENT_ACTIVITY_INTEGRATION_OWNER as dr, resolveGatewayWebOrigin as dt, evaluateCommandAuthentication as en, resetCurrentCommandCheckState as er, runAgentsManage as et, runSpaceSend as f, resolveDeviceAuthClientId as fn, defaultManagedIntegrationPaths as fr, resolveSpaceWebGatewayOrigin as ft, runSpaceReadWithPasswordRetry as g, resolveCreateProfileKind as gn, uninstallAgentActivityIntegrations as gr, runDaemon as gt, uploadPreparedSpaceFiles as h, createProfileByKind as hn, resolveAgentActivityDispatcherCommand as hr, isManagedSystemServiceBootstrapRun as ht, runSpaceCreate as i, runAuthStatus as in, renderHumanTextErrorCard as ir, colorizeAgentLabel as it, isSpaceCommandOutputHandledError as j, inspectSpaceCacheFile as jn, renderTextInfoCard as jr, reconcileCliVersionView as jt, resolveOrganizationVisibilityLabel as k, resolveLocalAgentControllerLaunchability as kn, readControllerTaskLifecycleOutboxHealth as kr, buildProfileWorkspacePresentation as kt, runSpaceList as l, extractAuthApiErrorMessage as ln, resolveAgentActivityRouteForPath as lr, renderOpenMeldLogo as lt, prepareRequestedSpaceSendFiles as m, revokeAuthAccessToken as mn, readAgentActivityIntegrationStatus as mr, bestEffortStopCurrentLaneDaemonService as mt, promptAndConfirmSpacePassword as n, runAuthLogout as nn, buildHumanErrorCopy as nr, runAgentsShow as nt, runSpaceHistory as o, buildAuthStatusRows as on, validateLocalProjectConnectionPath as or, printOpenMeldBanner as ot, runSpaceWatch as p, resolveDeviceTokenExpiresAt as pn, installAgentActivityIntegrations as pr, resolveSpaceSendText as pt, runAgentsCustomList as q, assertDispatchOwnedRuntimePublicWriteAllowed as qn, writeInstalledLocalComponentsSnapshot as qt, runSpaceAddMembers as r, runAuthMenu as rn, renderHumanErrorCard as rr, formatTransportModeDisplay as rt, runSpaceJoin as s, buildAuthStatusSnapshot as sn, isAgentActivityRouteRegistered as sr, renderOpenMeldBrandBlockLines as st, buildCreateSpacePasswordPromptConfig as t, runAuthLogin as tn, startCurrentCommandCheckScope as tr, runAgentsRepair as tt, runSpacePassword as u, fetchAuthUserSnapshot as un, unregisterAgentActivityRoute as ur, renderOpenMeldTagline as ut, buildHumanReadSignalsTranscriptItems as v, promptTextEntry as vn, readAgentActivityContextForPath as vr, runDaemonBackgroundStartForDecision as vt, buildFormalDispatchResultReadPayload as w, submitProfileRuntimeAgentControllerReport as wn, enqueueAgentActivityHookEvent as wr, runDaemonSnapshot as wt, loadSpaceIdentityDirectoryOrNull as x, resolveServiceParticipationReadiness as xn, resolveObservedAgentActivityBinding as xr, runDaemonInterrupt as xt, emitHumanReadSignalsTextProjection as y, ensureAgentProfileRuntimeBinding as yn, removeAgentActivityContextCache as yr, runDaemonCancel as yt, buildReplyReadinessGuidance as z, buildSpaceRoundReadProjection as zn, organizationJoinLinkErrorResponseSchema as zr, createCliSpaceApi as zt };
|
|
63765
63765
|
|
|
63766
|
-
//# sourceMappingURL=command-
|
|
63766
|
+
//# sourceMappingURL=command-BmHKOgIq.js.map
|