openmeld 0.3.281 → 0.3.287
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-DqXAZVkb.js → add-me-membership-BEXHAhjy.js} +2 -2
- package/dist/{add-me-membership-DqXAZVkb.js.map → add-me-membership-BEXHAhjy.js.map} +1 -1
- package/dist/{agents-D64ZW_j4.js → agents-DTdo7eeT.js} +9 -9
- package/dist/{agents-D64ZW_j4.js.map → agents-DTdo7eeT.js.map} +1 -1
- package/dist/{api-client-foundation-B_2mex1y.js → api-client-foundation-RM1pxGSx.js} +1 -1
- package/dist/{api-client-foundation-C4qyWlX3.js → api-client-foundation-i2KBsQ7r.js} +5 -5
- package/dist/{api-client-foundation-C4qyWlX3.js.map → api-client-foundation-i2KBsQ7r.js.map} +1 -1
- package/dist/auth-session-C9F7usbn.js +3 -0
- package/dist/{auth-session-D3JW6vDg.js → auth-session-DRQMn41Z.js} +2 -2
- package/dist/{auth-session-D3JW6vDg.js.map → auth-session-DRQMn41Z.js.map} +1 -1
- package/dist/{channel-cw8i-ftD.js → channel-CFIRo4fR.js} +5 -5
- package/dist/channel-CFIRo4fR.js.map +1 -0
- package/dist/{client-DiJSFcdx.js → client-CBTgmyFC.js} +8 -3
- package/dist/client-CBTgmyFC.js.map +1 -0
- package/dist/{cloud-computer-0OvJeYOx.js → cloud-computer-CuWSimwt.js} +5 -5
- package/dist/{cloud-computer-0OvJeYOx.js.map → cloud-computer-CuWSimwt.js.map} +1 -1
- package/dist/{command-WV5fFpT1.js → command-DdMi5g2D.js} +18 -18
- package/dist/{command-WV5fFpT1.js.map → command-DdMi5g2D.js.map} +1 -1
- package/dist/{computer-connection-review-BGdzvTAD.js → computer-connection-review-B7eoK0xB.js} +4 -4
- package/dist/{computer-connection-review-BGdzvTAD.js.map → computer-connection-review-B7eoK0xB.js.map} +1 -1
- package/dist/{computer-disconnect-DWuokz-a.js → computer-disconnect-DGsCTpe8.js} +7 -7
- package/dist/{computer-disconnect-DWuokz-a.js.map → computer-disconnect-DGsCTpe8.js.map} +1 -1
- package/dist/{computer-setup-continuation-a55NW4KT.js → computer-setup-continuation-CnIYFkOu.js} +5 -5
- package/dist/{computer-setup-continuation-a55NW4KT.js.map → computer-setup-continuation-CnIYFkOu.js.map} +1 -1
- package/dist/{computer-update-wait-DqdHVh-N.js → computer-update-wait-Bm_oW5Ne.js} +4 -4
- package/dist/{computer-update-wait-DqdHVh-N.js.map → computer-update-wait-Bm_oW5Ne.js.map} +1 -1
- package/dist/{context-BvTB6oYE.js → context-BvLQjNGR.js} +5 -5
- package/dist/{context-BvTB6oYE.js.map → context-BvLQjNGR.js.map} +1 -1
- package/dist/{control-plane-Cenl7yjL.js → control-plane-dGjd5iC7.js} +7 -2
- package/dist/control-plane-dGjd5iC7.js.map +1 -0
- package/dist/{daemon-device-id-BqFtu1Mo.js → daemon-device-id-D-RHe9se.js} +4 -4
- package/dist/{daemon-device-id-BqFtu1Mo.js.map → daemon-device-id-D-RHe9se.js.map} +1 -1
- package/dist/{daemon-lifecycle-journal-CazLvrLu.js → daemon-lifecycle-journal-BK-K3kGX.js} +4 -4
- package/dist/{daemon-lifecycle-journal-CazLvrLu.js.map → daemon-lifecycle-journal-BK-K3kGX.js.map} +1 -1
- package/dist/{daemon-service-runtime-CfxejhNC.js → daemon-service-runtime-CaUu_AdU.js} +2 -2
- package/dist/{daemon-service-runtime-CfxejhNC.js.map → daemon-service-runtime-CaUu_AdU.js.map} +1 -1
- package/dist/{dispatch-owned-runtime-B1yce9CE.js → dispatch-owned-runtime-CZLplr8F.js} +12 -12
- package/dist/{dispatch-owned-runtime-B1yce9CE.js.map → dispatch-owned-runtime-CZLplr8F.js.map} +1 -1
- package/dist/{dist-Ba813GzD.js → dist-53uvP0DN.js} +16 -8
- package/dist/dist-53uvP0DN.js.map +1 -0
- package/dist/dist-8pH5plup.js +34 -0
- package/dist/{dist-jIVIF1cm.js → dist-BdlgY-m7.js} +3 -3
- package/dist/{dist-CpETT0Ue.js → dist-CZyGORfc.js} +1 -1
- package/dist/{dist-Bc3Rc5Tm.js → dist-D7SkvUZW.js} +15 -5
- package/dist/{dist-Bc3Rc5Tm.js.map → dist-D7SkvUZW.js.map} +1 -1
- package/dist/{dist-Bi-kM20D.js → dist-DptLNaka.js} +2 -2
- package/dist/{dist-Bi-kM20D.js.map → dist-DptLNaka.js.map} +1 -1
- package/dist/{dual-view-guide-catalog-CUcSHGLS.js → dual-view-guide-catalog-Df60SGOI.js} +4 -4
- package/dist/{dual-view-guide-catalog-CUcSHGLS.js.map → dual-view-guide-catalog-Df60SGOI.js.map} +1 -1
- package/dist/{elapsed-time-DnuzLO2r.js → elapsed-time-jRFzKVlC.js} +2 -2
- package/dist/{elapsed-time-DnuzLO2r.js.map → elapsed-time-jRFzKVlC.js.map} +1 -1
- package/dist/{entry-BqRLj_9V.js → entry-CKyKfeY0.js} +8 -8
- package/dist/{entry-BqRLj_9V.js.map → entry-CKyKfeY0.js.map} +1 -1
- package/dist/{installation-inventory-BMPU4Tgf.js → installation-inventory-Cm-cGiGv.js} +3 -3
- package/dist/{installation-inventory-BMPU4Tgf.js.map → installation-inventory-Cm-cGiGv.js.map} +1 -1
- package/dist/{installer-BLAf7RHI.js → installer-BMX4Gbpp.js} +2 -2
- package/dist/{installer-BLAf7RHI.js.map → installer-BMX4Gbpp.js.map} +1 -1
- package/dist/{meta-api-B6TZqn2K.js → meta-api-BpSn7MBy.js} +8 -8
- package/dist/{meta-api-B6TZqn2K.js.map → meta-api-BpSn7MBy.js.map} +1 -1
- package/dist/{openmeld-DCf4ITd3.js → openmeld-DI9YIFFj.js} +78 -55
- package/dist/openmeld-DI9YIFFj.js.map +1 -0
- package/dist/{openmeld-environment-target-CeFk6jOe.js → openmeld-environment-target-DydyKO8Z.js} +2 -2
- package/dist/{openmeld-environment-target-CeFk6jOe.js.map → openmeld-environment-target-DydyKO8Z.js.map} +1 -1
- package/dist/{openmeld-maintenance-worker-Cito5UjR.js → openmeld-maintenance-worker-C3cdKkJO.js} +11 -10
- package/dist/{openmeld-maintenance-worker-Cito5UjR.js.map → openmeld-maintenance-worker-C3cdKkJO.js.map} +1 -1
- package/dist/{openmeld-tools-update-coordinator-DasnCwiO.js → openmeld-tools-update-coordinator-B_Dd_-GW.js} +142 -73
- package/dist/{openmeld-tools-update-coordinator-DasnCwiO.js.map → openmeld-tools-update-coordinator-B_Dd_-GW.js.map} +1 -1
- package/dist/{openmeld-tools-update-join-DZq4B1-c.js → openmeld-tools-update-join-B0bVe2pL.js} +2 -2
- package/dist/{openmeld-tools-update-join-DZq4B1-c.js.map → openmeld-tools-update-join-B0bVe2pL.js.map} +1 -1
- package/dist/openmeld.js +5 -5
- package/dist/{prepare-provider-runtime-D9G1oa37.js → prepare-provider-runtime-B4go-qdR.js} +155 -92
- package/dist/prepare-provider-runtime-B4go-qdR.js.map +1 -0
- package/dist/{prepare-session-executor-BtXNgehw.js → prepare-session-executor-Cpq7jQJg.js} +19 -19
- package/dist/{prepare-session-executor-BtXNgehw.js.map → prepare-session-executor-Cpq7jQJg.js.map} +1 -1
- package/dist/{presenter-PTSj6SjL.js → presenter-DMoE2U_q.js} +2 -2
- package/dist/{presenter-PTSj6SjL.js.map → presenter-DMoE2U_q.js.map} +1 -1
- package/dist/{process-channel-s-29YBmx.js → process-channel-DtJ01mUI.js} +2 -2
- package/dist/{process-channel-s-29YBmx.js.map → process-channel-DtJ01mUI.js.map} +1 -1
- package/dist/{runtime-CRML37Zi.js → runtime-CxjWWXTL.js} +32 -23
- package/dist/runtime-CxjWWXTL.js.map +1 -0
- package/dist/{runtime-agent-controller-reporting-submission-Bmi-TI7L.js → runtime-agent-controller-reporting-submission-Cnpnw9UC.js} +9 -9
- package/dist/{runtime-agent-controller-reporting-submission-Bmi-TI7L.js.map → runtime-agent-controller-reporting-submission-Cnpnw9UC.js.map} +1 -1
- package/dist/{runtime-transport--NUjMys2.js → runtime-transport-Dg7E0ROH.js} +3 -3
- package/dist/{runtime-transport--NUjMys2.js.map → runtime-transport-Dg7E0ROH.js.map} +1 -1
- package/dist/{sensitive-operation-credentials-DLvCUcPG.js → sensitive-operation-credentials-Dr_neVvL.js} +4 -4
- package/dist/{sensitive-operation-credentials-DLvCUcPG.js.map → sensitive-operation-credentials-Dr_neVvL.js.map} +1 -1
- package/dist/{service-CAVnFGS6.js → service-_kQjYdi5.js} +136 -45
- package/dist/service-_kQjYdi5.js.map +1 -0
- package/dist/{service-account-authorization-uXkl3vrp.js → service-account-authorization-DiSsm3hB.js} +3 -3
- package/dist/{service-account-authorization-uXkl3vrp.js.map → service-account-authorization-DiSsm3hB.js.map} +1 -1
- package/dist/{service-account-control-C5t63oqC.js → service-account-control-B4Ja3gU_.js} +9 -9
- package/dist/{service-account-control-C5t63oqC.js.map → service-account-control-B4Ja3gU_.js.map} +1 -1
- package/dist/{service-control-capabilities-DD8rKK5X.js → service-control-capabilities-D39aQwkY.js} +1 -1
- package/dist/{service-control-capabilities-D82eDKGc.js → service-control-capabilities-MWGiNNTg.js} +3 -3
- package/dist/{service-control-capabilities-D82eDKGc.js.map → service-control-capabilities-MWGiNNTg.js.map} +1 -1
- package/dist/{state-BrFamidO.js → state-Der85tER.js} +2 -2
- package/dist/{state-BrFamidO.js.map → state-Der85tER.js.map} +1 -1
- package/dist/{task-result-DB1vR1p4.js → task-result-DhOFm1C_.js} +9 -2
- package/dist/task-result-DhOFm1C_.js.map +1 -0
- package/dist/{updates-api-DkKnmoi1.js → updates-api-B8lZk9gI.js} +15 -15
- package/dist/{updates-api-DkKnmoi1.js.map → updates-api-B8lZk9gI.js.map} +1 -1
- package/dist/{upgrade-Df1VFgZU.js → upgrade-C8iFbxmb.js} +10 -10
- package/dist/{upgrade-Df1VFgZU.js.map → upgrade-C8iFbxmb.js.map} +1 -1
- package/dist/upgrade-DECIvSJc.js +3 -0
- package/dist/windows/openmeld-windows-process.exe +0 -0
- package/package.json +10 -10
- package/dist/auth-session-CDfkRP6v.js +0 -3
- package/dist/channel-cw8i-ftD.js.map +0 -1
- package/dist/client-DiJSFcdx.js.map +0 -1
- package/dist/control-plane-Cenl7yjL.js.map +0 -1
- package/dist/dist-Ba813GzD.js.map +0 -1
- package/dist/dist-CYV83fQw.js +0 -34
- package/dist/openmeld-DCf4ITd3.js.map +0 -1
- package/dist/prepare-provider-runtime-D9G1oa37.js.map +0 -1
- package/dist/runtime-CRML37Zi.js.map +0 -1
- package/dist/service-CAVnFGS6.js.map +0 -1
- package/dist/task-result-DB1vR1p4.js.map +0 -1
- package/dist/upgrade-yYdxvxwi.js +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-api-B6TZqn2K.js","names":["record"],"sources":["../../../packages/schemas/dist/schemas/cli/space-send.js","../src/space/cli-space-api.ts","../src/space/send-files.ts","../src/space/send-input.ts","../src/space/api-json.ts","../src/space/gateway-response.ts","../src/space/space-meta-response.ts","../src/space/meta-api.ts"],"sourcesContent":["import { clientMessageIdSchema } from \"../protocol/client-message-id.js\";\nimport * as z$1 from \"zod/v4\";\n//#region src/schemas/cli/space-send.ts\nconst selectorSchema = z$1.string().trim().min(1);\n/** The Agent View `space.send.request` data, emitted before publication. */\nconst spaceSendRequestReceiptSchema = z$1.strictObject({\n\tspaceId: selectorSchema,\n\tclientMessageId: clientMessageIdSchema,\n\ttargetProfileIds: z$1.array(selectorSchema),\n\tprofileId: selectorSchema.optional()\n});\n//#endregion\nexport { spaceSendRequestReceiptSchema };\n\n//# sourceMappingURL=space-send.js.map","import { createSpaceApi, type SpaceApi } from \"@openmeld/api-client\";\nimport { createCliApiClientFoundation } from \"./api-client-foundation\";\n\nexport type {\n SpaceApi,\n SpaceSignalsReadQuery,\n} from \"@openmeld/api-client\";\n\nexport function createCliSpaceApi(\n baseUrl: string,\n options: Parameters<typeof createCliApiClientFoundation>[1] = {}\n): SpaceApi {\n return createSpaceApi(createCliApiClientFoundation(baseUrl, options));\n}\n","import { openAsBlob } from \"node:fs\";\nimport { access } from \"node:fs/promises\";\nimport { basename } from \"node:path\";\nimport {\n type StructuredApiClientFailure,\n toStructuredApiClientFailure,\n} from \"@openmeld/api-client\";\nimport {\n resolveSpaceFileMimeType,\n SPACE_FILE_MAX_SIZE_BYTES,\n SPACE_MESSAGE_FILE_MAX_COUNT,\n spaceFileNameSchema,\n} from \"@openmeld/schemas\";\nimport type {\n OpenMeldRequestContext,\n SpaceMessageFileReference,\n} from \"@openmeld/schemas/types\";\nimport type { SpaceApi } from \"./cli-space-api\";\n\ntype PreparedSpaceFile = {\n bytes: Blob;\n name: string;\n mimeType: string;\n};\n\ntype SpaceFileCleanupFailure = {\n failure: StructuredApiClientFailure;\n fileId: string;\n};\n\nexport class SpaceSendFileError extends Error {\n readonly code: string;\n readonly requestId?: string;\n readonly status?: number;\n readonly upstreamCode?: string;\n\n constructor(input: {\n code: string;\n message: string;\n cause?: unknown;\n requestId?: string | null;\n status?: number | null;\n upstreamCode?: string | null;\n }) {\n super(input.message, { cause: input.cause });\n this.name = \"SpaceSendFileError\";\n this.code = input.code;\n if (input.requestId) {\n this.requestId = input.requestId;\n }\n if (input.status !== null && input.status !== undefined) {\n this.status = input.status;\n }\n if (input.upstreamCode) {\n this.upstreamCode = input.upstreamCode;\n }\n }\n}\n\nexport async function prepareRequestedSpaceSendFiles(input: {\n filePaths: readonly string[];\n}): Promise<readonly PreparedSpaceFile[]> {\n if (input.filePaths.length > SPACE_MESSAGE_FILE_MAX_COUNT) {\n throw new SpaceSendFileError({\n code: \"space.file.too_many\",\n message: `A Space message can include at most ${SPACE_MESSAGE_FILE_MAX_COUNT} files. The message was not sent.`,\n });\n }\n\n const prepared: PreparedSpaceFile[] = [];\n for (const rawPath of input.filePaths) {\n if (!rawPath.trim()) {\n throw new SpaceSendFileError({\n code: \"space.file.invalid_path\",\n message: \"File paths cannot be empty. The message was not sent.\",\n });\n }\n prepared.push(await prepareSpaceSendFile(rawPath));\n }\n return prepared;\n}\n\nexport async function uploadPreparedSpaceFiles(input: {\n files: readonly PreparedSpaceFile[];\n password?: string;\n requestContext: OpenMeldRequestContext;\n spaceApi: SpaceApi;\n spaceId: string;\n}): Promise<readonly SpaceMessageFileReference[]> {\n const uploaded: SpaceMessageFileReference[] = [];\n for (const file of input.files) {\n try {\n const descriptor = await input.spaceApi.uploadFile({\n bytes: file.bytes,\n clientMutationId: crypto.randomUUID(),\n mimeType: file.mimeType,\n name: file.name,\n origin: \"chat_upload\",\n parentId: null,\n requestContext: input.requestContext,\n spaceId: input.spaceId,\n ...(input.password === undefined\n ? {}\n : { spacePassword: input.password }),\n });\n uploaded.push({\n fileId: descriptor.id,\n revision: descriptor.latestRevision.revision,\n name: descriptor.name,\n mimeType: descriptor.latestRevision.mimeType,\n sizeBytes: descriptor.latestRevision.sizeBytes,\n });\n } catch (error) {\n const failure = toStructuredApiClientFailure(error);\n const cleanupFailures = await moveUploadedFilesToTrash({\n files: uploaded,\n password: input.password,\n requestContext: input.requestContext,\n spaceApi: input.spaceApi,\n spaceId: input.spaceId,\n });\n let cleanupMessage = \"\";\n if (uploaded.length > 0) {\n cleanupMessage =\n cleanupFailures.length === 0\n ? \" Files added earlier in this send were moved to Trash.\"\n : ` ${formatCleanupFailures({\n failures: cleanupFailures,\n passwordProtected: input.password !== undefined,\n profileId: input.requestContext.actorContext.openMeldProfileId,\n spaceId: input.spaceId,\n })}`;\n }\n throw new SpaceSendFileError({\n code: failure.code ?? \"space.file.upload_failed\",\n message: `Could not add file \"${file.name}\" to this Space. The message was not sent. ${failure.message}${cleanupMessage}`,\n cause: error,\n requestId: failure.requestId,\n status: failure.status,\n upstreamCode: failure.upstreamCode,\n });\n }\n }\n return uploaded;\n}\n\nasync function moveUploadedFilesToTrash(input: {\n files: readonly SpaceMessageFileReference[];\n password?: string;\n requestContext: OpenMeldRequestContext;\n spaceApi: SpaceApi;\n spaceId: string;\n}): Promise<readonly SpaceFileCleanupFailure[]> {\n const failures: SpaceFileCleanupFailure[] = [];\n for (const file of input.files) {\n try {\n await input.spaceApi.trashFileEntry({\n clientMutationId: crypto.randomUUID(),\n entryId: file.fileId,\n requestContext: input.requestContext,\n spaceId: input.spaceId,\n ...(input.password === undefined\n ? {}\n : { spacePassword: input.password }),\n });\n } catch (error) {\n failures.push({\n failure: toStructuredApiClientFailure(error),\n fileId: file.fileId,\n });\n }\n }\n return failures;\n}\n\nfunction formatCleanupFailures(input: {\n failures: readonly SpaceFileCleanupFailure[];\n passwordProtected: boolean;\n profileId: string;\n spaceId: string;\n}): string {\n const failureMessages = input.failures\n .map(({ failure, fileId }) => {\n const evidence = [\n failure.code ? `code ${failure.code}` : null,\n failure.requestId ? `request ${failure.requestId}` : null,\n ]\n .filter((value): value is string => value !== null)\n .join(\", \");\n const evidenceText = evidence ? ` (${evidence})` : \"\";\n return `Could not move file ${fileId} to Trash${evidenceText}: ${failure.message} Run \\`openmeld space files trash ${input.spaceId} ${fileId} --profile ${input.profileId}\\` to finish cleanup.`;\n })\n .join(\" \");\n const passwordGuidance = input.passwordProtected\n ? \" This Space is password protected. Add `--password` with the same Space password you used for this send; OpenMeld does not include the password in this message.\"\n : \"\";\n return `${failureMessages}${passwordGuidance}`;\n}\n\nasync function prepareSpaceSendFile(\n sourcePath: string\n): Promise<PreparedSpaceFile> {\n let bytes: Blob;\n try {\n // openAsBlob collapses missing paths into ERR_INVALID_ARG_VALUE on Node 24.\n // Preserve the filesystem error code for the user-facing failure category.\n await access(sourcePath);\n bytes = await openAsBlob(sourcePath);\n } catch (error) {\n const code = readNodeErrorCode(error);\n if (code === \"ENOENT\") {\n throw new SpaceSendFileError({\n code: \"space.file.file_not_found\",\n message: `File not found: ${sourcePath}. The message was not sent.`,\n cause: error,\n });\n }\n throw new SpaceSendFileError({\n code: \"space.file.file_unreadable\",\n message: `Could not read file: ${sourcePath}. The message was not sent.`,\n cause: error,\n });\n }\n\n if (bytes.size > SPACE_FILE_MAX_SIZE_BYTES) {\n throw new SpaceSendFileError({\n code: \"space.file.too_large\",\n message: `File exceeds the ${formatFileSizeLimit()} limit: ${sourcePath}. The message was not sent.`,\n });\n }\n\n const parsedName = spaceFileNameSchema.safeParse(basename(sourcePath));\n if (!parsedName.success) {\n throw new SpaceSendFileError({\n code: \"space.file.invalid_file_name\",\n message: `File name is invalid: ${sourcePath}. The message was not sent.`,\n });\n }\n\n return {\n bytes,\n name: parsedName.data,\n mimeType: resolveSpaceFileMimeType({ fileName: parsedName.data }),\n };\n}\n\nfunction readNodeErrorCode(error: unknown): string | null {\n if (!(error && typeof error === \"object\" && \"code\" in error)) {\n return null;\n }\n return typeof error.code === \"string\" ? error.code : null;\n}\n\nfunction formatFileSizeLimit(): string {\n return `${SPACE_FILE_MAX_SIZE_BYTES / (1024 * 1024)} MiB`;\n}\n","import { readFile } from \"node:fs/promises\";\nimport { createProjectsApi } from \"@openmeld/api-client\";\nimport { buildCanonicalRepositoryUrl } from \"@openmeld/projects\";\nimport {\n buildTargetWakeLifecycleId,\n executionContextSelectionSchema,\n} from \"@openmeld/schemas\";\nimport type {\n ExecutionContextAssignment,\n ExecutionContextSelection,\n Project,\n ProjectRepositorySettings,\n} from \"@openmeld/schemas/types\";\nimport { resolveBaseUrl } from \"../config/base-url\";\nimport {\n createSpaceSendInputConflictGuideError,\n createSpaceSendInputEmptyGuideError,\n createSpaceSendInputFileReadFailedGuideError,\n createSpaceSendInputRequiredGuideError,\n} from \"../runtime/dual-view-guide-catalog\";\nimport { createCliApiClientFoundation } from \"./api-client-foundation\";\n\ntype SelectedProjectWork = NonNullable<\n ExecutionContextAssignment[\"projectWork\"]\n>;\n\ntype SpaceTaskSelectionInput = {\n space: string;\n wakeTargets?: readonly string[];\n newTask?: boolean;\n forkFrom?: string;\n continueFrom?: string;\n taskAccess?: string;\n taskWorkspace?: string;\n projectWork?: SelectedProjectWork;\n};\n\ntype ResolveSpaceSendTextInput = {\n allowEmpty?: boolean;\n text?: string;\n stdin?: boolean;\n file?: string;\n readFromStdin?: () => Promise<string>;\n readFromFile?: (path: string) => Promise<string>;\n};\n\nexport function resolveSpaceTaskSelection(\n input: SpaceTaskSelectionInput\n): ExecutionContextSelection | undefined {\n const modes =\n Number(input.newTask === true) +\n Number(Boolean(input.forkFrom)) +\n Number(Boolean(input.continueFrom));\n if (\n modes === 0 &&\n !input.taskAccess &&\n !input.taskWorkspace &&\n !input.projectWork\n ) {\n return undefined;\n }\n if (modes > 1) {\n throw new Error(\n \"Choose only one of --new-task, --fork-from, or --continue-from.\"\n );\n }\n const targetProfileId = input.wakeTargets?.[0];\n if (!targetProfileId || input.wakeTargets?.length !== 1) {\n throw new Error(\"Task selection requires exactly one --wake <profile-id>.\");\n }\n const sourceSignalId = input.forkFrom ?? input.continueFrom;\n const sourceWakeId = sourceSignalId\n ? buildTargetWakeLifecycleId({\n spaceId: input.space,\n sourceSignalId,\n targetProfileId,\n })\n : undefined;\n const preferences = resolveTaskPreferences(input);\n let value: unknown;\n if (input.continueFrom) {\n value = { mode: \"resume\", sourceWakeId };\n } else if (input.forkFrom) {\n value = { mode: \"fork\", sourceWakeId, ...preferences };\n } else {\n value = { mode: input.newTask ? \"new\" : \"auto\", ...preferences };\n }\n const parsed = executionContextSelectionSchema.safeParse(value);\n if (!parsed.success) {\n throw new Error(\n parsed.error.issues[0]?.message ?? \"Invalid task selection.\"\n );\n }\n return parsed.data;\n}\n\nfunction resolveTaskPreferences(input: SpaceTaskSelectionInput) {\n if (input.continueFrom && (input.taskAccess || input.taskWorkspace)) {\n throw new Error(\n \"A continued task keeps its original file access and workspace. Start a new task to change them.\"\n );\n }\n if (input.projectWork && !input.newTask) {\n throw new Error(\n \"Choose --new-task when selecting a Project repository. A fork keeps its source workspace.\"\n );\n }\n if (input.projectWork && input.taskAccess === \"space_context\") {\n throw new Error(\n \"Project repository work requires read_only or workspace file access.\"\n );\n }\n return {\n access: input.taskAccess,\n workspace:\n input.taskWorkspace ?? (input.projectWork ? \"isolated\" : undefined),\n ...(input.projectWork ? { projectWork: input.projectWork } : {}),\n };\n}\n\nexport async function resolveCliProjectWork(input: {\n baseUrl?: string;\n projectSlug?: string;\n repositoryUrl?: string;\n}): Promise<SelectedProjectWork | undefined> {\n const projectSlug = input.projectSlug?.trim();\n if (!projectSlug) {\n if (input.repositoryUrl) {\n throw new Error(\"--repository requires --project.\");\n }\n return undefined;\n }\n const api = createProjectsApi(\n createCliApiClientFoundation(await resolveBaseUrl(input.baseUrl))\n );\n const listed = await api.list();\n const project = listed.projects.find(\n (candidate) => candidate.slug === projectSlug\n );\n if (!project || project.organizationId !== listed.organizationId) {\n throw new Error(\n `Project \"${projectSlug}\" is unavailable in the active Organization.`\n );\n }\n const response = await api.readRepositorySettings({ projectId: project.id });\n return selectCliProjectWork({\n project,\n repositoryUrl: input.repositoryUrl,\n settings: response.settings,\n });\n}\n\nexport function selectCliProjectWork(input: {\n project: Project;\n repositoryUrl?: string;\n settings: ProjectRepositorySettings;\n}): SelectedProjectWork {\n if (input.settings.projectId !== input.project.id) {\n throw new Error(\n \"Project repository settings changed. Refresh and try again.\"\n );\n }\n const requestedUrl = input.repositoryUrl\n ? buildCanonicalRepositoryUrl(input.repositoryUrl)\n : null;\n if (input.repositoryUrl && !requestedUrl) {\n throw new Error(\"--repository must be a valid Git repository URL.\");\n }\n const repositories = input.settings.repositories;\n const selected = requestedUrl\n ? repositories.find((candidate) => candidate.repositoryUrl === requestedUrl)\n : (repositories.find((candidate) => candidate.isDefault) ??\n (repositories.length === 1 ? repositories[0] : undefined));\n if (selected) {\n return {\n projectId: input.project.id,\n repositoryFingerprint: selected.repositoryFingerprint,\n };\n }\n if (requestedUrl) {\n throw new Error(\"That repository is not associated with this Project.\");\n }\n if (repositories.length === 0 && input.settings.legacyDefaultFingerprint) {\n return {\n projectId: input.project.id,\n repositoryFingerprint: input.settings.legacyDefaultFingerprint,\n };\n }\n throw new Error(\n repositories.length === 0\n ? \"This Project has no code repository. Configure one before starting code work.\"\n : \"This Project has several repositories. Choose one with --repository.\"\n );\n}\n\nexport async function resolveSpaceSendText(\n input: ResolveSpaceSendTextInput\n): Promise<string> {\n const textValue = String(input.text ?? \"\");\n const stdinEnabled = input.stdin === true;\n const filePath = String(input.file ?? \"\").trim();\n\n const hasTextSource = textValue.length > 0;\n const hasFileSource = filePath.length > 0;\n const sourceCount =\n Number(hasTextSource) + Number(stdinEnabled) + Number(hasFileSource);\n\n if (sourceCount === 0) {\n if (input.allowEmpty) {\n return \"\";\n }\n throw createSpaceSendInputRequiredGuideError();\n }\n if (sourceCount > 1) {\n throw createSpaceSendInputConflictGuideError();\n }\n\n let resolvedText = textValue;\n if (hasFileSource) {\n const readFromFile = input.readFromFile ?? readSpaceSendFile;\n try {\n resolvedText = await readFromFile(filePath);\n } catch (error) {\n throw createSpaceSendInputFileReadFailedGuideError(\n filePath,\n toErrorMessage(error)\n );\n }\n }\n if (stdinEnabled) {\n const readFromStdin = input.readFromStdin ?? readSpaceSendStdin;\n resolvedText = await readFromStdin();\n }\n\n if (resolvedText.trim().length === 0 && !input.allowEmpty) {\n throw createSpaceSendInputEmptyGuideError();\n }\n\n return resolvedText;\n}\n\nfunction readSpaceSendFile(path: string): Promise<string> {\n return readFile(path, \"utf8\");\n}\n\nfunction readSpaceSendStdin(): Promise<string> {\n return new Promise<string>((resolve, reject) => {\n const chunks: string[] = [];\n\n const cleanup = () => {\n process.stdin.off(\"data\", onData);\n process.stdin.off(\"end\", onEnd);\n process.stdin.off(\"error\", onError);\n };\n\n const onData = (chunk: string | Buffer) => {\n if (typeof chunk === \"string\") {\n chunks.push(chunk);\n return;\n }\n chunks.push(chunk.toString(\"utf8\"));\n };\n\n const onEnd = () => {\n cleanup();\n resolve(chunks.join(\"\"));\n };\n\n const onError = (error: Error) => {\n cleanup();\n reject(error);\n };\n\n process.stdin.setEncoding(\"utf8\");\n process.stdin.on(\"data\", onData);\n process.stdin.on(\"end\", onEnd);\n process.stdin.on(\"error\", onError);\n process.stdin.resume();\n });\n}\n\nfunction toErrorMessage(error: unknown): string {\n if (error instanceof Error && error.message.trim().length > 0) {\n return error.message;\n }\n return String(error ?? \"unknown error\");\n}\n","export function parseJsonResponse(raw: string): unknown {\n if (!raw.trim()) {\n return null;\n }\n try {\n return JSON.parse(raw);\n } catch {\n return null;\n }\n}\n","import { OpenMeldApiClientHttpError } from \"@openmeld/api-client\";\nimport { OPENMELD_HEADER_REQUEST_ID } from \"@openmeld/gateway-contract\";\nimport { gatewayErrorEnvelopeSchema } from \"@openmeld/schemas\";\nimport type { GatewayErrorCode } from \"@openmeld/schemas/types\";\nimport { parseJsonResponse } from \"./api-json\";\n\nconst FALLBACK_GATEWAY_HTTP_ERROR_CODE = \"gateway.http_error\" as const;\nconst GENERIC_NETWORK_ERROR_CODES = [\n \"network.timeout\",\n \"network.request_failed\",\n] as const;\n\ntype SafeParseResult<T> = { success: true; data: T } | { success: false };\n\ntype GatewayResponseSchema<T> = {\n safeParse: (value: unknown) => SafeParseResult<T>;\n};\n\nexport type GatewayResponseErrorCode =\n | GatewayErrorCode\n | typeof FALLBACK_GATEWAY_HTTP_ERROR_CODE\n | (typeof GENERIC_NETWORK_ERROR_CODES)[number]\n | string;\n\nexport type StructuredGatewayFailure = {\n code: GatewayResponseErrorCode | null;\n message: string;\n requestId: string | null;\n status: number | null;\n upstreamCode: string | null;\n};\n\nexport class GatewayHttpError extends Error {\n readonly code: GatewayResponseErrorCode;\n readonly requestId: string | null;\n readonly status: number;\n readonly rawBody: string;\n readonly upstreamCode: string | null;\n\n constructor(input: {\n code: GatewayResponseErrorCode;\n message: string;\n requestId?: string | null;\n status: number;\n rawBody: string;\n upstreamCode?: string | null;\n }) {\n super(input.message);\n this.name = \"GatewayHttpError\";\n this.code = input.code;\n this.requestId = normalizeOptionalText(input.requestId);\n this.status = input.status;\n this.rawBody = input.rawBody;\n this.upstreamCode = normalizeOptionalText(input.upstreamCode);\n }\n}\n\nexport async function readGatewayJsonResponse<T>(input: {\n response: Response;\n schema: GatewayResponseSchema<T>;\n invalidMessage: string;\n}): Promise<T> {\n const raw = await input.response.text();\n assertGatewayResponseOk({\n response: input.response,\n raw,\n });\n\n const parsed = input.schema.safeParse(parseJsonResponse(raw));\n if (!parsed.success) {\n throw new Error(input.invalidMessage);\n }\n return parsed.data;\n}\n\nexport async function readGatewayTextResponse(input: {\n response: Response;\n}): Promise<string> {\n const raw = await input.response.text();\n assertGatewayResponseOk({\n response: input.response,\n raw,\n });\n return raw;\n}\n\nexport function assertGatewayResponseOk(input: {\n response: Response;\n raw: string;\n}): void {\n if (input.response.ok) {\n return;\n }\n throw parseGatewayErrorResponse(input);\n}\n\nexport function parseGatewayErrorResponse(input: {\n response: Pick<Response, \"headers\" | \"status\">;\n raw: string;\n}): GatewayHttpError {\n const payload = parseJsonResponse(input.raw);\n const parsed = gatewayErrorEnvelopeSchema.safeParse(payload);\n const headerRequestId = normalizeOptionalText(\n input.response.headers.get(OPENMELD_HEADER_REQUEST_ID)\n );\n\n if (parsed.success) {\n return new GatewayHttpError({\n code: parsed.data.error.code,\n message: parsed.data.error.message,\n requestId: parsed.data.error.requestId || headerRequestId,\n status: input.response.status,\n rawBody: input.raw,\n upstreamCode: parsed.data.error.upstreamCode ?? null,\n });\n }\n\n const looseEnvelope = readLooseGatewayErrorEnvelope(payload);\n if (looseEnvelope) {\n return new GatewayHttpError({\n code: looseEnvelope.code ?? FALLBACK_GATEWAY_HTTP_ERROR_CODE,\n message:\n looseEnvelope.message ??\n `Gateway request failed with HTTP ${input.response.status}.`,\n requestId: looseEnvelope.requestId ?? headerRequestId,\n status: input.response.status,\n rawBody: input.raw,\n upstreamCode: looseEnvelope.upstreamCode,\n });\n }\n\n return new GatewayHttpError({\n code: FALLBACK_GATEWAY_HTTP_ERROR_CODE,\n message:\n normalizeOptionalText(input.raw) ??\n `Gateway request failed with HTTP ${input.response.status}.`,\n requestId: headerRequestId,\n status: input.response.status,\n rawBody: input.raw,\n upstreamCode: null,\n });\n}\n\nexport function toStructuredGatewayFailure(\n error: unknown\n): StructuredGatewayFailure {\n if (error instanceof OpenMeldApiClientHttpError) {\n return {\n code: error.code,\n message: normalizeFailureMessage(error.message),\n requestId: error.requestId,\n status: error.status,\n upstreamCode: error.upstreamCode,\n };\n }\n\n if (error instanceof GatewayHttpError) {\n return {\n code: error.code,\n message: normalizeFailureMessage(error.message),\n requestId: error.requestId,\n status: error.status,\n upstreamCode: error.upstreamCode,\n };\n }\n\n const genericErrorCode = readGenericErrorCode(error);\n if (genericErrorCode) {\n return {\n code: genericErrorCode,\n message: normalizeFailureMessage(\n error instanceof Error ? error.message : String(error)\n ),\n requestId: null,\n status: null,\n upstreamCode: null,\n };\n }\n\n return {\n code: null,\n message: normalizeFailureMessage(\n error instanceof Error ? error.message : String(error)\n ),\n requestId: null,\n status: null,\n upstreamCode: null,\n };\n}\n\nfunction normalizeOptionalText(value: unknown): string | null {\n const normalized = String(value ?? \"\").trim();\n return normalized.length > 0 ? normalized : null;\n}\n\nfunction normalizeFailureMessage(value: unknown): string {\n return normalizeOptionalText(value) ?? \"Unknown error.\";\n}\n\nfunction readGenericErrorCode(value: unknown): GatewayResponseErrorCode | null {\n if (!value || typeof value !== \"object\" || !(\"code\" in value)) {\n return null;\n }\n\n const normalized = normalizeOptionalText(\n (value as { code?: unknown }).code ?? null\n );\n return normalized as GatewayResponseErrorCode | null;\n}\n\nfunction readLooseGatewayErrorEnvelope(value: unknown): {\n code: string | null;\n message: string | null;\n requestId: string | null;\n upstreamCode: string | null;\n} | null {\n if (!value || typeof value !== \"object\") {\n return null;\n }\n\n const record = value as {\n error?: {\n code?: unknown;\n message?: unknown;\n requestId?: unknown;\n upstreamCode?: unknown;\n } | null;\n };\n const error = record.error;\n if (!error || typeof error !== \"object\") {\n return null;\n }\n\n const code = normalizeOptionalText(error.code);\n const message = normalizeOptionalText(error.message);\n const requestId = normalizeOptionalText(error.requestId);\n const upstreamCode = normalizeOptionalText(error.upstreamCode);\n if (!(code || message || requestId || upstreamCode)) {\n return null;\n }\n\n return {\n code,\n message,\n requestId,\n upstreamCode,\n };\n}\n","import type { SpaceMeta } from \"@openmeld/protocol\";\nimport { spaceMetaSchema } from \"@openmeld/schemas\";\n\ntype SpaceMetaParseOperation =\n | \"createSpaceMeta\"\n | \"fetchSpaceMeta\"\n | \"updateSpaceMeta\";\n\nexport function parseSpaceMetaPayload(input: {\n data: unknown;\n endpoint: string;\n operation: SpaceMetaParseOperation;\n}): SpaceMeta {\n try {\n const validation = spaceMetaSchema.safeParse(input.data);\n if (!validation.success) {\n const reason =\n validation.error.issues[0]?.message ??\n \"space meta payload does not match schema\";\n throw new Error(reason);\n }\n return validation.data;\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error);\n throw new Error(\n `${input.operation} received invalid response payload from ${input.endpoint}: ${reason}; raw=${JSON.stringify(input.data)}`\n );\n }\n}\n\nexport function parseSpaceMetaResponse(input: {\n raw: string;\n endpoint: string;\n operation: Extract<\n SpaceMetaParseOperation,\n \"fetchSpaceMeta\" | \"updateSpaceMeta\"\n >;\n}): SpaceMeta {\n try {\n return parseSpaceMetaPayload({\n data: JSON.parse(input.raw) as unknown,\n endpoint: input.endpoint,\n operation: input.operation,\n });\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error);\n throw new Error(\n `${input.operation} received invalid response payload from ${input.endpoint}: ${reason}; raw=${input.raw}`\n );\n }\n}\n","import type { SpaceMeta } from \"@openmeld/protocol\";\nimport type { OpenMeldRequestContext } from \"@openmeld/schemas/types\";\nimport { buildOpenMeldRequestContextHeadersWithAuth } from \"../config/request-headers\";\nimport { toSpaceMetaUrl } from \"../protocol/urls\";\nimport { fetchSpaceRequestWithTimeout } from \"./fetch-with-timeout\";\nimport { readGatewayTextResponse } from \"./gateway-response\";\nimport { parseSpaceMetaResponse } from \"./space-meta-response\";\n\ntype SpaceMetaApiInput = {\n requestContext: OpenMeldRequestContext;\n baseUrl: string;\n space: string;\n password?: string;\n};\n\nexport async function fetchSpaceMeta(\n input: SpaceMetaApiInput\n): Promise<SpaceMeta> {\n const endpoint = toSpaceMetaUrl(input.baseUrl, input.space);\n const response = await fetchSpaceRequestWithTimeout({\n url: endpoint,\n operation: \"space.fetch_meta\",\n init: {\n method: \"GET\",\n headers: await buildOpenMeldRequestContextHeadersWithAuth({\n requestUrl: endpoint,\n requestContext: input.requestContext,\n spacePassword: input.password,\n }),\n },\n });\n const raw = await readGatewayTextResponse({ response });\n\n return parseSpaceMetaResponse({\n raw,\n endpoint,\n operation: \"fetchSpaceMeta\",\n });\n}\n\nexport async function updateSpaceMeta(\n input: SpaceMetaApiInput & {\n purpose?: string;\n guide?: string;\n }\n): Promise<SpaceMeta> {\n const endpoint = toSpaceMetaUrl(input.baseUrl, input.space);\n const headers = await buildOpenMeldRequestContextHeadersWithAuth({\n requestUrl: endpoint,\n requestContext: input.requestContext,\n spacePassword: input.password,\n });\n headers[\"content-type\"] = \"application/json\";\n\n const response = await fetchSpaceRequestWithTimeout({\n url: endpoint,\n operation: \"space.update_meta\",\n init: {\n method: \"PATCH\",\n headers,\n body: JSON.stringify({\n ...(input.purpose === undefined ? {} : { purpose: input.purpose }),\n ...(input.guide === undefined ? {} : { guide: input.guide }),\n }),\n },\n });\n const raw = await readGatewayTextResponse({ response });\n\n return parseSpaceMetaResponse({\n raw,\n endpoint,\n operation: \"updateSpaceMeta\",\n });\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"meta-api-BpSn7MBy.js","names":["record"],"sources":["../../../packages/schemas/dist/schemas/cli/space-send.js","../src/space/cli-space-api.ts","../src/space/send-files.ts","../src/space/send-input.ts","../src/space/api-json.ts","../src/space/gateway-response.ts","../src/space/space-meta-response.ts","../src/space/meta-api.ts"],"sourcesContent":["import { clientMessageIdSchema } from \"../protocol/client-message-id.js\";\nimport * as z$1 from \"zod/v4\";\n//#region src/schemas/cli/space-send.ts\nconst selectorSchema = z$1.string().trim().min(1);\n/** The Agent View `space.send.request` data, emitted before publication. */\nconst spaceSendRequestReceiptSchema = z$1.strictObject({\n\tspaceId: selectorSchema,\n\tclientMessageId: clientMessageIdSchema,\n\ttargetProfileIds: z$1.array(selectorSchema),\n\tprofileId: selectorSchema.optional()\n});\n//#endregion\nexport { spaceSendRequestReceiptSchema };\n\n//# sourceMappingURL=space-send.js.map","import { createSpaceApi, type SpaceApi } from \"@openmeld/api-client\";\nimport { createCliApiClientFoundation } from \"./api-client-foundation\";\n\nexport type {\n SpaceApi,\n SpaceSignalsReadQuery,\n} from \"@openmeld/api-client\";\n\nexport function createCliSpaceApi(\n baseUrl: string,\n options: Parameters<typeof createCliApiClientFoundation>[1] = {}\n): SpaceApi {\n return createSpaceApi(createCliApiClientFoundation(baseUrl, options));\n}\n","import { openAsBlob } from \"node:fs\";\nimport { access } from \"node:fs/promises\";\nimport { basename } from \"node:path\";\nimport {\n type StructuredApiClientFailure,\n toStructuredApiClientFailure,\n} from \"@openmeld/api-client\";\nimport {\n resolveSpaceFileMimeType,\n SPACE_FILE_MAX_SIZE_BYTES,\n SPACE_MESSAGE_FILE_MAX_COUNT,\n spaceFileNameSchema,\n} from \"@openmeld/schemas\";\nimport type {\n OpenMeldRequestContext,\n SpaceMessageFileReference,\n} from \"@openmeld/schemas/types\";\nimport type { SpaceApi } from \"./cli-space-api\";\n\ntype PreparedSpaceFile = {\n bytes: Blob;\n name: string;\n mimeType: string;\n};\n\ntype SpaceFileCleanupFailure = {\n failure: StructuredApiClientFailure;\n fileId: string;\n};\n\nexport class SpaceSendFileError extends Error {\n readonly code: string;\n readonly requestId?: string;\n readonly status?: number;\n readonly upstreamCode?: string;\n\n constructor(input: {\n code: string;\n message: string;\n cause?: unknown;\n requestId?: string | null;\n status?: number | null;\n upstreamCode?: string | null;\n }) {\n super(input.message, { cause: input.cause });\n this.name = \"SpaceSendFileError\";\n this.code = input.code;\n if (input.requestId) {\n this.requestId = input.requestId;\n }\n if (input.status !== null && input.status !== undefined) {\n this.status = input.status;\n }\n if (input.upstreamCode) {\n this.upstreamCode = input.upstreamCode;\n }\n }\n}\n\nexport async function prepareRequestedSpaceSendFiles(input: {\n filePaths: readonly string[];\n}): Promise<readonly PreparedSpaceFile[]> {\n if (input.filePaths.length > SPACE_MESSAGE_FILE_MAX_COUNT) {\n throw new SpaceSendFileError({\n code: \"space.file.too_many\",\n message: `A Space message can include at most ${SPACE_MESSAGE_FILE_MAX_COUNT} files. The message was not sent.`,\n });\n }\n\n const prepared: PreparedSpaceFile[] = [];\n for (const rawPath of input.filePaths) {\n if (!rawPath.trim()) {\n throw new SpaceSendFileError({\n code: \"space.file.invalid_path\",\n message: \"File paths cannot be empty. The message was not sent.\",\n });\n }\n prepared.push(await prepareSpaceSendFile(rawPath));\n }\n return prepared;\n}\n\nexport async function uploadPreparedSpaceFiles(input: {\n files: readonly PreparedSpaceFile[];\n password?: string;\n requestContext: OpenMeldRequestContext;\n spaceApi: SpaceApi;\n spaceId: string;\n}): Promise<readonly SpaceMessageFileReference[]> {\n const uploaded: SpaceMessageFileReference[] = [];\n for (const file of input.files) {\n try {\n const descriptor = await input.spaceApi.uploadFile({\n bytes: file.bytes,\n clientMutationId: crypto.randomUUID(),\n mimeType: file.mimeType,\n name: file.name,\n origin: \"chat_upload\",\n parentId: null,\n requestContext: input.requestContext,\n spaceId: input.spaceId,\n ...(input.password === undefined\n ? {}\n : { spacePassword: input.password }),\n });\n uploaded.push({\n fileId: descriptor.id,\n revision: descriptor.latestRevision.revision,\n name: descriptor.name,\n mimeType: descriptor.latestRevision.mimeType,\n sizeBytes: descriptor.latestRevision.sizeBytes,\n });\n } catch (error) {\n const failure = toStructuredApiClientFailure(error);\n const cleanupFailures = await moveUploadedFilesToTrash({\n files: uploaded,\n password: input.password,\n requestContext: input.requestContext,\n spaceApi: input.spaceApi,\n spaceId: input.spaceId,\n });\n let cleanupMessage = \"\";\n if (uploaded.length > 0) {\n cleanupMessage =\n cleanupFailures.length === 0\n ? \" Files added earlier in this send were moved to Trash.\"\n : ` ${formatCleanupFailures({\n failures: cleanupFailures,\n passwordProtected: input.password !== undefined,\n profileId: input.requestContext.actorContext.openMeldProfileId,\n spaceId: input.spaceId,\n })}`;\n }\n throw new SpaceSendFileError({\n code: failure.code ?? \"space.file.upload_failed\",\n message: `Could not add file \"${file.name}\" to this Space. The message was not sent. ${failure.message}${cleanupMessage}`,\n cause: error,\n requestId: failure.requestId,\n status: failure.status,\n upstreamCode: failure.upstreamCode,\n });\n }\n }\n return uploaded;\n}\n\nasync function moveUploadedFilesToTrash(input: {\n files: readonly SpaceMessageFileReference[];\n password?: string;\n requestContext: OpenMeldRequestContext;\n spaceApi: SpaceApi;\n spaceId: string;\n}): Promise<readonly SpaceFileCleanupFailure[]> {\n const failures: SpaceFileCleanupFailure[] = [];\n for (const file of input.files) {\n try {\n await input.spaceApi.trashFileEntry({\n clientMutationId: crypto.randomUUID(),\n entryId: file.fileId,\n requestContext: input.requestContext,\n spaceId: input.spaceId,\n ...(input.password === undefined\n ? {}\n : { spacePassword: input.password }),\n });\n } catch (error) {\n failures.push({\n failure: toStructuredApiClientFailure(error),\n fileId: file.fileId,\n });\n }\n }\n return failures;\n}\n\nfunction formatCleanupFailures(input: {\n failures: readonly SpaceFileCleanupFailure[];\n passwordProtected: boolean;\n profileId: string;\n spaceId: string;\n}): string {\n const failureMessages = input.failures\n .map(({ failure, fileId }) => {\n const evidence = [\n failure.code ? `code ${failure.code}` : null,\n failure.requestId ? `request ${failure.requestId}` : null,\n ]\n .filter((value): value is string => value !== null)\n .join(\", \");\n const evidenceText = evidence ? ` (${evidence})` : \"\";\n return `Could not move file ${fileId} to Trash${evidenceText}: ${failure.message} Run \\`openmeld space files trash ${input.spaceId} ${fileId} --profile ${input.profileId}\\` to finish cleanup.`;\n })\n .join(\" \");\n const passwordGuidance = input.passwordProtected\n ? \" This Space is password protected. Add `--password` with the same Space password you used for this send; OpenMeld does not include the password in this message.\"\n : \"\";\n return `${failureMessages}${passwordGuidance}`;\n}\n\nasync function prepareSpaceSendFile(\n sourcePath: string\n): Promise<PreparedSpaceFile> {\n let bytes: Blob;\n try {\n // openAsBlob collapses missing paths into ERR_INVALID_ARG_VALUE on Node 24.\n // Preserve the filesystem error code for the user-facing failure category.\n await access(sourcePath);\n bytes = await openAsBlob(sourcePath);\n } catch (error) {\n const code = readNodeErrorCode(error);\n if (code === \"ENOENT\") {\n throw new SpaceSendFileError({\n code: \"space.file.file_not_found\",\n message: `File not found: ${sourcePath}. The message was not sent.`,\n cause: error,\n });\n }\n throw new SpaceSendFileError({\n code: \"space.file.file_unreadable\",\n message: `Could not read file: ${sourcePath}. The message was not sent.`,\n cause: error,\n });\n }\n\n if (bytes.size > SPACE_FILE_MAX_SIZE_BYTES) {\n throw new SpaceSendFileError({\n code: \"space.file.too_large\",\n message: `File exceeds the ${formatFileSizeLimit()} limit: ${sourcePath}. The message was not sent.`,\n });\n }\n\n const parsedName = spaceFileNameSchema.safeParse(basename(sourcePath));\n if (!parsedName.success) {\n throw new SpaceSendFileError({\n code: \"space.file.invalid_file_name\",\n message: `File name is invalid: ${sourcePath}. The message was not sent.`,\n });\n }\n\n return {\n bytes,\n name: parsedName.data,\n mimeType: resolveSpaceFileMimeType({ fileName: parsedName.data }),\n };\n}\n\nfunction readNodeErrorCode(error: unknown): string | null {\n if (!(error && typeof error === \"object\" && \"code\" in error)) {\n return null;\n }\n return typeof error.code === \"string\" ? error.code : null;\n}\n\nfunction formatFileSizeLimit(): string {\n return `${SPACE_FILE_MAX_SIZE_BYTES / (1024 * 1024)} MiB`;\n}\n","import { readFile } from \"node:fs/promises\";\nimport { createProjectsApi } from \"@openmeld/api-client\";\nimport { buildCanonicalRepositoryUrl } from \"@openmeld/projects\";\nimport {\n buildTargetWakeLifecycleId,\n executionContextSelectionSchema,\n} from \"@openmeld/schemas\";\nimport type {\n ExecutionContextAssignment,\n ExecutionContextSelection,\n Project,\n ProjectRepositorySettings,\n} from \"@openmeld/schemas/types\";\nimport { resolveBaseUrl } from \"../config/base-url\";\nimport {\n createSpaceSendInputConflictGuideError,\n createSpaceSendInputEmptyGuideError,\n createSpaceSendInputFileReadFailedGuideError,\n createSpaceSendInputRequiredGuideError,\n} from \"../runtime/dual-view-guide-catalog\";\nimport { createCliApiClientFoundation } from \"./api-client-foundation\";\n\ntype SelectedProjectWork = NonNullable<\n ExecutionContextAssignment[\"projectWork\"]\n>;\n\ntype SpaceTaskSelectionInput = {\n space: string;\n wakeTargets?: readonly string[];\n newTask?: boolean;\n forkFrom?: string;\n continueFrom?: string;\n taskAccess?: string;\n taskWorkspace?: string;\n projectWork?: SelectedProjectWork;\n};\n\ntype ResolveSpaceSendTextInput = {\n allowEmpty?: boolean;\n text?: string;\n stdin?: boolean;\n file?: string;\n readFromStdin?: () => Promise<string>;\n readFromFile?: (path: string) => Promise<string>;\n};\n\nexport function resolveSpaceTaskSelection(\n input: SpaceTaskSelectionInput\n): ExecutionContextSelection | undefined {\n const modes =\n Number(input.newTask === true) +\n Number(Boolean(input.forkFrom)) +\n Number(Boolean(input.continueFrom));\n if (\n modes === 0 &&\n !input.taskAccess &&\n !input.taskWorkspace &&\n !input.projectWork\n ) {\n return undefined;\n }\n if (modes > 1) {\n throw new Error(\n \"Choose only one of --new-task, --fork-from, or --continue-from.\"\n );\n }\n const targetProfileId = input.wakeTargets?.[0];\n if (!targetProfileId || input.wakeTargets?.length !== 1) {\n throw new Error(\"Task selection requires exactly one --wake <profile-id>.\");\n }\n const sourceSignalId = input.forkFrom ?? input.continueFrom;\n const sourceWakeId = sourceSignalId\n ? buildTargetWakeLifecycleId({\n spaceId: input.space,\n sourceSignalId,\n targetProfileId,\n })\n : undefined;\n const preferences = resolveTaskPreferences(input);\n let value: unknown;\n if (input.continueFrom) {\n value = { mode: \"resume\", sourceWakeId };\n } else if (input.forkFrom) {\n value = { mode: \"fork\", sourceWakeId, ...preferences };\n } else {\n value = { mode: input.newTask ? \"new\" : \"auto\", ...preferences };\n }\n const parsed = executionContextSelectionSchema.safeParse(value);\n if (!parsed.success) {\n throw new Error(\n parsed.error.issues[0]?.message ?? \"Invalid task selection.\"\n );\n }\n return parsed.data;\n}\n\nfunction resolveTaskPreferences(input: SpaceTaskSelectionInput) {\n if (input.continueFrom && (input.taskAccess || input.taskWorkspace)) {\n throw new Error(\n \"A continued task keeps its original file access and workspace. Start a new task to change them.\"\n );\n }\n if (input.projectWork && !input.newTask) {\n throw new Error(\n \"Choose --new-task when selecting a Project repository. A fork keeps its source workspace.\"\n );\n }\n if (input.projectWork && input.taskAccess === \"space_context\") {\n throw new Error(\n \"Project repository work requires read_only or workspace file access.\"\n );\n }\n return {\n access: input.taskAccess,\n workspace:\n input.taskWorkspace ?? (input.projectWork ? \"isolated\" : undefined),\n ...(input.projectWork ? { projectWork: input.projectWork } : {}),\n };\n}\n\nexport async function resolveCliProjectWork(input: {\n baseUrl?: string;\n projectSlug?: string;\n repositoryUrl?: string;\n}): Promise<SelectedProjectWork | undefined> {\n const projectSlug = input.projectSlug?.trim();\n if (!projectSlug) {\n if (input.repositoryUrl) {\n throw new Error(\"--repository requires --project.\");\n }\n return undefined;\n }\n const api = createProjectsApi(\n createCliApiClientFoundation(await resolveBaseUrl(input.baseUrl))\n );\n const listed = await api.list();\n const project = listed.projects.find(\n (candidate) => candidate.slug === projectSlug\n );\n if (!project || project.organizationId !== listed.organizationId) {\n throw new Error(\n `Project \"${projectSlug}\" is unavailable in the active Organization.`\n );\n }\n const response = await api.readRepositorySettings({ projectId: project.id });\n return selectCliProjectWork({\n project,\n repositoryUrl: input.repositoryUrl,\n settings: response.settings,\n });\n}\n\nexport function selectCliProjectWork(input: {\n project: Project;\n repositoryUrl?: string;\n settings: ProjectRepositorySettings;\n}): SelectedProjectWork {\n if (input.settings.projectId !== input.project.id) {\n throw new Error(\n \"Project repository settings changed. Refresh and try again.\"\n );\n }\n const requestedUrl = input.repositoryUrl\n ? buildCanonicalRepositoryUrl(input.repositoryUrl)\n : null;\n if (input.repositoryUrl && !requestedUrl) {\n throw new Error(\"--repository must be a valid Git repository URL.\");\n }\n const repositories = input.settings.repositories;\n const selected = requestedUrl\n ? repositories.find((candidate) => candidate.repositoryUrl === requestedUrl)\n : (repositories.find((candidate) => candidate.isDefault) ??\n (repositories.length === 1 ? repositories[0] : undefined));\n if (selected) {\n return {\n projectId: input.project.id,\n repositoryFingerprint: selected.repositoryFingerprint,\n };\n }\n if (requestedUrl) {\n throw new Error(\"That repository is not associated with this Project.\");\n }\n if (repositories.length === 0 && input.settings.legacyDefaultFingerprint) {\n return {\n projectId: input.project.id,\n repositoryFingerprint: input.settings.legacyDefaultFingerprint,\n };\n }\n throw new Error(\n repositories.length === 0\n ? \"This Project has no code repository. Configure one before starting code work.\"\n : \"This Project has several repositories. Choose one with --repository.\"\n );\n}\n\nexport async function resolveSpaceSendText(\n input: ResolveSpaceSendTextInput\n): Promise<string> {\n const textValue = String(input.text ?? \"\");\n const stdinEnabled = input.stdin === true;\n const filePath = String(input.file ?? \"\").trim();\n\n const hasTextSource = textValue.length > 0;\n const hasFileSource = filePath.length > 0;\n const sourceCount =\n Number(hasTextSource) + Number(stdinEnabled) + Number(hasFileSource);\n\n if (sourceCount === 0) {\n if (input.allowEmpty) {\n return \"\";\n }\n throw createSpaceSendInputRequiredGuideError();\n }\n if (sourceCount > 1) {\n throw createSpaceSendInputConflictGuideError();\n }\n\n let resolvedText = textValue;\n if (hasFileSource) {\n const readFromFile = input.readFromFile ?? readSpaceSendFile;\n try {\n resolvedText = await readFromFile(filePath);\n } catch (error) {\n throw createSpaceSendInputFileReadFailedGuideError(\n filePath,\n toErrorMessage(error)\n );\n }\n }\n if (stdinEnabled) {\n const readFromStdin = input.readFromStdin ?? readSpaceSendStdin;\n resolvedText = await readFromStdin();\n }\n\n if (resolvedText.trim().length === 0 && !input.allowEmpty) {\n throw createSpaceSendInputEmptyGuideError();\n }\n\n return resolvedText;\n}\n\nfunction readSpaceSendFile(path: string): Promise<string> {\n return readFile(path, \"utf8\");\n}\n\nfunction readSpaceSendStdin(): Promise<string> {\n return new Promise<string>((resolve, reject) => {\n const chunks: string[] = [];\n\n const cleanup = () => {\n process.stdin.off(\"data\", onData);\n process.stdin.off(\"end\", onEnd);\n process.stdin.off(\"error\", onError);\n };\n\n const onData = (chunk: string | Buffer) => {\n if (typeof chunk === \"string\") {\n chunks.push(chunk);\n return;\n }\n chunks.push(chunk.toString(\"utf8\"));\n };\n\n const onEnd = () => {\n cleanup();\n resolve(chunks.join(\"\"));\n };\n\n const onError = (error: Error) => {\n cleanup();\n reject(error);\n };\n\n process.stdin.setEncoding(\"utf8\");\n process.stdin.on(\"data\", onData);\n process.stdin.on(\"end\", onEnd);\n process.stdin.on(\"error\", onError);\n process.stdin.resume();\n });\n}\n\nfunction toErrorMessage(error: unknown): string {\n if (error instanceof Error && error.message.trim().length > 0) {\n return error.message;\n }\n return String(error ?? \"unknown error\");\n}\n","export function parseJsonResponse(raw: string): unknown {\n if (!raw.trim()) {\n return null;\n }\n try {\n return JSON.parse(raw);\n } catch {\n return null;\n }\n}\n","import { OpenMeldApiClientHttpError } from \"@openmeld/api-client\";\nimport { OPENMELD_HEADER_REQUEST_ID } from \"@openmeld/gateway-contract\";\nimport { gatewayErrorEnvelopeSchema } from \"@openmeld/schemas\";\nimport type { GatewayErrorCode } from \"@openmeld/schemas/types\";\nimport { parseJsonResponse } from \"./api-json\";\n\nconst FALLBACK_GATEWAY_HTTP_ERROR_CODE = \"gateway.http_error\" as const;\nconst GENERIC_NETWORK_ERROR_CODES = [\n \"network.timeout\",\n \"network.request_failed\",\n] as const;\n\ntype SafeParseResult<T> = { success: true; data: T } | { success: false };\n\ntype GatewayResponseSchema<T> = {\n safeParse: (value: unknown) => SafeParseResult<T>;\n};\n\nexport type GatewayResponseErrorCode =\n | GatewayErrorCode\n | typeof FALLBACK_GATEWAY_HTTP_ERROR_CODE\n | (typeof GENERIC_NETWORK_ERROR_CODES)[number]\n | string;\n\nexport type StructuredGatewayFailure = {\n code: GatewayResponseErrorCode | null;\n message: string;\n requestId: string | null;\n status: number | null;\n upstreamCode: string | null;\n};\n\nexport class GatewayHttpError extends Error {\n readonly code: GatewayResponseErrorCode;\n readonly requestId: string | null;\n readonly status: number;\n readonly rawBody: string;\n readonly upstreamCode: string | null;\n\n constructor(input: {\n code: GatewayResponseErrorCode;\n message: string;\n requestId?: string | null;\n status: number;\n rawBody: string;\n upstreamCode?: string | null;\n }) {\n super(input.message);\n this.name = \"GatewayHttpError\";\n this.code = input.code;\n this.requestId = normalizeOptionalText(input.requestId);\n this.status = input.status;\n this.rawBody = input.rawBody;\n this.upstreamCode = normalizeOptionalText(input.upstreamCode);\n }\n}\n\nexport async function readGatewayJsonResponse<T>(input: {\n response: Response;\n schema: GatewayResponseSchema<T>;\n invalidMessage: string;\n}): Promise<T> {\n const raw = await input.response.text();\n assertGatewayResponseOk({\n response: input.response,\n raw,\n });\n\n const parsed = input.schema.safeParse(parseJsonResponse(raw));\n if (!parsed.success) {\n throw new Error(input.invalidMessage);\n }\n return parsed.data;\n}\n\nexport async function readGatewayTextResponse(input: {\n response: Response;\n}): Promise<string> {\n const raw = await input.response.text();\n assertGatewayResponseOk({\n response: input.response,\n raw,\n });\n return raw;\n}\n\nexport function assertGatewayResponseOk(input: {\n response: Response;\n raw: string;\n}): void {\n if (input.response.ok) {\n return;\n }\n throw parseGatewayErrorResponse(input);\n}\n\nexport function parseGatewayErrorResponse(input: {\n response: Pick<Response, \"headers\" | \"status\">;\n raw: string;\n}): GatewayHttpError {\n const payload = parseJsonResponse(input.raw);\n const parsed = gatewayErrorEnvelopeSchema.safeParse(payload);\n const headerRequestId = normalizeOptionalText(\n input.response.headers.get(OPENMELD_HEADER_REQUEST_ID)\n );\n\n if (parsed.success) {\n return new GatewayHttpError({\n code: parsed.data.error.code,\n message: parsed.data.error.message,\n requestId: parsed.data.error.requestId || headerRequestId,\n status: input.response.status,\n rawBody: input.raw,\n upstreamCode: parsed.data.error.upstreamCode ?? null,\n });\n }\n\n const looseEnvelope = readLooseGatewayErrorEnvelope(payload);\n if (looseEnvelope) {\n return new GatewayHttpError({\n code: looseEnvelope.code ?? FALLBACK_GATEWAY_HTTP_ERROR_CODE,\n message:\n looseEnvelope.message ??\n `Gateway request failed with HTTP ${input.response.status}.`,\n requestId: looseEnvelope.requestId ?? headerRequestId,\n status: input.response.status,\n rawBody: input.raw,\n upstreamCode: looseEnvelope.upstreamCode,\n });\n }\n\n return new GatewayHttpError({\n code: FALLBACK_GATEWAY_HTTP_ERROR_CODE,\n message:\n normalizeOptionalText(input.raw) ??\n `Gateway request failed with HTTP ${input.response.status}.`,\n requestId: headerRequestId,\n status: input.response.status,\n rawBody: input.raw,\n upstreamCode: null,\n });\n}\n\nexport function toStructuredGatewayFailure(\n error: unknown\n): StructuredGatewayFailure {\n if (error instanceof OpenMeldApiClientHttpError) {\n return {\n code: error.code,\n message: normalizeFailureMessage(error.message),\n requestId: error.requestId,\n status: error.status,\n upstreamCode: error.upstreamCode,\n };\n }\n\n if (error instanceof GatewayHttpError) {\n return {\n code: error.code,\n message: normalizeFailureMessage(error.message),\n requestId: error.requestId,\n status: error.status,\n upstreamCode: error.upstreamCode,\n };\n }\n\n const genericErrorCode = readGenericErrorCode(error);\n if (genericErrorCode) {\n return {\n code: genericErrorCode,\n message: normalizeFailureMessage(\n error instanceof Error ? error.message : String(error)\n ),\n requestId: null,\n status: null,\n upstreamCode: null,\n };\n }\n\n return {\n code: null,\n message: normalizeFailureMessage(\n error instanceof Error ? error.message : String(error)\n ),\n requestId: null,\n status: null,\n upstreamCode: null,\n };\n}\n\nfunction normalizeOptionalText(value: unknown): string | null {\n const normalized = String(value ?? \"\").trim();\n return normalized.length > 0 ? normalized : null;\n}\n\nfunction normalizeFailureMessage(value: unknown): string {\n return normalizeOptionalText(value) ?? \"Unknown error.\";\n}\n\nfunction readGenericErrorCode(value: unknown): GatewayResponseErrorCode | null {\n if (!value || typeof value !== \"object\" || !(\"code\" in value)) {\n return null;\n }\n\n const normalized = normalizeOptionalText(\n (value as { code?: unknown }).code ?? null\n );\n return normalized as GatewayResponseErrorCode | null;\n}\n\nfunction readLooseGatewayErrorEnvelope(value: unknown): {\n code: string | null;\n message: string | null;\n requestId: string | null;\n upstreamCode: string | null;\n} | null {\n if (!value || typeof value !== \"object\") {\n return null;\n }\n\n const record = value as {\n error?: {\n code?: unknown;\n message?: unknown;\n requestId?: unknown;\n upstreamCode?: unknown;\n } | null;\n };\n const error = record.error;\n if (!error || typeof error !== \"object\") {\n return null;\n }\n\n const code = normalizeOptionalText(error.code);\n const message = normalizeOptionalText(error.message);\n const requestId = normalizeOptionalText(error.requestId);\n const upstreamCode = normalizeOptionalText(error.upstreamCode);\n if (!(code || message || requestId || upstreamCode)) {\n return null;\n }\n\n return {\n code,\n message,\n requestId,\n upstreamCode,\n };\n}\n","import type { SpaceMeta } from \"@openmeld/protocol\";\nimport { spaceMetaSchema } from \"@openmeld/schemas\";\n\ntype SpaceMetaParseOperation =\n | \"createSpaceMeta\"\n | \"fetchSpaceMeta\"\n | \"updateSpaceMeta\";\n\nexport function parseSpaceMetaPayload(input: {\n data: unknown;\n endpoint: string;\n operation: SpaceMetaParseOperation;\n}): SpaceMeta {\n try {\n const validation = spaceMetaSchema.safeParse(input.data);\n if (!validation.success) {\n const reason =\n validation.error.issues[0]?.message ??\n \"space meta payload does not match schema\";\n throw new Error(reason);\n }\n return validation.data;\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error);\n throw new Error(\n `${input.operation} received invalid response payload from ${input.endpoint}: ${reason}; raw=${JSON.stringify(input.data)}`\n );\n }\n}\n\nexport function parseSpaceMetaResponse(input: {\n raw: string;\n endpoint: string;\n operation: Extract<\n SpaceMetaParseOperation,\n \"fetchSpaceMeta\" | \"updateSpaceMeta\"\n >;\n}): SpaceMeta {\n try {\n return parseSpaceMetaPayload({\n data: JSON.parse(input.raw) as unknown,\n endpoint: input.endpoint,\n operation: input.operation,\n });\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error);\n throw new Error(\n `${input.operation} received invalid response payload from ${input.endpoint}: ${reason}; raw=${input.raw}`\n );\n }\n}\n","import type { SpaceMeta } from \"@openmeld/protocol\";\nimport type { OpenMeldRequestContext } from \"@openmeld/schemas/types\";\nimport { buildOpenMeldRequestContextHeadersWithAuth } from \"../config/request-headers\";\nimport { toSpaceMetaUrl } from \"../protocol/urls\";\nimport { fetchSpaceRequestWithTimeout } from \"./fetch-with-timeout\";\nimport { readGatewayTextResponse } from \"./gateway-response\";\nimport { parseSpaceMetaResponse } from \"./space-meta-response\";\n\ntype SpaceMetaApiInput = {\n requestContext: OpenMeldRequestContext;\n baseUrl: string;\n space: string;\n password?: string;\n};\n\nexport async function fetchSpaceMeta(\n input: SpaceMetaApiInput\n): Promise<SpaceMeta> {\n const endpoint = toSpaceMetaUrl(input.baseUrl, input.space);\n const response = await fetchSpaceRequestWithTimeout({\n url: endpoint,\n operation: \"space.fetch_meta\",\n init: {\n method: \"GET\",\n headers: await buildOpenMeldRequestContextHeadersWithAuth({\n requestUrl: endpoint,\n requestContext: input.requestContext,\n spacePassword: input.password,\n }),\n },\n });\n const raw = await readGatewayTextResponse({ response });\n\n return parseSpaceMetaResponse({\n raw,\n endpoint,\n operation: \"fetchSpaceMeta\",\n });\n}\n\nexport async function updateSpaceMeta(\n input: SpaceMetaApiInput & {\n purpose?: string;\n guide?: string;\n }\n): Promise<SpaceMeta> {\n const endpoint = toSpaceMetaUrl(input.baseUrl, input.space);\n const headers = await buildOpenMeldRequestContextHeadersWithAuth({\n requestUrl: endpoint,\n requestContext: input.requestContext,\n spacePassword: input.password,\n });\n headers[\"content-type\"] = \"application/json\";\n\n const response = await fetchSpaceRequestWithTimeout({\n url: endpoint,\n operation: \"space.update_meta\",\n init: {\n method: \"PATCH\",\n headers,\n body: JSON.stringify({\n ...(input.purpose === undefined ? {} : { purpose: input.purpose }),\n ...(input.guide === undefined ? {} : { guide: input.guide }),\n }),\n },\n });\n const raw = await readGatewayTextResponse({ response });\n\n return parseSpaceMetaResponse({\n raw,\n endpoint,\n operation: \"updateSpaceMeta\",\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;AAGA,MAAM,iBAAiB,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;;AAEhD,MAAM,gCAAgC,IAAI,aAAa;CACtD,SAAS;CACT,iBAAiB;CACjB,kBAAkB,IAAI,MAAM,cAAc;CAC1C,WAAW,eAAe,SAAS;AACpC,CAAC;;;ACFD,SAAgB,kBACd,SACA,UAA8D,CAAC,GACrD;CACV,OAAO,eAAe,6BAA6B,SAAS,OAAO,CAAC;AACtE;;;ACiBA,IAAa,qBAAb,cAAwC,MAAM;CAC5C;CACA;CACA;CACA;CAEA,YAAY,OAOT;EACD,MAAM,MAAM,SAAS,EAAE,OAAO,MAAM,MAAM,CAAC;EAC3C,KAAK,OAAO;EACZ,KAAK,OAAO,MAAM;EAClB,IAAI,MAAM,WACR,KAAK,YAAY,MAAM;EAEzB,IAAI,MAAM,WAAW,QAAQ,MAAM,WAAW,KAAA,GAC5C,KAAK,SAAS,MAAM;EAEtB,IAAI,MAAM,cACR,KAAK,eAAe,MAAM;CAE9B;AACF;AAEA,eAAsB,+BAA+B,OAEX;CACxC,IAAI,MAAM,UAAU,SAAA,IAClB,MAAM,IAAI,mBAAmB;EAC3B,MAAM;EACN,SAAS;CACX,CAAC;CAGH,MAAM,WAAgC,CAAC;CACvC,KAAK,MAAM,WAAW,MAAM,WAAW;EACrC,IAAI,CAAC,QAAQ,KAAK,GAChB,MAAM,IAAI,mBAAmB;GAC3B,MAAM;GACN,SAAS;EACX,CAAC;EAEH,SAAS,KAAK,MAAM,qBAAqB,OAAO,CAAC;CACnD;CACA,OAAO;AACT;AAEA,eAAsB,yBAAyB,OAMG;CAChD,MAAM,WAAwC,CAAC;CAC/C,KAAK,MAAM,QAAQ,MAAM,OACvB,IAAI;EACF,MAAM,aAAa,MAAM,MAAM,SAAS,WAAW;GACjD,OAAO,KAAK;GACZ,kBAAkB,OAAO,WAAW;GACpC,UAAU,KAAK;GACf,MAAM,KAAK;GACX,QAAQ;GACR,UAAU;GACV,gBAAgB,MAAM;GACtB,SAAS,MAAM;GACf,GAAI,MAAM,aAAa,KAAA,IACnB,CAAC,IACD,EAAE,eAAe,MAAM,SAAS;EACtC,CAAC;EACD,SAAS,KAAK;GACZ,QAAQ,WAAW;GACnB,UAAU,WAAW,eAAe;GACpC,MAAM,WAAW;GACjB,UAAU,WAAW,eAAe;GACpC,WAAW,WAAW,eAAe;EACvC,CAAC;CACH,SAAS,OAAO;EACd,MAAM,UAAU,6BAA6B,KAAK;EAClD,MAAM,kBAAkB,MAAM,yBAAyB;GACrD,OAAO;GACP,UAAU,MAAM;GAChB,gBAAgB,MAAM;GACtB,UAAU,MAAM;GAChB,SAAS,MAAM;EACjB,CAAC;EACD,IAAI,iBAAiB;EACrB,IAAI,SAAS,SAAS,GACpB,iBACE,gBAAgB,WAAW,IACvB,2DACA,IAAI,sBAAsB;GACxB,UAAU;GACV,mBAAmB,MAAM,aAAa,KAAA;GACtC,WAAW,MAAM,eAAe,aAAa;GAC7C,SAAS,MAAM;EACjB,CAAC;EAET,MAAM,IAAI,mBAAmB;GAC3B,MAAM,QAAQ,QAAQ;GACtB,SAAS,uBAAuB,KAAK,KAAK,6CAA6C,QAAQ,UAAU;GACzG,OAAO;GACP,WAAW,QAAQ;GACnB,QAAQ,QAAQ;GAChB,cAAc,QAAQ;EACxB,CAAC;CACH;CAEF,OAAO;AACT;AAEA,eAAe,yBAAyB,OAMQ;CAC9C,MAAM,WAAsC,CAAC;CAC7C,KAAK,MAAM,QAAQ,MAAM,OACvB,IAAI;EACF,MAAM,MAAM,SAAS,eAAe;GAClC,kBAAkB,OAAO,WAAW;GACpC,SAAS,KAAK;GACd,gBAAgB,MAAM;GACtB,SAAS,MAAM;GACf,GAAI,MAAM,aAAa,KAAA,IACnB,CAAC,IACD,EAAE,eAAe,MAAM,SAAS;EACtC,CAAC;CACH,SAAS,OAAO;EACd,SAAS,KAAK;GACZ,SAAS,6BAA6B,KAAK;GAC3C,QAAQ,KAAK;EACf,CAAC;CACH;CAEF,OAAO;AACT;AAEA,SAAS,sBAAsB,OAKpB;CAgBT,OAAO,GAfiB,MAAM,SAC3B,KAAK,EAAE,SAAS,aAAa;EAC5B,MAAM,WAAW,CACf,QAAQ,OAAO,QAAQ,QAAQ,SAAS,MACxC,QAAQ,YAAY,WAAW,QAAQ,cAAc,IACvD,CAAC,CACE,QAAQ,UAA2B,UAAU,IAAI,CAAC,CAClD,KAAK,IAAI;EAEZ,OAAO,uBAAuB,OAAO,WADhB,WAAW,KAAK,SAAS,KAAK,GACU,IAAI,QAAQ,QAAQ,oCAAoC,MAAM,QAAQ,GAAG,OAAO,aAAa,MAAM,UAAU;CAC5K,CAAC,CAAC,CACD,KAAK,GAIgB,IAHC,MAAM,oBAC3B,qKACA;AAEN;AAEA,eAAe,qBACb,YAC4B;CAC5B,IAAI;CACJ,IAAI;EAGF,MAAM,OAAO,UAAU;EACvB,QAAQ,MAAM,WAAW,UAAU;CACrC,SAAS,OAAO;EAEd,IADa,kBAAkB,KACxB,MAAM,UACX,MAAM,IAAI,mBAAmB;GAC3B,MAAM;GACN,SAAS,mBAAmB,WAAW;GACvC,OAAO;EACT,CAAC;EAEH,MAAM,IAAI,mBAAmB;GAC3B,MAAM;GACN,SAAS,wBAAwB,WAAW;GAC5C,OAAO;EACT,CAAC;CACH;CAEA,IAAI,MAAM,OAAA,YACR,MAAM,IAAI,mBAAmB;EAC3B,MAAM;EACN,SAAS,oBAAoB,oBAAoB,EAAE,UAAU,WAAW;CAC1E,CAAC;CAGH,MAAM,aAAa,oBAAoB,UAAU,SAAS,UAAU,CAAC;CACrE,IAAI,CAAC,WAAW,SACd,MAAM,IAAI,mBAAmB;EAC3B,MAAM;EACN,SAAS,yBAAyB,WAAW;CAC/C,CAAC;CAGH,OAAO;EACL;EACA,MAAM,WAAW;EACjB,UAAU,yBAAyB,EAAE,UAAU,WAAW,KAAK,CAAC;CAClE;AACF;AAEA,SAAS,kBAAkB,OAA+B;CACxD,IAAI,EAAE,SAAS,OAAO,UAAU,YAAY,UAAU,QACpD,OAAO;CAET,OAAO,OAAO,MAAM,SAAS,WAAW,MAAM,OAAO;AACvD;AAEA,SAAS,sBAA8B;CACrC,OAAO,GAAG,4BAA6B,QAAa;AACtD;;;ACjNA,SAAgB,0BACd,OACuC;CACvC,MAAM,QACJ,OAAO,MAAM,YAAY,IAAI,IAC7B,OAAO,QAAQ,MAAM,QAAQ,CAAC,IAC9B,OAAO,QAAQ,MAAM,YAAY,CAAC;CACpC,IACE,UAAU,KACV,CAAC,MAAM,cACP,CAAC,MAAM,iBACP,CAAC,MAAM,aAEP;CAEF,IAAI,QAAQ,GACV,MAAM,IAAI,MACR,iEACF;CAEF,MAAM,kBAAkB,MAAM,cAAc;CAC5C,IAAI,CAAC,mBAAmB,MAAM,aAAa,WAAW,GACpD,MAAM,IAAI,MAAM,0DAA0D;CAE5E,MAAM,iBAAiB,MAAM,YAAY,MAAM;CAC/C,MAAM,eAAe,iBACjB,2BAA2B;EACzB,SAAS,MAAM;EACf;EACA;CACF,CAAC,IACD,KAAA;CACJ,MAAM,cAAc,uBAAuB,KAAK;CAChD,IAAI;CACJ,IAAI,MAAM,cACR,QAAQ;EAAE,MAAM;EAAU;CAAa;MAClC,IAAI,MAAM,UACf,QAAQ;EAAE,MAAM;EAAQ;EAAc,GAAG;CAAY;MAErD,QAAQ;EAAE,MAAM,MAAM,UAAU,QAAQ;EAAQ,GAAG;CAAY;CAEjE,MAAM,SAAS,gCAAgC,UAAU,KAAK;CAC9D,IAAI,CAAC,OAAO,SACV,MAAM,IAAI,MACR,OAAO,MAAM,OAAO,EAAE,EAAE,WAAW,yBACrC;CAEF,OAAO,OAAO;AAChB;AAEA,SAAS,uBAAuB,OAAgC;CAC9D,IAAI,MAAM,iBAAiB,MAAM,cAAc,MAAM,gBACnD,MAAM,IAAI,MACR,iGACF;CAEF,IAAI,MAAM,eAAe,CAAC,MAAM,SAC9B,MAAM,IAAI,MACR,2FACF;CAEF,IAAI,MAAM,eAAe,MAAM,eAAe,iBAC5C,MAAM,IAAI,MACR,sEACF;CAEF,OAAO;EACL,QAAQ,MAAM;EACd,WACE,MAAM,kBAAkB,MAAM,cAAc,aAAa,KAAA;EAC3D,GAAI,MAAM,cAAc,EAAE,aAAa,MAAM,YAAY,IAAI,CAAC;CAChE;AACF;AAEA,eAAsB,sBAAsB,OAIC;CAC3C,MAAM,cAAc,MAAM,aAAa,KAAK;CAC5C,IAAI,CAAC,aAAa;EAChB,IAAI,MAAM,eACR,MAAM,IAAI,MAAM,kCAAkC;EAEpD;CACF;CACA,MAAM,MAAM,kBACV,6BAA6B,MAAM,eAAe,MAAM,OAAO,CAAC,CAClE;CACA,MAAM,SAAS,MAAM,IAAI,KAAK;CAC9B,MAAM,UAAU,OAAO,SAAS,MAC7B,cAAc,UAAU,SAAS,WACpC;CACA,IAAI,CAAC,WAAW,QAAQ,mBAAmB,OAAO,gBAChD,MAAM,IAAI,MACR,YAAY,YAAY,6CAC1B;CAEF,MAAM,WAAW,MAAM,IAAI,uBAAuB,EAAE,WAAW,QAAQ,GAAG,CAAC;CAC3E,OAAO,qBAAqB;EAC1B;EACA,eAAe,MAAM;EACrB,UAAU,SAAS;CACrB,CAAC;AACH;AAEA,SAAgB,qBAAqB,OAIb;CACtB,IAAI,MAAM,SAAS,cAAc,MAAM,QAAQ,IAC7C,MAAM,IAAI,MACR,6DACF;CAEF,MAAM,eAAe,MAAM,gBACvB,4BAA4B,MAAM,aAAa,IAC/C;CACJ,IAAI,MAAM,iBAAiB,CAAC,cAC1B,MAAM,IAAI,MAAM,kDAAkD;CAEpE,MAAM,eAAe,MAAM,SAAS;CACpC,MAAM,WAAW,eACb,aAAa,MAAM,cAAc,UAAU,kBAAkB,YAAY,IACxE,aAAa,MAAM,cAAc,UAAU,SAAS,MACpD,aAAa,WAAW,IAAI,aAAa,KAAK,KAAA;CACnD,IAAI,UACF,OAAO;EACL,WAAW,MAAM,QAAQ;EACzB,uBAAuB,SAAS;CAClC;CAEF,IAAI,cACF,MAAM,IAAI,MAAM,sDAAsD;CAExE,IAAI,aAAa,WAAW,KAAK,MAAM,SAAS,0BAC9C,OAAO;EACL,WAAW,MAAM,QAAQ;EACzB,uBAAuB,MAAM,SAAS;CACxC;CAEF,MAAM,IAAI,MACR,aAAa,WAAW,IACpB,kFACA,sEACN;AACF;AAEA,eAAsB,qBACpB,OACiB;CACjB,MAAM,YAAY,OAAO,MAAM,QAAQ,EAAE;CACzC,MAAM,eAAe,MAAM,UAAU;CACrC,MAAM,WAAW,OAAO,MAAM,QAAQ,EAAE,CAAC,CAAC,KAAK;CAE/C,MAAM,gBAAgB,UAAU,SAAS;CACzC,MAAM,gBAAgB,SAAS,SAAS;CACxC,MAAM,cACJ,OAAO,aAAa,IAAI,OAAO,YAAY,IAAI,OAAO,aAAa;CAErE,IAAI,gBAAgB,GAAG;EACrB,IAAI,MAAM,YACR,OAAO;EAET,MAAM,uCAAuC;CAC/C;CACA,IAAI,cAAc,GAChB,MAAM,uCAAuC;CAG/C,IAAI,eAAe;CACnB,IAAI,eAAe;EACjB,MAAM,eAAe,MAAM,gBAAgB;EAC3C,IAAI;GACF,eAAe,MAAM,aAAa,QAAQ;EAC5C,SAAS,OAAO;GACd,MAAM,6CACJ,UACA,eAAe,KAAK,CACtB;EACF;CACF;CACA,IAAI,cAEF,eAAe,OADO,MAAM,iBAAiB,mBAAA,CACV;CAGrC,IAAI,aAAa,KAAK,CAAC,CAAC,WAAW,KAAK,CAAC,MAAM,YAC7C,MAAM,oCAAoC;CAG5C,OAAO;AACT;AAEA,SAAS,kBAAkB,MAA+B;CACxD,OAAO,SAAS,MAAM,MAAM;AAC9B;AAEA,SAAS,qBAAsC;CAC7C,OAAO,IAAI,SAAiB,SAAS,WAAW;EAC9C,MAAM,SAAmB,CAAC;EAE1B,MAAM,gBAAgB;GACpB,QAAQ,MAAM,IAAI,QAAQ,MAAM;GAChC,QAAQ,MAAM,IAAI,OAAO,KAAK;GAC9B,QAAQ,MAAM,IAAI,SAAS,OAAO;EACpC;EAEA,MAAM,UAAU,UAA2B;GACzC,IAAI,OAAO,UAAU,UAAU;IAC7B,OAAO,KAAK,KAAK;IACjB;GACF;GACA,OAAO,KAAK,MAAM,SAAS,MAAM,CAAC;EACpC;EAEA,MAAM,cAAc;GAClB,QAAQ;GACR,QAAQ,OAAO,KAAK,EAAE,CAAC;EACzB;EAEA,MAAM,WAAW,UAAiB;GAChC,QAAQ;GACR,OAAO,KAAK;EACd;EAEA,QAAQ,MAAM,YAAY,MAAM;EAChC,QAAQ,MAAM,GAAG,QAAQ,MAAM;EAC/B,QAAQ,MAAM,GAAG,OAAO,KAAK;EAC7B,QAAQ,MAAM,GAAG,SAAS,OAAO;EACjC,QAAQ,MAAM,OAAO;CACvB,CAAC;AACH;AAEA,SAAS,eAAe,OAAwB;CAC9C,IAAI,iBAAiB,SAAS,MAAM,QAAQ,KAAK,CAAC,CAAC,SAAS,GAC1D,OAAO,MAAM;CAEf,OAAO,OAAO,SAAS,eAAe;AACxC;;;AC9RA,SAAgB,kBAAkB,KAAsB;CACtD,IAAI,CAAC,IAAI,KAAK,GACZ,OAAO;CAET,IAAI;EACF,OAAO,KAAK,MAAM,GAAG;CACvB,QAAQ;EACN,OAAO;CACT;AACF;;;ACHA,MAAM,mCAAmC;AA0BzC,IAAa,mBAAb,cAAsC,MAAM;CAC1C;CACA;CACA;CACA;CACA;CAEA,YAAY,OAOT;EACD,MAAM,MAAM,OAAO;EACnB,KAAK,OAAO;EACZ,KAAK,OAAO,MAAM;EAClB,KAAK,YAAY,sBAAsB,MAAM,SAAS;EACtD,KAAK,SAAS,MAAM;EACpB,KAAK,UAAU,MAAM;EACrB,KAAK,eAAe,sBAAsB,MAAM,YAAY;CAC9D;AACF;AAEA,eAAsB,wBAA2B,OAIlC;CACb,MAAM,MAAM,MAAM,MAAM,SAAS,KAAK;CACtC,wBAAwB;EACtB,UAAU,MAAM;EAChB;CACF,CAAC;CAED,MAAM,SAAS,MAAM,OAAO,UAAU,kBAAkB,GAAG,CAAC;CAC5D,IAAI,CAAC,OAAO,SACV,MAAM,IAAI,MAAM,MAAM,cAAc;CAEtC,OAAO,OAAO;AAChB;AAEA,eAAsB,wBAAwB,OAE1B;CAClB,MAAM,MAAM,MAAM,MAAM,SAAS,KAAK;CACtC,wBAAwB;EACtB,UAAU,MAAM;EAChB;CACF,CAAC;CACD,OAAO;AACT;AAEA,SAAgB,wBAAwB,OAG/B;CACP,IAAI,MAAM,SAAS,IACjB;CAEF,MAAM,0BAA0B,KAAK;AACvC;AAEA,SAAgB,0BAA0B,OAGrB;CACnB,MAAM,UAAU,kBAAkB,MAAM,GAAG;CAC3C,MAAM,SAAS,2BAA2B,UAAU,OAAO;CAC3D,MAAM,kBAAkB,sBACtB,MAAM,SAAS,QAAQ,IAAI,0BAA0B,CACvD;CAEA,IAAI,OAAO,SACT,OAAO,IAAI,iBAAiB;EAC1B,MAAM,OAAO,KAAK,MAAM;EACxB,SAAS,OAAO,KAAK,MAAM;EAC3B,WAAW,OAAO,KAAK,MAAM,aAAa;EAC1C,QAAQ,MAAM,SAAS;EACvB,SAAS,MAAM;EACf,cAAc,OAAO,KAAK,MAAM,gBAAgB;CAClD,CAAC;CAGH,MAAM,gBAAgB,8BAA8B,OAAO;CAC3D,IAAI,eACF,OAAO,IAAI,iBAAiB;EAC1B,MAAM,cAAc,QAAQ;EAC5B,SACE,cAAc,WACd,oCAAoC,MAAM,SAAS,OAAO;EAC5D,WAAW,cAAc,aAAa;EACtC,QAAQ,MAAM,SAAS;EACvB,SAAS,MAAM;EACf,cAAc,cAAc;CAC9B,CAAC;CAGH,OAAO,IAAI,iBAAiB;EAC1B,MAAM;EACN,SACE,sBAAsB,MAAM,GAAG,KAC/B,oCAAoC,MAAM,SAAS,OAAO;EAC5D,WAAW;EACX,QAAQ,MAAM,SAAS;EACvB,SAAS,MAAM;EACf,cAAc;CAChB,CAAC;AACH;AAEA,SAAgB,2BACd,OAC0B;CAC1B,IAAI,iBAAiB,4BACnB,OAAO;EACL,MAAM,MAAM;EACZ,SAAS,wBAAwB,MAAM,OAAO;EAC9C,WAAW,MAAM;EACjB,QAAQ,MAAM;EACd,cAAc,MAAM;CACtB;CAGF,IAAI,iBAAiB,kBACnB,OAAO;EACL,MAAM,MAAM;EACZ,SAAS,wBAAwB,MAAM,OAAO;EAC9C,WAAW,MAAM;EACjB,QAAQ,MAAM;EACd,cAAc,MAAM;CACtB;CAGF,MAAM,mBAAmB,qBAAqB,KAAK;CACnD,IAAI,kBACF,OAAO;EACL,MAAM;EACN,SAAS,wBACP,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,CACvD;EACA,WAAW;EACX,QAAQ;EACR,cAAc;CAChB;CAGF,OAAO;EACL,MAAM;EACN,SAAS,wBACP,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,CACvD;EACA,WAAW;EACX,QAAQ;EACR,cAAc;CAChB;AACF;AAEA,SAAS,sBAAsB,OAA+B;CAC5D,MAAM,aAAa,OAAO,SAAS,EAAE,CAAC,CAAC,KAAK;CAC5C,OAAO,WAAW,SAAS,IAAI,aAAa;AAC9C;AAEA,SAAS,wBAAwB,OAAwB;CACvD,OAAO,sBAAsB,KAAK,KAAK;AACzC;AAEA,SAAS,qBAAqB,OAAiD;CAC7E,IAAI,CAAC,SAAS,OAAO,UAAU,YAAY,EAAE,UAAU,QACrD,OAAO;CAMT,OAHmB,sBAChB,MAA6B,QAAQ,IAExB;AAClB;AAEA,SAAS,8BAA8B,OAK9B;CACP,IAAI,CAAC,SAAS,OAAO,UAAU,UAC7B,OAAO;CAWT,MAAM,QAAQA,MAAO;CACrB,IAAI,CAAC,SAAS,OAAO,UAAU,UAC7B,OAAO;CAGT,MAAM,OAAO,sBAAsB,MAAM,IAAI;CAC7C,MAAM,UAAU,sBAAsB,MAAM,OAAO;CACnD,MAAM,YAAY,sBAAsB,MAAM,SAAS;CACvD,MAAM,eAAe,sBAAsB,MAAM,YAAY;CAC7D,IAAI,EAAE,QAAQ,WAAW,aAAa,eACpC,OAAO;CAGT,OAAO;EACL;EACA;EACA;EACA;CACF;AACF;;;AC/OA,SAAgB,sBAAsB,OAIxB;CACZ,IAAI;EACF,MAAM,aAAa,gBAAgB,UAAU,MAAM,IAAI;EACvD,IAAI,CAAC,WAAW,SAAS;GACvB,MAAM,SACJ,WAAW,MAAM,OAAO,EAAE,EAAE,WAC5B;GACF,MAAM,IAAI,MAAM,MAAM;EACxB;EACA,OAAO,WAAW;CACpB,SAAS,OAAO;EACd,MAAM,SAAS,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;EACpE,MAAM,IAAI,MACR,GAAG,MAAM,UAAU,0CAA0C,MAAM,SAAS,IAAI,OAAO,QAAQ,KAAK,UAAU,MAAM,IAAI,GAC1H;CACF;AACF;AAEA,SAAgB,uBAAuB,OAOzB;CACZ,IAAI;EACF,OAAO,sBAAsB;GAC3B,MAAM,KAAK,MAAM,MAAM,GAAG;GAC1B,UAAU,MAAM;GAChB,WAAW,MAAM;EACnB,CAAC;CACH,SAAS,OAAO;EACd,MAAM,SAAS,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;EACpE,MAAM,IAAI,MACR,GAAG,MAAM,UAAU,0CAA0C,MAAM,SAAS,IAAI,OAAO,QAAQ,MAAM,KACvG;CACF;AACF;;;ACnCA,eAAsB,eACpB,OACoB;CACpB,MAAM,WAAW,eAAe,MAAM,SAAS,MAAM,KAAK;CAe1D,OAAO,uBAAuB;EAC5B,WAHgB,wBAAwB,EAAE,gBAZrB,6BAA6B;GAClD,KAAK;GACL,WAAW;GACX,MAAM;IACJ,QAAQ;IACR,SAAS,MAAM,2CAA2C;KACxD,YAAY;KACZ,gBAAgB,MAAM;KACtB,eAAe,MAAM;IACvB,CAAC;GACH;EACF,CAAC,EACoD,CAAC;EAIpD;EACA,WAAW;CACb,CAAC;AACH;AAEA,eAAsB,gBACpB,OAIoB;CACpB,MAAM,WAAW,eAAe,MAAM,SAAS,MAAM,KAAK;CAC1D,MAAM,UAAU,MAAM,2CAA2C;EAC/D,YAAY;EACZ,gBAAgB,MAAM;EACtB,eAAe,MAAM;CACvB,CAAC;CACD,QAAQ,kBAAkB;CAgB1B,OAAO,uBAAuB;EAC5B,WAHgB,wBAAwB,EAAE,gBAZrB,6BAA6B;GAClD,KAAK;GACL,WAAW;GACX,MAAM;IACJ,QAAQ;IACR;IACA,MAAM,KAAK,UAAU;KACnB,GAAI,MAAM,YAAY,KAAA,IAAY,CAAC,IAAI,EAAE,SAAS,MAAM,QAAQ;KAChE,GAAI,MAAM,UAAU,KAAA,IAAY,CAAC,IAAI,EAAE,OAAO,MAAM,MAAM;IAC5D,CAAC;GACH;EACF,CAAC,EACoD,CAAC;EAIpD;EACA,WAAW;CACb,CAAC;AACH"}
|
|
@@ -5,43 +5,43 @@ import { A as toSpaceBoardUrl, E as updateConfiguredStartV1OnboardingState, F as
|
|
|
5
5
|
import { A as profileDir, D as openMeldRootDir, F as resolveOpenMeldRootDir, H as spacesDir, N as resolveOpenMeldCliEntryNameFromArgv, P as resolveOpenMeldEnvPreset, S as openMeldBinDir, U as systemDir, V as skillsDir, i as accountProfileViewPath, j as profileViewPath, o as accountsDir, r as accountProfileSpaceCacheDir, x as openMeldBackupsDir, y as normalizeAccountKey } from "./paths-De9xdA2h.js";
|
|
6
6
|
import { r as resolveAuthBaseUrl } from "./auth-url-Dnpds8Yf.js";
|
|
7
7
|
import { Aa as nonEmptyTrimmedStringFromUnknown, Ma as trimmedStringFromUnknown, Yr as HOSTED_REMOTE_AGENT_CONTROLLER_REF, et as START_BOUNDED_ID_SCHEMA, jn as agentActivitySessionInventoryQuerySchema, lt as daemonServiceLaneSchema, ma as openMeldRequestContextSchema, pa as openMeldProfileIdSchema, t as computerConnectionIntentSchema, tt as START_TRIMMED_NON_EMPTY_STRING_SCHEMA, va as openMeldRuntimeProfileIdSchema } from "./dist-zRc0hA1y.js";
|
|
8
|
-
import {
|
|
9
|
-
import { Bi as pluginActionRequestSchema, Bn as isMemberAgentsDisabledError, Cn as createRoutinesApi, Dn as createSessionHistoryApi, Ed as spaceDispatchTraceDispatchStatusSchema, Gt as createAgentProfileBindingApi, Hd as spaceDispatchTraceResponseSchema, Jt as createCenterAgentApi, Kn as postSpaceWorkHandoff, Kt as createAgentProfileExecutionModeApi, Mc as harnessKindSchema, Ng as signalEnvelopeSchema, Pd as spaceDispatchTraceFinalVisibleOutcomeSchema, Qi as MEMBER_AGENTS_DISABLED_MESSAGE, Qp as summarizeComputerFileAccessPolicy, Sd as spaceDispatchTraceAttemptStatusSchema, Tl as sessionHistoryReadSchema, Wt as createAgentActivityApi, Yp as ownerComputerDiagnosticsSchema, Zi as MEMBER_AGENTS_DISABLED_CODE, Zp as projectOwnerComputerLocalRuntimes, Zt as createComputerFileAccessApi, _d as projectSpaceDispatchTraceFinalVisibleOutcome, _n as createPluginsApi, ag as agentActivitySnapshotQuerySchema, ao as DEFAULT_AGENT_PROFILE_CREATION_CONFIGURATION, bd as resolveRuntimeCoordinatorHeadStatusRootCause, cf as projectObservabilityWakeCorrelation, co as agentProfileCreationConfigurationSchema, eg as agentActivityProviderSchema, en as createCurrentDeviceApi, fl as submitFeedbackIssueRequestSchema, fn as createOrganizationApi, gn as createPermissionModeSuggestionsApi, go as createAgentProfileCreationRequestBodySchema, hd as SPACE_DISPATCH_TRACE_RESPONSE_CONTRACT_VERSION_HEADER, ig as agentActivitySessionStatusSchema, in as createFileRootApi, jc as harnessKindFromAgentControllerRef, kl as sessionHistoryResultSchema, mn as createOrganizationSkillsApi, nn as createFeedbackApi, o_ as spaceNameSchema, rr as toStructuredApiClientFailure, sf as observabilityWakeTraceSelectorSchema, t as OpenMeldApiClientHttpError, ta as memberAgentSchema, tn as createDirectMessageApi, un as createMemberAgentsApi, vn as createPrepareReadinessApi, wh as routineScopeSchema, wo as agentDirectMessageSessionSelectorSchema, xd as resolveSpaceDispatchTraceRootCause, xi as spaceEntryTargetSchema, xn as createProjectsApi } from "./dist-
|
|
10
|
-
import { $ as bindProject, Ar as resolveAgentExecutionStatus, At as listAgentTargetStates, Cr as peopleComputerContainsDevice, Ct as createPrimaryBindingReadSession, Ft as registerUnselectedBuiltinAgentsTurnedOff, I as ensureOpenMeldManagedProfileWorkspace, J as validateCustomProfileWorkspacePath, Jt as notifyDaemonRouteCatalogChanged, K as setCustomProfileWorkspace, Lr as checkAntigravityAcpAccount, Lt as resolveAgentTargetState, M as resolveProfileWorkspaceRuntime, Mr as resolveEvidenceSyncHealth, Nr as resolveNativeAgentControllerPermissionModeForController, O as syncProfileWorkspaceState, Rr as isAntigravityAcpLaunchContract, Sr as parseAgentControllerRef, Tt as resolveAgentProfilePrimaryAgentControllerReport, V as readProfileWorkspaceConfig, W as resolveConfiguredProfileWorkspacePath, Wt as listBuiltinAgentsRegistryEntries, Y as describeProfileWorkspacePathValidationFailure, Z as ProjectBindingOperationError, _r as getAgentControllerPermissionModeFieldLabel, at as migrateProjectBindingStore, ct as removeProjectConnection, dt as setDefaultProjectConnection, ei as compareAgentControllerRefsForDisplay, ft as unbindProject, gr as getAgentControllerPermissionModeDisplayMetadata, it as listProjectConnectionsWithStatus, jr as resolveAgentProfileEditCapabilities, k as createModelCatalogReadSession, kr as resolveAgentControllerPermissionModeForController, mr as createAgentExecutionStatusDisplayRows, on as resolveLocalRegistryAgentIdFromAgentControllerRef, pt as canonicalizeLocalProjectPath, q as setOpenMeldManagedProfileWorkspace, rt as listProjectBindings, ut as runIfAgentActivityBindingGenerationIsCurrent, wr as projectPeopleComputersToLegacyLocalRuntimes, xr as listAgentControllerPermissionModeOptions, yt as syncDeviceRuntimeStateProjection, z as normalizeCustomProfileWorkspacePath } from "./prepare-provider-runtime-
|
|
11
|
-
import {
|
|
12
|
-
import { $n as spaceWorkHandoffSchema, $r as clientMessageIdSchema, Jn as centerAgentInteractionSourceSchema, Yr as agentInteractionResponseSchema, dr as spaceContractFieldsSchema, fr as spaceContractSchema, nr as spaceWorkSelectionSchema, pi as runtimeTransportAdmissionEvidenceSchema, rr as spaceWorkingCopyResultSchema } from "./runtime-transport
|
|
8
|
+
import { Gn as isSpaceFileTextReadable, Rn as SPACE_FILE_MAX_SIZE_BYTES, Xn as readSpaceFileTextStream, Zn as resolveSpaceFileMimeType, dt as spaceThreadContextSchema, kt as messageEnvelopeSchema, ot as spaceStatusSchema, zn as SPACE_FILE_RAW_UPLOAD_MAX_BYTES } from "./task-result-DhOFm1C_.js";
|
|
9
|
+
import { Bi as pluginActionRequestSchema, Bn as isMemberAgentsDisabledError, Cn as createRoutinesApi, Dn as createSessionHistoryApi, Ed as spaceDispatchTraceDispatchStatusSchema, Gt as createAgentProfileBindingApi, Hd as spaceDispatchTraceResponseSchema, Jt as createCenterAgentApi, Kn as postSpaceWorkHandoff, Kt as createAgentProfileExecutionModeApi, Mc as harnessKindSchema, Ng as signalEnvelopeSchema, Pd as spaceDispatchTraceFinalVisibleOutcomeSchema, Qi as MEMBER_AGENTS_DISABLED_MESSAGE, Qp as summarizeComputerFileAccessPolicy, Sd as spaceDispatchTraceAttemptStatusSchema, Tl as sessionHistoryReadSchema, Wt as createAgentActivityApi, Yp as ownerComputerDiagnosticsSchema, Zi as MEMBER_AGENTS_DISABLED_CODE, Zp as projectOwnerComputerLocalRuntimes, Zt as createComputerFileAccessApi, _d as projectSpaceDispatchTraceFinalVisibleOutcome, _n as createPluginsApi, ag as agentActivitySnapshotQuerySchema, ao as DEFAULT_AGENT_PROFILE_CREATION_CONFIGURATION, bd as resolveRuntimeCoordinatorHeadStatusRootCause, cf as projectObservabilityWakeCorrelation, co as agentProfileCreationConfigurationSchema, eg as agentActivityProviderSchema, en as createCurrentDeviceApi, fl as submitFeedbackIssueRequestSchema, fn as createOrganizationApi, gn as createPermissionModeSuggestionsApi, go as createAgentProfileCreationRequestBodySchema, hd as SPACE_DISPATCH_TRACE_RESPONSE_CONTRACT_VERSION_HEADER, ig as agentActivitySessionStatusSchema, in as createFileRootApi, jc as harnessKindFromAgentControllerRef, kl as sessionHistoryResultSchema, mn as createOrganizationSkillsApi, nn as createFeedbackApi, o_ as spaceNameSchema, rr as toStructuredApiClientFailure, sf as observabilityWakeTraceSelectorSchema, t as OpenMeldApiClientHttpError, ta as memberAgentSchema, tn as createDirectMessageApi, un as createMemberAgentsApi, vn as createPrepareReadinessApi, wh as routineScopeSchema, wo as agentDirectMessageSessionSelectorSchema, xd as resolveSpaceDispatchTraceRootCause, xi as spaceEntryTargetSchema, xn as createProjectsApi } from "./dist-53uvP0DN.js";
|
|
10
|
+
import { $ as bindProject, Ar as resolveAgentExecutionStatus, At as listAgentTargetStates, Cr as peopleComputerContainsDevice, Ct as createPrimaryBindingReadSession, Ft as registerUnselectedBuiltinAgentsTurnedOff, I as ensureOpenMeldManagedProfileWorkspace, J as validateCustomProfileWorkspacePath, Jt as notifyDaemonRouteCatalogChanged, K as setCustomProfileWorkspace, Lr as checkAntigravityAcpAccount, Lt as resolveAgentTargetState, M as resolveProfileWorkspaceRuntime, Mr as resolveEvidenceSyncHealth, Nr as resolveNativeAgentControllerPermissionModeForController, O as syncProfileWorkspaceState, Pt as reconcileNewRunnableBuiltinAgentsForSetup, Rr as isAntigravityAcpLaunchContract, Sr as parseAgentControllerRef, Tt as resolveAgentProfilePrimaryAgentControllerReport, V as readProfileWorkspaceConfig, W as resolveConfiguredProfileWorkspacePath, Wt as listBuiltinAgentsRegistryEntries, Y as describeProfileWorkspacePathValidationFailure, Z as ProjectBindingOperationError, _r as getAgentControllerPermissionModeFieldLabel, at as migrateProjectBindingStore, ct as removeProjectConnection, dt as setDefaultProjectConnection, ei as compareAgentControllerRefsForDisplay, ft as unbindProject, gr as getAgentControllerPermissionModeDisplayMetadata, it as listProjectConnectionsWithStatus, jr as resolveAgentProfileEditCapabilities, k as createModelCatalogReadSession, kr as resolveAgentControllerPermissionModeForController, mr as createAgentExecutionStatusDisplayRows, on as resolveLocalRegistryAgentIdFromAgentControllerRef, pt as canonicalizeLocalProjectPath, q as setOpenMeldManagedProfileWorkspace, rt as listProjectBindings, ut as runIfAgentActivityBindingGenerationIsCurrent, wr as projectPeopleComputersToLegacyLocalRuntimes, xr as listAgentControllerPermissionModeOptions, yt as syncDeviceRuntimeStateProjection, z as normalizeCustomProfileWorkspacePath } from "./prepare-provider-runtime-B4go-qdR.js";
|
|
11
|
+
import { An as agentWakeAvailabilityCategorySchema, an as resolvedSpaceMemberProfileSchema, b as OPENMELD_HEADER_SPACE_ADDRESSING_VERSION, bt as organizationSkillFileSchema, et as ORGANIZATION_SKILL_BUNDLE_MAX_BYTES, m as OPENMELD_HEADER_PROFILE_ID, rt as ORGANIZATION_SKILL_FILE_MAX_BYTES } from "./dist-D7SkvUZW.js";
|
|
12
|
+
import { $n as spaceWorkHandoffSchema, $r as clientMessageIdSchema, Jn as centerAgentInteractionSourceSchema, Yr as agentInteractionResponseSchema, dr as spaceContractFieldsSchema, fr as spaceContractSchema, nr as spaceWorkSelectionSchema, pi as runtimeTransportAdmissionEvidenceSchema, rr as spaceWorkingCopyResultSchema } from "./runtime-transport-Dg7E0ROH.js";
|
|
13
13
|
import { f as agentControllerConversationRefSchema } from "./controller-contract-Ciy9Smgo.js";
|
|
14
14
|
import { c as dispatchExecutionSchema } from "./conversation-execution-state-BOWTCU0B.js";
|
|
15
|
-
import { d as readSelectedSkillDocument, r as ensureLocalSkills } from "./state-
|
|
16
|
-
import { $ as renderHumanTextErrorCard, A as resolveLocalComponentsStatus, B as runAuthMenu, D as emitCliJsonEnvelope, E as shouldEmitAgentOverview, F as buildCommandAuthenticationPromptMessage, G as recoverInterruptedComputerAuthHandoff, H as exchangeOneTimeTokenAuthSession, I as ensureCommandAuthenticationOrCancel, J as runDaemonServiceParticipationGate, K as exchangeComputerAuthorizationGrant, L as evaluateCommandAuthentication, M as LocalProjectConnectionError, N as validateLocalProjectConnectionPath, O as runDaemonStartupPreflight, Q as renderHumanErrorCard, R as runAuthLogin, S as reconcileCliVersionView, U as emitUnusedSetupSessionCleanupWarning, V as runAuthStatus, W as formatComputerAuthCleanupFailureSuffix, X as runDaemonStartDecisionPrompt, Y as resolveDaemonServiceParticipationStatus, Z as buildHumanErrorCopy, _ as formatServiceParticipationReadinessLabel, a as runDaemonBackgroundStartForDecision, at as renderTextInfoCard, b as buildProfileWorkspacePresentation, c as runDaemonInterrupt, ct as isReturnKeypress, dt as getCurrentCommandCheckState, et as buildAuthStatusRows, f as runDaemonSnapshot, ft as isCurrentCommandCheckScopeActive, g as runDaemonUninstall, h as runDaemonTeardownStrict, i as runDaemonAutostart, it as renderInfoCard, j as writeInstalledLocalComponentsSnapshot, l as runDaemonReinstall, lt as runInteractivePrompt, m as runDaemonStop, mt as startCurrentCommandCheckScope, n as isManagedSystemServiceBootstrapRun, nt as formatActiveOrganizationLabel, o as runDaemonCancel, p as runDaemonStatusFlow, pt as resetCurrentCommandCheckState, q as revokePreparedAuthSession, r as runDaemon, s as runDaemonInstall, st as promptTextEntry, t as bestEffortStopCurrentLaneDaemonService, tt as buildAuthStatusSnapshot, u as runDaemonRunAfterEntryChecks, ut as finishCurrentCommandCheckScope, w as emitDaemonAgentOverview, x as buildProfileWorkspaceRows, y as resolveServiceParticipationReadiness, z as runAuthLogout } from "./service-
|
|
17
|
-
import { A as enqueueAgentActivityHookEvent, B as buildCanonicalRepositoryUrl, D as normalizeSharedSessionTitle, E as resolveObservedAgentActivityBinding, F as readAgentActivityOutboxHealth, It as buildPublicSpaceEntryUrl, Kt as buildUpdatesReplyWorkflowProjection, L as removeProjectOutbox, Ln as cliJsonOutputEnvelopeSchema, Lt as buildSignalIndex, Nt as buildDispatchResultMessageReadProjection, O as readCodexSessionTitles, Pt as buildDispatchResultReplyWorkflowProjection, Rt as buildSignalMessageReadProjection, T as buildAgentActivityEvent, Wt as buildSpaceRoundReadProjection, Xt as createSpaceMemberIdentityIndex, _ as readOpenMeldCreatedLocalAgentSessionProjectAttributions, _r as organizationJoinLinkErrorResponseSchema, ar as cliJsonSkillsLoadEnvelopeSchema, b as resolveOpenMeldCreatedLocalAgentSessionProjectAttribution, en as formatRemovedCcRelationMessage, fr as acceptOrganizationJoinLinkBodySchema, i as readDispatchOwnedRuntimeGuard, ir as cliJsonSkillsListEnvelopeSchema, j as removeProjectInbox, kt as upsertSpaceConfig, mr as getOrganizationJoinLinkResponseSchema, nr as cliJsonSkillsAddEnvelopeSchema, or as cliJsonSkillsScanEnvelopeSchema, rr as cliJsonSkillsAddPreviewEnvelopeSchema, sr as cliJsonSkillsShowEnvelopeSchema, t as assertDispatchOwnedRuntimePublicWriteAllowed, tr as cliJsonSkillsAddAllEnvelopeSchema, tt as readRecentDaemonDispatchJournalEvents, vr as organizationJoinLinkManagementQuerySchema, vt as inspectSpaceCacheFile, xr as revokeOrganizationJoinLinkResponseSchema } from "./dispatch-owned-runtime-
|
|
18
|
-
import { c as toStructuredGatewayFailure, d as resolveSpaceSendText, f as resolveSpaceTaskSelection, h as createCliSpaceApi, l as parseJsonResponse, n as updateSpaceMeta, o as readGatewayJsonResponse, s as readGatewayTextResponse, t as fetchSpaceMeta, u as resolveCliProjectWork } from "./meta-api-
|
|
19
|
-
import { A as readAgentActivityContextForPath, B as installAgentActivityIntegrations, F as registerAgentActivityRoute, H as resolveAgentActivityDispatcherCommand, I as resolveAgentActivityRouteForPath, L as unregisterAgentActivityRoute, M as enqueueControllerTaskLifecycleEventWhileLocked, N as readControllerTaskLifecycleOutboxHealth, O as syncLocalAgentActivity, P as isAgentActivityRouteRegistered, S as readRuntimeReportingHealthState, U as uninstallAgentActivityIntegrations, V as readAgentActivityIntegrationStatus, c as runDirectMessage, d as runSpaceActionSilent, f as runSpaceActionStatus, i as materializeOrganizationSkillRelease, j as removeAgentActivityContextCache, l as runSpaceActionHelp, m as runSpaceActionWake, n as createSpaceWorkingCopies, o as runSpaceActionMcpServer, p as runSpaceActionTargets, r as downloadWorkingCopyFile, t as fetchSpaceUpdates, u as runSpaceActionReply, z as defaultManagedIntegrationPaths } from "./updates-api-
|
|
20
|
-
import { G as readManagedCliInstallation, H as buildInstallSelfJsonPayload, U as performManagedInstall, r as readCurrentDaemonRuntimeContext } from "./daemon-service-runtime-
|
|
15
|
+
import { d as readSelectedSkillDocument, r as ensureLocalSkills } from "./state-Der85tER.js";
|
|
16
|
+
import { $ as renderHumanTextErrorCard, A as resolveLocalComponentsStatus, B as runAuthMenu, D as emitCliJsonEnvelope, E as shouldEmitAgentOverview, F as buildCommandAuthenticationPromptMessage, G as recoverInterruptedComputerAuthHandoff, H as exchangeOneTimeTokenAuthSession, I as ensureCommandAuthenticationOrCancel, J as runDaemonServiceParticipationGate, K as exchangeComputerAuthorizationGrant, L as evaluateCommandAuthentication, M as LocalProjectConnectionError, N as validateLocalProjectConnectionPath, O as runDaemonStartupPreflight, Q as renderHumanErrorCard, R as runAuthLogin, S as reconcileCliVersionView, U as emitUnusedSetupSessionCleanupWarning, V as runAuthStatus, W as formatComputerAuthCleanupFailureSuffix, X as runDaemonStartDecisionPrompt, Y as resolveDaemonServiceParticipationStatus, Z as buildHumanErrorCopy, _ as formatServiceParticipationReadinessLabel, a as runDaemonBackgroundStartForDecision, at as renderTextInfoCard, b as buildProfileWorkspacePresentation, c as runDaemonInterrupt, ct as isReturnKeypress, dt as getCurrentCommandCheckState, et as buildAuthStatusRows, f as runDaemonSnapshot, ft as isCurrentCommandCheckScopeActive, g as runDaemonUninstall, h as runDaemonTeardownStrict, i as runDaemonAutostart, it as renderInfoCard, j as writeInstalledLocalComponentsSnapshot, l as runDaemonReinstall, lt as runInteractivePrompt, m as runDaemonStop, mt as startCurrentCommandCheckScope, n as isManagedSystemServiceBootstrapRun, nt as formatActiveOrganizationLabel, o as runDaemonCancel, p as runDaemonStatusFlow, pt as resetCurrentCommandCheckState, q as revokePreparedAuthSession, r as runDaemon, s as runDaemonInstall, st as promptTextEntry, t as bestEffortStopCurrentLaneDaemonService, tt as buildAuthStatusSnapshot, u as runDaemonRunAfterEntryChecks, ut as finishCurrentCommandCheckScope, w as emitDaemonAgentOverview, x as buildProfileWorkspaceRows, y as resolveServiceParticipationReadiness, z as runAuthLogout } from "./service-_kQjYdi5.js";
|
|
17
|
+
import { A as enqueueAgentActivityHookEvent, B as buildCanonicalRepositoryUrl, D as normalizeSharedSessionTitle, E as resolveObservedAgentActivityBinding, F as readAgentActivityOutboxHealth, It as buildPublicSpaceEntryUrl, Kt as buildUpdatesReplyWorkflowProjection, L as removeProjectOutbox, Ln as cliJsonOutputEnvelopeSchema, Lt as buildSignalIndex, Nt as buildDispatchResultMessageReadProjection, O as readCodexSessionTitles, Pt as buildDispatchResultReplyWorkflowProjection, Rt as buildSignalMessageReadProjection, T as buildAgentActivityEvent, Wt as buildSpaceRoundReadProjection, Xt as createSpaceMemberIdentityIndex, _ as readOpenMeldCreatedLocalAgentSessionProjectAttributions, _r as organizationJoinLinkErrorResponseSchema, ar as cliJsonSkillsLoadEnvelopeSchema, b as resolveOpenMeldCreatedLocalAgentSessionProjectAttribution, en as formatRemovedCcRelationMessage, fr as acceptOrganizationJoinLinkBodySchema, i as readDispatchOwnedRuntimeGuard, ir as cliJsonSkillsListEnvelopeSchema, j as removeProjectInbox, kt as upsertSpaceConfig, mr as getOrganizationJoinLinkResponseSchema, nr as cliJsonSkillsAddEnvelopeSchema, or as cliJsonSkillsScanEnvelopeSchema, rr as cliJsonSkillsAddPreviewEnvelopeSchema, sr as cliJsonSkillsShowEnvelopeSchema, t as assertDispatchOwnedRuntimePublicWriteAllowed, tr as cliJsonSkillsAddAllEnvelopeSchema, tt as readRecentDaemonDispatchJournalEvents, vr as organizationJoinLinkManagementQuerySchema, vt as inspectSpaceCacheFile, xr as revokeOrganizationJoinLinkResponseSchema } from "./dispatch-owned-runtime-CZLplr8F.js";
|
|
18
|
+
import { c as toStructuredGatewayFailure, d as resolveSpaceSendText, f as resolveSpaceTaskSelection, h as createCliSpaceApi, l as parseJsonResponse, n as updateSpaceMeta, o as readGatewayJsonResponse, s as readGatewayTextResponse, t as fetchSpaceMeta, u as resolveCliProjectWork } from "./meta-api-BpSn7MBy.js";
|
|
19
|
+
import { A as readAgentActivityContextForPath, B as installAgentActivityIntegrations, F as registerAgentActivityRoute, H as resolveAgentActivityDispatcherCommand, I as resolveAgentActivityRouteForPath, L as unregisterAgentActivityRoute, M as enqueueControllerTaskLifecycleEventWhileLocked, N as readControllerTaskLifecycleOutboxHealth, O as syncLocalAgentActivity, P as isAgentActivityRouteRegistered, S as readRuntimeReportingHealthState, U as uninstallAgentActivityIntegrations, V as readAgentActivityIntegrationStatus, c as runDirectMessage, d as runSpaceActionSilent, f as runSpaceActionStatus, i as materializeOrganizationSkillRelease, j as removeAgentActivityContextCache, l as runSpaceActionHelp, m as runSpaceActionWake, n as createSpaceWorkingCopies, o as runSpaceActionMcpServer, p as runSpaceActionTargets, r as downloadWorkingCopyFile, t as fetchSpaceUpdates, u as runSpaceActionReply, z as defaultManagedIntegrationPaths } from "./updates-api-B8lZk9gI.js";
|
|
20
|
+
import { G as readManagedCliInstallation, H as buildInstallSelfJsonPayload, U as performManagedInstall, r as readCurrentDaemonRuntimeContext } from "./daemon-service-runtime-CaUu_AdU.js";
|
|
21
21
|
import { t as activateWindowsManagedCommand } from "./windows-system-DsNqYvVr.js";
|
|
22
|
-
import { $ as formatDeviceReplyReadinessLabel, At as getSetupFlowCopy, Bt as classifyDaemonServiceRunStartability, Et as resolveCurrentDaemonExpectedVersion, H as resolveDaemonServiceFreshnessWarning, Ot as buildDaemonRouteObservationPresentation$1, P as resolveServiceReadinessFromServiceStatus, Q as formatAgentReplyReadinessLabel, Vt as classifyDaemonServiceWakeability, Z as resolveCurrentReplyReadinessSnapshot, d as assessCliUpdate, et as formatHumanReplyReadinessReason$1, f as isCliUpdateCheckApplicable, ft as resolveOpenClawLocalDiagnosticsValue, kt as buildOnboardingPlan, lt as resolveGatewayChainReadiness, m as runPendingDaemonServiceUpdate, mt as inspectDaemonServiceInventory, nt as mapAgentReplyReadinessToLegacyAutoReply, o as assessServerRequiredVersion, u as readCurrentLocalDeviceId } from "./openmeld-tools-update-coordinator-
|
|
23
|
-
import { $ as formatAgentProfileBindingUpdateFailure, A as isSpaceCommandOutputHandledError, B as resolveAgentProfileSetup, C as buildFormalSignalReadPayload, D as resolveLinkAccessLabel, E as formatHumanReadTargetList, F as emitSpaceAgentOverview, G as renderOpenMeldBrandBlockLines, H as colorizeAgentLabel, I as emitSpaceCliAgentOverview, J as renderOpenMeldTagline, K as renderOpenMeldHeader, L as prepareLocalAgentReadiness, M as assertValidSpaceIdTarget, N as prepareAuthenticatedSpaceCommandContext, O as resolveOrganizationVisibilityLabel, P as resolveOpenMeldProfileForSpaceCommand, Q as ensureAgentProfileRuntimeBinding, R as buildReplyReadinessGuidance, S as buildFormalDispatchResultReadPayload, T as buildHumanReplyContextSummary, U as colorizeDisplayProfileLabel, V as resolveHumanControllerDisplayName, W as printOpenMeldBanner, X as resolveCreateProfileKind, Y as createProfileByKind, Z as resolveCreateProfileName, _ as emitHumanReadSignalsTextProjection, a as runSpaceDelete, b as loadSpaceSignalIndexOrNull, c as runSpaceLeave, d as runSpaceRemoveMembers, et as assessActionParticipationCandidate, f as runSpaceSend, g as buildHumanReadSignalsTranscriptItems, h as runSpaceWriteWithPasswordRetry, i as runSpaceCreate, j as assertFullSignalIdArgument, k as parseEnvelope, l as runSpaceList, m as runSpaceReadWithPasswordRetry, n as promptAndConfirmSpacePassword, o as runSpaceHistory, p as runSpaceWatch, q as renderOpenMeldLogo, r as runSpaceAddMembers, s as runSpaceJoin, t as buildCreateSpacePasswordPromptConfig, u as runSpacePassword, v as buildIdentityOnlyMembersSnapshotForReadProjection, w as formatTextEvent, x as toSpaceMetaUpsertInput, y as loadSpaceIdentityDirectoryOrNull, z as persistAgentTransportSelection } from "./command-
|
|
24
|
-
import { O as runMacOsNativeKeychainHelperIfRequested, T as updateAuthSessionActiveOrganization, _ as normalizeStoredActiveOrganization, a as beginAuthSessionTransition, at as formatOpenMeldCliCommand, ct as formatOpenMeldCliTextBlock, d as getAuthSessionState, dt as resolveSetupFollowUpCliEntryCommand, f as getCurrentAuthOwnerUserId, ft as resolveUserFacingCliEntryCommand, it as formatInlineOpenMeldCliCommands, n as AuthSessionRecoveryInProgressError, o as buildStoredAuthSessionIdentity, ot as formatOpenMeldCliCommands, s as clearAuthSession, st as formatOpenMeldCliLine, t as AuthSessionChangedBeforeTransitionError, u as getAuthSessionMetadata, ut as formatProfileAwareOpenMeldCliCommands } from "./auth-session-
|
|
22
|
+
import { $ as formatDeviceReplyReadinessLabel, At as getSetupFlowCopy, Bt as classifyDaemonServiceRunStartability, Et as resolveCurrentDaemonExpectedVersion, H as resolveDaemonServiceFreshnessWarning, Ot as buildDaemonRouteObservationPresentation$1, P as resolveServiceReadinessFromServiceStatus, Q as formatAgentReplyReadinessLabel, Vt as classifyDaemonServiceWakeability, Z as resolveCurrentReplyReadinessSnapshot, d as assessCliUpdate, et as formatHumanReplyReadinessReason$1, f as isCliUpdateCheckApplicable, ft as resolveOpenClawLocalDiagnosticsValue, kt as buildOnboardingPlan, lt as resolveGatewayChainReadiness, m as runPendingDaemonServiceUpdate, mt as inspectDaemonServiceInventory, nt as mapAgentReplyReadinessToLegacyAutoReply, o as assessServerRequiredVersion, u as readCurrentLocalDeviceId } from "./openmeld-tools-update-coordinator-B_Dd_-GW.js";
|
|
23
|
+
import { $ as formatAgentProfileBindingUpdateFailure, A as isSpaceCommandOutputHandledError, B as resolveAgentProfileSetup, C as buildFormalSignalReadPayload, D as resolveLinkAccessLabel, E as formatHumanReadTargetList, F as emitSpaceAgentOverview, G as renderOpenMeldBrandBlockLines, H as colorizeAgentLabel, I as emitSpaceCliAgentOverview, J as renderOpenMeldTagline, K as renderOpenMeldHeader, L as prepareLocalAgentReadiness, M as assertValidSpaceIdTarget, N as prepareAuthenticatedSpaceCommandContext, O as resolveOrganizationVisibilityLabel, P as resolveOpenMeldProfileForSpaceCommand, Q as ensureAgentProfileRuntimeBinding, R as buildReplyReadinessGuidance, S as buildFormalDispatchResultReadPayload, T as buildHumanReplyContextSummary, U as colorizeDisplayProfileLabel, V as resolveHumanControllerDisplayName, W as printOpenMeldBanner, X as resolveCreateProfileKind, Y as createProfileByKind, Z as resolveCreateProfileName, _ as emitHumanReadSignalsTextProjection, a as runSpaceDelete, b as loadSpaceSignalIndexOrNull, c as runSpaceLeave, d as runSpaceRemoveMembers, et as assessActionParticipationCandidate, f as runSpaceSend, g as buildHumanReadSignalsTranscriptItems, h as runSpaceWriteWithPasswordRetry, i as runSpaceCreate, j as assertFullSignalIdArgument, k as parseEnvelope, l as runSpaceList, m as runSpaceReadWithPasswordRetry, n as promptAndConfirmSpacePassword, o as runSpaceHistory, p as runSpaceWatch, q as renderOpenMeldLogo, r as runSpaceAddMembers, s as runSpaceJoin, t as buildCreateSpacePasswordPromptConfig, u as runSpacePassword, v as buildIdentityOnlyMembersSnapshotForReadProjection, w as formatTextEvent, x as toSpaceMetaUpsertInput, y as loadSpaceIdentityDirectoryOrNull, z as persistAgentTransportSelection } from "./command-DdMi5g2D.js";
|
|
24
|
+
import { O as runMacOsNativeKeychainHelperIfRequested, T as updateAuthSessionActiveOrganization, _ as normalizeStoredActiveOrganization, a as beginAuthSessionTransition, at as formatOpenMeldCliCommand, ct as formatOpenMeldCliTextBlock, d as getAuthSessionState, dt as resolveSetupFollowUpCliEntryCommand, f as getCurrentAuthOwnerUserId, ft as resolveUserFacingCliEntryCommand, it as formatInlineOpenMeldCliCommands, n as AuthSessionRecoveryInProgressError, o as buildStoredAuthSessionIdentity, ot as formatOpenMeldCliCommands, s as clearAuthSession, st as formatOpenMeldCliLine, t as AuthSessionChangedBeforeTransitionError, u as getAuthSessionMetadata, ut as formatProfileAwareOpenMeldCliCommands } from "./auth-session-DRQMn41Z.js";
|
|
25
25
|
import { A as formatLocalMachineIssueMessage, D as isLocalMachineFailureError, O as toRecognizedLocalMachineFailureError, S as LocalMachineFailureError, T as createOrphanedSetupConcurrencyIssue, _ as resolveCliContext, a as isOpenMeldOrphanedLockError, b as formatLaneScopeSentence, c as releaseLockSync, d as runWithHeldLock, i as isOpenMeldLockError, l as repairOrphanedLegacyLocks, m as OPENMELD_CLI_CONTEXT_ENV_KEY, p as LEGACY_OPENMELD_AGENT_SESSION_ENV_KEY, r as buildOpenMeldOrphanedLockAction, t as acquireLock, u as resolveOpenMeldOrphanedLockIssue, w as createActiveSetupConcurrencyIssue, x as resolveOpenMeldLaneDescriptor } from "./lock-DP8d33p_.js";
|
|
26
|
-
import { C as canonicalizeAllowedActions, _ as buildAgentFacingPublicationModeGuideLines, c as readDispatchSpaceActionContextFromEnv, f as OPENMELD_AGENT_MENTAL_MODEL_LINES, h as areAllowedActionsEquivalent } from "./sensitive-operation-credentials-
|
|
27
|
-
import { A as resolveAuthenticationGuidanceFromError, C as buildAgentAuthenticationGuide, D as createAuthenticationError, E as buildHumanAuthenticationCard, N as getProfileDefaultView, P as setProfileDefaultView, S as setSelectedOpenMeldProfileId, a as requireOpenMeldProfile, b as clearSelectedOpenMeldProfileId, c as createOpenMeldHumanProfile, d as listOpenMeldProfiles, f as primeOpenMeldProfilesSessionCache, i as isSelectedOpenMeldProfileRequiredError, j as resolveAuthenticationGuidanceFromMessage, k as resolveAuthenticationGuidance, l as deleteOpenMeldProfile, m as updateOpenMeldProfile, n as resolveRuntimeContext, o as resolveOpenMeldProfileOrNull, p as resolveOpenMeldProfile, r as resolveViewProfileKey, s as createOpenMeldAgentProfile, t as parseCliViewMode, v as alignSelectedOpenMeldProfileStorage, x as getSelectedOpenMeldProfileId } from "./context-
|
|
26
|
+
import { C as canonicalizeAllowedActions, _ as buildAgentFacingPublicationModeGuideLines, c as readDispatchSpaceActionContextFromEnv, f as OPENMELD_AGENT_MENTAL_MODEL_LINES, h as areAllowedActionsEquivalent } from "./sensitive-operation-credentials-Dr_neVvL.js";
|
|
27
|
+
import { A as resolveAuthenticationGuidanceFromError, C as buildAgentAuthenticationGuide, D as createAuthenticationError, E as buildHumanAuthenticationCard, N as getProfileDefaultView, P as setProfileDefaultView, S as setSelectedOpenMeldProfileId, a as requireOpenMeldProfile, b as clearSelectedOpenMeldProfileId, c as createOpenMeldHumanProfile, d as listOpenMeldProfiles, f as primeOpenMeldProfilesSessionCache, i as isSelectedOpenMeldProfileRequiredError, j as resolveAuthenticationGuidanceFromMessage, k as resolveAuthenticationGuidance, l as deleteOpenMeldProfile, m as updateOpenMeldProfile, n as resolveRuntimeContext, o as resolveOpenMeldProfileOrNull, p as resolveOpenMeldProfile, r as resolveViewProfileKey, s as createOpenMeldAgentProfile, t as parseCliViewMode, v as alignSelectedOpenMeldProfileStorage, x as getSelectedOpenMeldProfileId } from "./context-BvLQjNGR.js";
|
|
28
28
|
import { n as resolveOpenMeldDistribution, t as isBinaryDistribution } from "./distribution-BDQT2ilb.js";
|
|
29
29
|
import { A as getDaemonStatus } from "./daemon-state-CTOVPwNq.js";
|
|
30
|
-
import { a as outJsonLine, i as errLine, n as sanitizeTerminalDisplayText, o as outLine, r as formatMessage, t as createPresenter } from "./presenter-
|
|
31
|
-
import { c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfile, n as fetchSpaceRequestWithTimeout, p as deriveAuthBaseUrlFromGatewayUrl, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation } from "./api-client-foundation-
|
|
30
|
+
import { a as outJsonLine, i as errLine, n as sanitizeTerminalDisplayText, o as outLine, r as formatMessage, t as createPresenter } from "./presenter-DMoE2U_q.js";
|
|
31
|
+
import { c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfile, n as fetchSpaceRequestWithTimeout, p as deriveAuthBaseUrlFromGatewayUrl, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation } from "./api-client-foundation-i2KBsQ7r.js";
|
|
32
32
|
import { i as readDaemonServiceContract } from "./daemon-service-contract-CsANv7K_.js";
|
|
33
|
-
import { t as resolveOpenMeldEnvironmentTarget } from "./openmeld-environment-target-
|
|
34
|
-
import { r as runServiceAccountCarrier } from "./service-account-authorization-
|
|
35
|
-
import { a as requestLocalSetLocalAgentEnabled, n as requestLocalAgentActivitySync, t as LocalDaemonControlPlaneClientError } from "./client-
|
|
36
|
-
import { d as compareSemver, f as ensureVersionStateReady, l as OPENMELD_VERSION } from "./daemon-lifecycle-journal-
|
|
37
|
-
import { A as createSpaceUpdatesGuideError, D as createSpaceSubcommandTargetGuideError, F as getCommandHintsFromContract, K as registerSkillsTargetSelectionOptions, M as createStartAuthenticationGuideError, O as createSpaceTargetGuideError, Q as registerAuthLoginRequestOptions, R as registerSpaceMemberSelectionOptions, S as createSpaceResultGuideError, V as SPACE_ADD_MEMBERS_PROGRESS_HEARTBEAT_MS, X as registerDaemonControlTargetOptions, Y as getCliVersionInfo, a as createProfileMenuGuideError, ct as buildDualViewGuideMessage, d as createSpaceContractSetGuideError, g as createSpaceMenuGuideError, h as createSpaceLeaveGuideError, i as createProfileCreateGuideError, j as createStartAgentIdentityGuideError, l as createSpaceAddMembersGuideError, lt as formatAgentOverviewPayload, n as createDoctorFailedGuideError, o as createResetConfirmationGuideError, ot as DualViewGuideError, r as createProfileActionGuideError, rt as registerBuiltinAgentSelectionOptions, st as formatDualViewGuideForDisplay, u as createSpaceAliasTargetGuideError, v as createSpacePublicationSetGuideError, x as createSpaceRemoveMembersGuideError } from "./dual-view-guide-catalog-
|
|
38
|
-
import { m as canUseInteractivePrompts } from "./elapsed-time-
|
|
39
|
-
import { n as collectSkillsReadinessSnapshot } from "./installation-inventory-
|
|
40
|
-
import { t as runServiceAccountControl } from "./service-account-control-
|
|
41
|
-
import { C as buildNoLocalAgentsNoticeLines, E as writePrepareSessionSetupBootstrapResult, S as buildLocalAgentsGuideUrl, _ as runStartLocalAgentsEnable, a as assertSetupServiceUpdateComplete, b as submitSelectedAgentControllerReports, c as collectObservedDeviceMetadata, d as collectStartLocalReadiness, f as runSkillsCheck$1, g as runSkillsUpdate, h as runSkillsUninstall, i as runPrepareSessionExecutor, l as createSetupProgressReporter, m as runSkillsInstall, n as reportPrepareHandoffStopped, o as shouldForceSetupServiceRefresh, p as runSkillsEnsure, r as resolvePrepareSessionForHandoff, s as syncLocalSetupCurrentDeviceTargetFromServiceContract, t as connectPrepareSessionStream, u as resolveControllingTerminalSession, v as isCliOutputHandledError, w as confirmContinueWithoutLocalAgents, x as appendLocalAgentsGuideUrl, y as assertSelectedAgentControllerReportSubmissionsAccepted } from "./prepare-session-executor-
|
|
42
|
-
import { C as resolveGatewayWebOrigin, _ as promptSearchSelect, a as runAgentsCustomRemove, c as runAgentsDisable, d as runAgentsManage, f as runAgentsRepair, h as promptSearchMultiselect, i as runAgentsCustomList, l as runAgentsEnable, m as formatTransportModeDisplay, n as runAgentsConfig, o as runAgentsCustomUpdate, p as runAgentsShow, r as runAgentsCustomAdd, s as runAgentsDetect, t as runAgents, u as runAgentsList, w as resolveSpaceWebGatewayOrigin } from "./agents-
|
|
43
|
-
import { n as submitProfileRuntimeAgentControllerReport, p as withProbeWorkingDirectory, r as submitRuntimeAgentControllerReport } from "./runtime-agent-controller-reporting-submission-
|
|
44
|
-
import { a as runUpgrade, c as OPENMELD_UPGRADE_FAILURE_HINTS, l as OPENMELD_UPGRADE_METADATA_RECOVERY_HINTS, n as isUpgradeOutputHandledError, o as emitTopLevelAgentOverview, s as emitTopLevelCliAgentOverview, t as UPGRADE_INTERNAL_ALIGN_SERVICE_FLAG$1 } from "./upgrade-
|
|
33
|
+
import { t as resolveOpenMeldEnvironmentTarget } from "./openmeld-environment-target-DydyKO8Z.js";
|
|
34
|
+
import { r as runServiceAccountCarrier } from "./service-account-authorization-DiSsm3hB.js";
|
|
35
|
+
import { a as requestLocalSetLocalAgentEnabled, n as requestLocalAgentActivitySync, t as LocalDaemonControlPlaneClientError } from "./client-CBTgmyFC.js";
|
|
36
|
+
import { d as compareSemver, f as ensureVersionStateReady, l as OPENMELD_VERSION } from "./daemon-lifecycle-journal-BK-K3kGX.js";
|
|
37
|
+
import { A as createSpaceUpdatesGuideError, D as createSpaceSubcommandTargetGuideError, F as getCommandHintsFromContract, K as registerSkillsTargetSelectionOptions, M as createStartAuthenticationGuideError, O as createSpaceTargetGuideError, Q as registerAuthLoginRequestOptions, R as registerSpaceMemberSelectionOptions, S as createSpaceResultGuideError, V as SPACE_ADD_MEMBERS_PROGRESS_HEARTBEAT_MS, X as registerDaemonControlTargetOptions, Y as getCliVersionInfo, a as createProfileMenuGuideError, ct as buildDualViewGuideMessage, d as createSpaceContractSetGuideError, g as createSpaceMenuGuideError, h as createSpaceLeaveGuideError, i as createProfileCreateGuideError, j as createStartAgentIdentityGuideError, l as createSpaceAddMembersGuideError, lt as formatAgentOverviewPayload, n as createDoctorFailedGuideError, o as createResetConfirmationGuideError, ot as DualViewGuideError, r as createProfileActionGuideError, rt as registerBuiltinAgentSelectionOptions, st as formatDualViewGuideForDisplay, u as createSpaceAliasTargetGuideError, v as createSpacePublicationSetGuideError, x as createSpaceRemoveMembersGuideError } from "./dual-view-guide-catalog-Df60SGOI.js";
|
|
38
|
+
import { m as canUseInteractivePrompts } from "./elapsed-time-jRFzKVlC.js";
|
|
39
|
+
import { n as collectSkillsReadinessSnapshot } from "./installation-inventory-Cm-cGiGv.js";
|
|
40
|
+
import { t as runServiceAccountControl } from "./service-account-control-B4Ja3gU_.js";
|
|
41
|
+
import { C as buildNoLocalAgentsNoticeLines, E as writePrepareSessionSetupBootstrapResult, S as buildLocalAgentsGuideUrl, _ as runStartLocalAgentsEnable, a as assertSetupServiceUpdateComplete, b as submitSelectedAgentControllerReports, c as collectObservedDeviceMetadata, d as collectStartLocalReadiness, f as runSkillsCheck$1, g as runSkillsUpdate, h as runSkillsUninstall, i as runPrepareSessionExecutor, l as createSetupProgressReporter, m as runSkillsInstall, n as reportPrepareHandoffStopped, o as shouldForceSetupServiceRefresh, p as runSkillsEnsure, r as resolvePrepareSessionForHandoff, s as syncLocalSetupCurrentDeviceTargetFromServiceContract, t as connectPrepareSessionStream, u as resolveControllingTerminalSession, v as isCliOutputHandledError, w as confirmContinueWithoutLocalAgents, x as appendLocalAgentsGuideUrl, y as assertSelectedAgentControllerReportSubmissionsAccepted } from "./prepare-session-executor-Cpq7jQJg.js";
|
|
42
|
+
import { C as resolveGatewayWebOrigin, _ as promptSearchSelect, a as runAgentsCustomRemove, c as runAgentsDisable, d as runAgentsManage, f as runAgentsRepair, h as promptSearchMultiselect, i as runAgentsCustomList, l as runAgentsEnable, m as formatTransportModeDisplay, n as runAgentsConfig, o as runAgentsCustomUpdate, p as runAgentsShow, r as runAgentsCustomAdd, s as runAgentsDetect, t as runAgents, u as runAgentsList, w as resolveSpaceWebGatewayOrigin } from "./agents-DTdo7eeT.js";
|
|
43
|
+
import { n as submitProfileRuntimeAgentControllerReport, p as withProbeWorkingDirectory, r as submitRuntimeAgentControllerReport } from "./runtime-agent-controller-reporting-submission-Cnpnw9UC.js";
|
|
44
|
+
import { a as runUpgrade, c as OPENMELD_UPGRADE_FAILURE_HINTS, l as OPENMELD_UPGRADE_METADATA_RECOVERY_HINTS, n as isUpgradeOutputHandledError, o as emitTopLevelAgentOverview, s as emitTopLevelCliAgentOverview, t as UPGRADE_INTERNAL_ALIGN_SERVICE_FLAG$1 } from "./upgrade-C8iFbxmb.js";
|
|
45
45
|
import { createHash, randomUUID } from "node:crypto";
|
|
46
46
|
import { homedir, tmpdir } from "node:os";
|
|
47
47
|
import { basename, dirname, extname, isAbsolute, join, relative, resolve, sep } from "node:path";
|
|
@@ -16524,7 +16524,7 @@ function isAgentProfile(profile) {
|
|
|
16524
16524
|
}
|
|
16525
16525
|
//#endregion
|
|
16526
16526
|
//#region src/commands/setup.ts
|
|
16527
|
-
const NON_INTERACTIVE_DEFAULT_LOCAL_AGENTS_NOTICE = "Non-interactive: connecting
|
|
16527
|
+
const NON_INTERACTIVE_DEFAULT_LOCAL_AGENTS_NOTICE = "Non-interactive: connecting new agents and keeping existing On/Off choices (use --local-agent to choose, or --local-agents none to skip).";
|
|
16528
16528
|
async function runSetup(input) {
|
|
16529
16529
|
try {
|
|
16530
16530
|
return await withSetupCommandLock({
|
|
@@ -16581,18 +16581,17 @@ async function runSetupUnlocked(input) {
|
|
|
16581
16581
|
promptMessage: "Sign in to OpenMeld before setting up this computer.",
|
|
16582
16582
|
allowPrompt: interactive
|
|
16583
16583
|
})) return;
|
|
16584
|
+
const explicitLocalAgentSelection = hasExplicitLocalAgentSelection(input);
|
|
16584
16585
|
const initialReadiness = await runWithSetupProgress({
|
|
16585
16586
|
code: "setup.progress.local_agents.checking",
|
|
16586
16587
|
completionMessage: "Local agents checked.",
|
|
16587
16588
|
message: setupCopy.cliProgressCheckingLocalAgents,
|
|
16588
16589
|
presenter,
|
|
16589
16590
|
runtime,
|
|
16590
|
-
run: async () => await
|
|
16591
|
-
|
|
16592
|
-
email: null,
|
|
16593
|
-
authBaseUrl: null,
|
|
16591
|
+
run: async () => await collectStandardSetupLocalReadiness({
|
|
16592
|
+
explicitSelection: explicitLocalAgentSelection,
|
|
16594
16593
|
gatewayUrl
|
|
16595
|
-
}
|
|
16594
|
+
})
|
|
16596
16595
|
});
|
|
16597
16596
|
await emitSetupPlanForAgentView({
|
|
16598
16597
|
presenter,
|
|
@@ -16607,7 +16606,13 @@ async function runSetupUnlocked(input) {
|
|
|
16607
16606
|
localAgents: input.localAgents,
|
|
16608
16607
|
readiness: initialReadiness
|
|
16609
16608
|
});
|
|
16610
|
-
|
|
16609
|
+
const humanLocalAgentState = resolveStandardSetupHumanLocalAgentState({
|
|
16610
|
+
explicitSelection: explicitLocalAgentSelection,
|
|
16611
|
+
localAgents: input.localAgents,
|
|
16612
|
+
readiness: initialReadiness,
|
|
16613
|
+
selectedLocalAgentIds
|
|
16614
|
+
});
|
|
16615
|
+
if (humanLocalAgentState !== "kept_off") await confirmZeroLocalAgentSetupIfNeeded({
|
|
16611
16616
|
explicitSelection: hasExplicitLocalAgentSelection(input),
|
|
16612
16617
|
guideUrl: localAgentsGuideUrl,
|
|
16613
16618
|
localAgentsMode: input.localAgents,
|
|
@@ -16621,9 +16626,9 @@ async function runSetupUnlocked(input) {
|
|
|
16621
16626
|
presenter,
|
|
16622
16627
|
selectedLocalAgentIds
|
|
16623
16628
|
});
|
|
16624
|
-
const appliesLocalAgentChoice = selectedLocalAgentIds.length > 0 || normalizeOptionalString$5(input.localAgents) === "none";
|
|
16629
|
+
const appliesLocalAgentChoice = explicitLocalAgentSelection && (selectedLocalAgentIds.length > 0 || normalizeOptionalString$5(input.localAgents) === "none");
|
|
16625
16630
|
const turnedOffBeforeServiceAgentIds = appliesLocalAgentChoice ? await registerUnselectedLocalAgentsOffForSetup({ selectedLocalAgentIds }) : [];
|
|
16626
|
-
if (selectedLocalAgentIds.length > 0) assertStartLocalAgentsEnableCompleted(await runWithSetupProgress({
|
|
16631
|
+
if (explicitLocalAgentSelection && selectedLocalAgentIds.length > 0) assertStartLocalAgentsEnableCompleted(await runWithSetupProgress({
|
|
16627
16632
|
code: "setup.progress.local_agents.enabling",
|
|
16628
16633
|
completionMessage: "Local agents connected.",
|
|
16629
16634
|
message: setupCopy.cliProgressConnectingLocalAgents,
|
|
@@ -16679,10 +16684,12 @@ async function runSetupUnlocked(input) {
|
|
|
16679
16684
|
});
|
|
16680
16685
|
assertSelectedAgentControllerReportSubmissionsAccepted(runtimeReports);
|
|
16681
16686
|
const routeCatalogSync = selectedLocalAgentIds.length > 0 ? await notifyRouteCatalogAfterSetup({ reason: "setup_local_capabilities_reported" }) : null;
|
|
16682
|
-
|
|
16687
|
+
const memberAgents = await syncStandardSetupMemberAgents({
|
|
16688
|
+
appliesLocalAgentChoice,
|
|
16683
16689
|
selectedLocalAgentIds,
|
|
16684
16690
|
turnedOffBeforeServiceAgentIds
|
|
16685
|
-
})
|
|
16691
|
+
});
|
|
16692
|
+
if (memberAgents) emitSetupMemberAgentsLine(presenter, memberAgents);
|
|
16686
16693
|
await runWithSetupProgress({
|
|
16687
16694
|
code: "setup.progress.skills.updating",
|
|
16688
16695
|
completionMessage: "OpenMeld skills ready.",
|
|
@@ -16708,10 +16715,7 @@ async function runSetupUnlocked(input) {
|
|
|
16708
16715
|
selectedLocalAgentIds
|
|
16709
16716
|
}),
|
|
16710
16717
|
gatewayUrl,
|
|
16711
|
-
humanLocalAgentState
|
|
16712
|
-
localAgents: input.localAgents,
|
|
16713
|
-
selectedLocalAgentIds
|
|
16714
|
-
}),
|
|
16718
|
+
humanLocalAgentState,
|
|
16715
16719
|
localComponents,
|
|
16716
16720
|
path: "local_setup",
|
|
16717
16721
|
presenter,
|
|
@@ -16722,6 +16726,23 @@ async function runSetupUnlocked(input) {
|
|
|
16722
16726
|
view: runtime.resolvedView
|
|
16723
16727
|
});
|
|
16724
16728
|
}
|
|
16729
|
+
async function syncStandardSetupMemberAgents(input) {
|
|
16730
|
+
if (input.appliesLocalAgentChoice) return await addSetupMemberAgentsAfterLocalAgentChoice({
|
|
16731
|
+
selectedLocalAgentIds: input.selectedLocalAgentIds,
|
|
16732
|
+
turnedOffBeforeServiceAgentIds: input.turnedOffBeforeServiceAgentIds
|
|
16733
|
+
});
|
|
16734
|
+
if (input.selectedLocalAgentIds.length === 0) return null;
|
|
16735
|
+
return await addSetupSelectedMemberAgents({ selectedLocalAgentIds: input.selectedLocalAgentIds });
|
|
16736
|
+
}
|
|
16737
|
+
async function collectStandardSetupLocalReadiness(input) {
|
|
16738
|
+
if (!input.explicitSelection) await reconcileNewRunnableBuiltinAgentsForSetup();
|
|
16739
|
+
return await collectStartLocalReadiness({ auth: {
|
|
16740
|
+
status: "valid",
|
|
16741
|
+
email: null,
|
|
16742
|
+
authBaseUrl: null,
|
|
16743
|
+
gatewayUrl: input.gatewayUrl
|
|
16744
|
+
} });
|
|
16745
|
+
}
|
|
16725
16746
|
/**
|
|
16726
16747
|
* Apply the selection to Local agents, then add the selected Agents. Every
|
|
16727
16748
|
* harness turned on becomes an Agent, so an unselected agent the Service
|
|
@@ -16788,7 +16809,7 @@ function resolveSetupLocalAgentIds(input) {
|
|
|
16788
16809
|
}
|
|
16789
16810
|
return localAgentIds;
|
|
16790
16811
|
}
|
|
16791
|
-
return [...selectableById.
|
|
16812
|
+
return [...selectableById.values()].filter((candidate) => localAgentMode === "all" || candidate.enabled).map((candidate) => candidate.agentId).sort((left, right) => left.localeCompare(right));
|
|
16792
16813
|
}
|
|
16793
16814
|
async function confirmZeroLocalAgentSetupIfNeeded(input) {
|
|
16794
16815
|
if (input.selectedLocalAgentIds.length > 0 || normalizeOptionalString$5(input.localAgentsMode) === "none") return;
|
|
@@ -17026,6 +17047,7 @@ function emitDefaultLocalAgentsNoticeIfNeeded(input) {
|
|
|
17026
17047
|
}
|
|
17027
17048
|
function resolveStandardSetupHumanLocalAgentState(input) {
|
|
17028
17049
|
if (input.selectedLocalAgentIds.length > 0) return "reported";
|
|
17050
|
+
if (!input.explicitSelection && input.readiness.agents.candidates.some((candidate) => candidate.selectable && !candidate.enabled)) return "kept_off";
|
|
17029
17051
|
return normalizeOptionalString$5(input.localAgents) === "none" ? "skipped" : "none_found";
|
|
17030
17052
|
}
|
|
17031
17053
|
function resolveDelegatedSetupHumanLocalAgentState(input) {
|
|
@@ -17111,6 +17133,7 @@ function emitSetupHumanCompletion(input) {
|
|
|
17111
17133
|
function buildSetupHumanLocalAgentSections(input) {
|
|
17112
17134
|
if (input.humanLocalAgentState === "background_syncing") return ["Local agents are syncing in the background."];
|
|
17113
17135
|
if (input.humanLocalAgentState === "skipped") return ["Local agents were skipped."];
|
|
17136
|
+
if (input.humanLocalAgentState === "kept_off") return ["Your local agents remain off. Turn them on in Computers when you're ready."];
|
|
17114
17137
|
if (input.humanLocalAgentState === "none_found") {
|
|
17115
17138
|
const guideUrl = buildLocalAgentsGuideUrl(input.gatewayUrl);
|
|
17116
17139
|
return ["OpenMeld did not find a supported local agent on this computer.", `Install a local agent: ${formatTerminalHyperlink({
|
|
@@ -26224,7 +26247,7 @@ function normalizeOptionalString(value) {
|
|
|
26224
26247
|
return normalized.length > 0 ? normalized : null;
|
|
26225
26248
|
}
|
|
26226
26249
|
async function runDefaultSpaceAddMeMembership(input) {
|
|
26227
|
-
const { runSpaceAddMeMembership } = await import("./add-me-membership-
|
|
26250
|
+
const { runSpaceAddMeMembership } = await import("./add-me-membership-BEXHAhjy.js");
|
|
26228
26251
|
return await runSpaceAddMeMembership(input);
|
|
26229
26252
|
}
|
|
26230
26253
|
//#endregion
|
|
@@ -31406,7 +31429,7 @@ Commands require a stable invocationId and key; poll the same invocation to read
|
|
|
31406
31429
|
routeTokens: ["computer", "cloud"],
|
|
31407
31430
|
view,
|
|
31408
31431
|
run: async () => {
|
|
31409
|
-
const { runCloudComputer } = await import("./cloud-computer-
|
|
31432
|
+
const { runCloudComputer } = await import("./cloud-computer-CuWSimwt.js");
|
|
31410
31433
|
await runCloudComputer({
|
|
31411
31434
|
operation: opts.operation,
|
|
31412
31435
|
view
|
|
@@ -31415,7 +31438,7 @@ Commands require a stable invocationId and key; poll the same invocation to read
|
|
|
31415
31438
|
});
|
|
31416
31439
|
});
|
|
31417
31440
|
computerCmd.command("wait-for-update").description("Wait for the existing Service update before requesting a new computer connection. Use --view agent.").action(async () => {
|
|
31418
|
-
const { runComputerUpdateWait } = await import("./computer-update-wait-
|
|
31441
|
+
const { runComputerUpdateWait } = await import("./computer-update-wait-Bm_oW5Ne.js");
|
|
31419
31442
|
await runComputerUpdateWait();
|
|
31420
31443
|
});
|
|
31421
31444
|
computerCmd.command("disconnect").description("Disconnect this computer from its reviewed account without forgetting its record.").option("--connection-intent <json>", "Account and exact Computer session reviewed for disconnection").option("--expected-account <id>", "Account shown in OpenMeld Web").option("--device <id>", "Computer device shown in OpenMeld Web").option("--runtime-lane <lane>", "Computer runtime lane shown in OpenMeld Web").action(async (opts) => {
|
|
@@ -31424,9 +31447,9 @@ computerCmd.command("disconnect").description("Disconnect this computer from its
|
|
|
31424
31447
|
routeTokens: ["computer", "disconnect"],
|
|
31425
31448
|
view,
|
|
31426
31449
|
run: async () => {
|
|
31427
|
-
const { runComputerDisconnect, runComputerDisconnectTarget } = await import("./computer-disconnect-
|
|
31450
|
+
const { runComputerDisconnect, runComputerDisconnectTarget } = await import("./computer-disconnect-DGsCTpe8.js");
|
|
31428
31451
|
if (!opts.connectionIntent) {
|
|
31429
|
-
const { desktopComputerDisconnectRequestSchema } = await import("./dist-
|
|
31452
|
+
const { desktopComputerDisconnectRequestSchema } = await import("./dist-8pH5plup.js");
|
|
31430
31453
|
await runComputerDisconnectTarget(desktopComputerDisconnectRequestSchema.parse({
|
|
31431
31454
|
expectedAccount: opts.expectedAccount,
|
|
31432
31455
|
expectedConnection: {
|
|
@@ -33871,12 +33894,12 @@ async function main() {
|
|
|
33871
33894
|
if (await runMacOsNativeKeychainHelperIfRequested()) return;
|
|
33872
33895
|
const argv = process.argv.map((arg) => arg === "--h" ? "--help" : arg);
|
|
33873
33896
|
if (argv.length === 6 && argv[2] === "computer" && argv[3] === "wait-for-update" && argv[4] === "--view" && argv[5] === "agent") {
|
|
33874
|
-
const { runComputerUpdateWait } = await import("./computer-update-wait-
|
|
33897
|
+
const { runComputerUpdateWait } = await import("./computer-update-wait-Bm_oW5Ne.js");
|
|
33875
33898
|
await runComputerUpdateWait();
|
|
33876
33899
|
return;
|
|
33877
33900
|
}
|
|
33878
33901
|
if ((argv.length === 5 || argv.length === 6 && argv[5] === "--include-stopped") && argv[2] === "computer" && argv[3] === "connection-review" && argv[4] === "--json") {
|
|
33879
|
-
const { readComputerConnectionReview } = await import("./computer-connection-review-
|
|
33902
|
+
const { readComputerConnectionReview } = await import("./computer-connection-review-B7eoK0xB.js");
|
|
33880
33903
|
outLine(JSON.stringify(await readComputerConnectionReview({ includeStopped: argv[5] === "--include-stopped" })));
|
|
33881
33904
|
return;
|
|
33882
33905
|
}
|
|
@@ -33887,7 +33910,7 @@ async function main() {
|
|
|
33887
33910
|
return;
|
|
33888
33911
|
}
|
|
33889
33912
|
if (argv[3] === "control-capabilities") {
|
|
33890
|
-
const { readServiceControlCapabilities } = await import("./service-control-capabilities-
|
|
33913
|
+
const { readServiceControlCapabilities } = await import("./service-control-capabilities-D39aQwkY.js");
|
|
33891
33914
|
const capabilities = await readServiceControlCapabilities().catch(() => ({
|
|
33892
33915
|
deviceId: null,
|
|
33893
33916
|
start: false,
|
|
@@ -34072,4 +34095,4 @@ main().catch((error) => {
|
|
|
34072
34095
|
//#endregion
|
|
34073
34096
|
export { onboardingProfileKindSchema as $, memberAgentPresenceStateSchema as A, setupPlanAgentViewEventSchema as B, MEMBER_AGENT_SYNC_HARNESS_NOT_DETECTED_REASON as C, memberAgentPresenceComputerSchema as D, detectedHarnessKindSchema as E, syncMemberAgentsResponseSchema as F, onboardingContextSlotSchema as G, onboardingAccountProfileSchema as H, dualViewGuideInputSchema as I, onboardingDeviceStatusSchema as J, onboardingDecisionStatusSchema as K, structuredGuidePayloadFromInputSchema as L, memberAgentSyncOutcomeSchema as M, memberAgentSyncResultSchema as N, memberAgentPresenceProfileSchema as O, memberAgentSyncStepStatusSchema as P, onboardingPlanSummarySchema as Q, structuredGuidePayloadSchema as R, spaceBoardWorkingExecutionSchema as S, assignAgentProfileMemberAgentOutcomeSchema as T, onboardingActionIdSchema as U, setupPlanAgentViewPayloadSchema as V, onboardingAuthFactSchema as W, onboardingPlanDecisionSchema as X, onboardingFactsSchema as Y, onboardingPlanSchema as Z, spaceBoardMembersSchema as _, getSpaceDispatchResultResponseSchema as a, organizationJoinRequestResponseSchema as at, spaceBoardResponseSchema as b, dispatchResultPublicOutcomeSchema as c, spaceDispatchLookupMatchSchema as d, onboardingReasonCodeSchema as et, getSpaceContractResponseSchema as f, spaceBoardAgentProfileSchema as g, putSpaceContractBodySchema as h, spaceInvitationSchema as i, organizationJoinRequestInputSchema as it, memberAgentPresenceWorkloadSchema as j, memberAgentPresenceSchema as k, dispatchResultSchema as l, patchSpaceContractResponseSchema as m, spaceInvitationRequestSchema as n, centerAgentOrganizationScopeSchema as nt, spacePublishedDispatchResultSchema as o, organizationJoinRequestSchema as ot, patchSpaceContractBodySchema as p, onboardingDeviceFactSchema as q, spaceInvitationResponseSchema as r, centerAgentOrganizationTargetSchema as rt, dispatchResultKindSchema as s, spaceInvitationAccessInputSchema as t, onboardingSpaceContextSchema as tt, getSpaceDispatchLookupResponseSchema as u, spaceBoardOutcomeSchema as v, MEMBER_AGENT_SYNC_ROUTE as w, spaceBoardSpaceSchema as x, spaceBoardRecentOutcomeSchema as y, SETUP_PLAN_AGENT_VIEW_CODE as z };
|
|
34074
34097
|
|
|
34075
|
-
//# sourceMappingURL=openmeld-
|
|
34098
|
+
//# sourceMappingURL=openmeld-DI9YIFFj.js.map
|