openmeld 0.3.210 → 0.3.211

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/{add-me-membership-BgDujS4W.js → add-me-membership-CNgO595N.js} +2 -2
  2. package/dist/{add-me-membership-BgDujS4W.js.map → add-me-membership-CNgO595N.js.map} +1 -1
  3. package/dist/{agents-DdYL--Rj.js → agents-CGBELT4J.js} +10 -10
  4. package/dist/{agents-DdYL--Rj.js.map → agents-CGBELT4J.js.map} +1 -1
  5. package/dist/{api-client-foundation--H_ib5Vh.js → api-client-foundation-CtQTtA4m.js} +1 -1
  6. package/dist/{api-client-foundation-CQsXMqnr.js → api-client-foundation-MJK8vWfn.js} +3 -3
  7. package/dist/{api-client-foundation-CQsXMqnr.js.map → api-client-foundation-MJK8vWfn.js.map} +1 -1
  8. package/dist/{auth-session-CVxflepT.js → auth-session-CB7m-csh.js} +2 -2
  9. package/dist/{auth-session-CVxflepT.js.map → auth-session-CB7m-csh.js.map} +1 -1
  10. package/dist/auth-session-DXJq5arz.js +4 -0
  11. package/dist/{command-DNIZzJuu.js → command-oQK6PG6b.js} +8 -8
  12. package/dist/{command-DNIZzJuu.js.map → command-oQK6PG6b.js.map} +1 -1
  13. package/dist/{computer-connection-TgsnU0K9.js → computer-connection-51dg6Tq0.js} +2 -2
  14. package/dist/{computer-connection-TgsnU0K9.js.map → computer-connection-51dg6Tq0.js.map} +1 -1
  15. package/dist/{computer-connection-review-DqJTijzX.js → computer-connection-review-CiIyTeDw.js} +6 -6
  16. package/dist/{computer-connection-review-DqJTijzX.js.map → computer-connection-review-CiIyTeDw.js.map} +1 -1
  17. package/dist/{computer-setup-continuation-DFUxl9kf.js → computer-setup-continuation-CeFPluYv.js} +4 -4
  18. package/dist/{computer-setup-continuation-DFUxl9kf.js.map → computer-setup-continuation-CeFPluYv.js.map} +1 -1
  19. package/dist/{daemon-service-runtime-D7cb3-Ov.js → daemon-service-runtime-D8KrOfSV.js} +2 -2
  20. package/dist/{daemon-service-runtime-D7cb3-Ov.js.map → daemon-service-runtime-D8KrOfSV.js.map} +1 -1
  21. package/dist/dist-DajKOXDk.js +4 -0
  22. package/dist/{dist-Ccbpt6rT.js → dist-DtykdMlN.js} +238 -12
  23. package/dist/dist-DtykdMlN.js.map +1 -0
  24. package/dist/{elapsed-time-B2UGqUlR.js → elapsed-time-BE9NPM-x.js} +4 -4
  25. package/dist/{elapsed-time-B2UGqUlR.js.map → elapsed-time-BE9NPM-x.js.map} +1 -1
  26. package/dist/{installation-inventory-DJiJh9nP.js → installation-inventory-CLBwkIf6.js} +3 -3
  27. package/dist/{installation-inventory-DJiJh9nP.js.map → installation-inventory-CLBwkIf6.js.map} +1 -1
  28. package/dist/{openmeld-BqTI30JS.js → openmeld-LADiOJ3_.js} +219 -19
  29. package/dist/openmeld-LADiOJ3_.js.map +1 -0
  30. package/dist/{openmeld-maintenance-worker-DeOu5U2Q.js → openmeld-maintenance-worker-B-u1CItK.js} +5 -5
  31. package/dist/{openmeld-maintenance-worker-DeOu5U2Q.js.map → openmeld-maintenance-worker-B-u1CItK.js.map} +1 -1
  32. package/dist/{openmeld-tools-update-coordinator-i1zATb9g.js → openmeld-tools-update-coordinator-qrZLtDMv.js} +15 -9
  33. package/dist/openmeld-tools-update-coordinator-qrZLtDMv.js.map +1 -0
  34. package/dist/openmeld.js +3 -3
  35. package/dist/{prepare-session-executor-BSTToACx.js → prepare-session-executor-B5aD6Fx_.js} +9 -9
  36. package/dist/{prepare-session-executor-BSTToACx.js.map → prepare-session-executor-B5aD6Fx_.js.map} +1 -1
  37. package/dist/{runtime-transport-BrzIQru0.js → runtime-transport-VcPSvVY1.js} +2 -1
  38. package/dist/runtime-transport-VcPSvVY1.js.map +1 -0
  39. package/dist/{service-account-authorization-BM7a5V4I.js → service-account-authorization-D1Wp-91j.js} +3 -3
  40. package/dist/{service-account-authorization-BM7a5V4I.js.map → service-account-authorization-D1Wp-91j.js.map} +1 -1
  41. package/dist/{service-control-capabilities-BL8hTCE6.js → service-control-capabilities-COkZ1Ceh.js} +2 -2
  42. package/dist/{service-control-capabilities-BL8hTCE6.js.map → service-control-capabilities-COkZ1Ceh.js.map} +1 -1
  43. package/dist/{service-control-capabilities--ktpSDhp.js → service-control-capabilities-CP1XCSVm.js} +1 -1
  44. package/dist/upgrade-BMh_CLJL.js +4 -0
  45. package/dist/{upgrade-JMsVlRjL.js → upgrade-DJLqTfBA.js} +4 -4
  46. package/dist/{upgrade-JMsVlRjL.js.map → upgrade-DJLqTfBA.js.map} +1 -1
  47. package/package.json +1 -1
  48. package/dist/auth-session-LTSqq_Tb.js +0 -4
  49. package/dist/dist-Ccbpt6rT.js.map +0 -1
  50. package/dist/dist-Cs3dH2Of.js +0 -4
  51. package/dist/openmeld-BqTI30JS.js.map +0 -1
  52. package/dist/openmeld-tools-update-coordinator-i1zATb9g.js.map +0 -1
  53. package/dist/runtime-transport-BrzIQru0.js.map +0 -1
  54. package/dist/upgrade-C5r5IT_8.js +0 -4
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { a as isOpenMeldOrphanedLockError, d as runWithHeldLock, i as isOpenMeldLockError, t as acquireLock } from "./lock-Dxp6o_t_.js";
4
- import { An as resolveSkillsAgentRegistry, b as prepareDaemonServiceUpdateWorkerCarrier, g as scheduleDaemonServiceUpdate, h as runPendingDaemonServiceUpdate, n as readOpenMeldToolsMaintenancePolicy, p as readPendingOpenMeldToolsUpdateAttempt, t as createOpenMeldToolsUpdateCoordinator } from "./openmeld-tools-update-coordinator-i1zATb9g.js";
5
- import { b as withSkillsInstallLock, f as ensureLocalSkills, h as downloadOfficialSkillUpdate, l as installSkillsToTargets, s as resolveTrackedInstallTargets } from "./installation-inventory-DJiJh9nP.js";
6
- import { Bt as readDaemonServiceContract, g as assertDaemonMaintenanceInstallationOwnership, it as completePendingDaemonServiceUpdate, nt as OPENMELD_VERSION, st as readPendingDaemonServiceUpdate, yt as configureDaemonMaintenanceEnvironment } from "./daemon-service-runtime-D7cb3-Ov.js";
4
+ import { An as resolveSkillsAgentRegistry, b as prepareDaemonServiceUpdateWorkerCarrier, g as scheduleDaemonServiceUpdate, h as runPendingDaemonServiceUpdate, n as readOpenMeldToolsMaintenancePolicy, p as readPendingOpenMeldToolsUpdateAttempt, t as createOpenMeldToolsUpdateCoordinator } from "./openmeld-tools-update-coordinator-qrZLtDMv.js";
5
+ import { b as withSkillsInstallLock, f as ensureLocalSkills, h as downloadOfficialSkillUpdate, l as installSkillsToTargets, s as resolveTrackedInstallTargets } from "./installation-inventory-CLBwkIf6.js";
6
+ import { Bt as readDaemonServiceContract, g as assertDaemonMaintenanceInstallationOwnership, it as completePendingDaemonServiceUpdate, nt as OPENMELD_VERSION, st as readPendingDaemonServiceUpdate, yt as configureDaemonMaintenanceEnvironment } from "./daemon-service-runtime-D8KrOfSV.js";
7
7
  import { g as getConfiguredSkillsConfig } from "./base-url-C6sHRNGu.js";
8
8
  import { W as withDaemonServiceReconcileLock } from "./daemon-state-C37ZtIZK.js";
9
9
  import { S as resolveDaemonServiceManager, v as readDaemonServiceStartupPolicyCurrent } from "./daemon-service-manager-GiMCiTmu.js";
@@ -70,7 +70,7 @@ async function runMaintenancePass() {
70
70
  }
71
71
  const result = await runPendingDaemonServiceUpdate();
72
72
  if (result?.phase === "updated") {
73
- const { finishComputerSetupAfterBackgroundUpdate, recoverComputerSetupAfterBackgroundUpdate } = await import("./computer-setup-continuation-DFUxl9kf.js");
73
+ const { finishComputerSetupAfterBackgroundUpdate, recoverComputerSetupAfterBackgroundUpdate } = await import("./computer-setup-continuation-CeFPluYv.js");
74
74
  await prepareDaemonServiceUpdateWorkerCarrier(result);
75
75
  await finishComputerSetupAfterBackgroundUpdate();
76
76
  await withDaemonServiceReconcileLock(async () => {
@@ -99,4 +99,4 @@ async function reconcileCurrentServiceStartupPolicy(updatesCurrent) {
99
99
  //#endregion
100
100
  export { runOpenMeldMaintenanceWorker };
101
101
 
102
- //# sourceMappingURL=openmeld-maintenance-worker-DeOu5U2Q.js.map
102
+ //# sourceMappingURL=openmeld-maintenance-worker-B-u1CItK.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openmeld-maintenance-worker-DeOu5U2Q.js","names":[],"sources":["../src/skills/maintenance.ts","../src/local-service/maintenance/openmeld-maintenance-worker.ts"],"sourcesContent":["import { getConfiguredSkillsConfig } from \"../config/runtime-config\";\nimport { resolveSkillsAgentRegistry } from \"./agents\";\nimport { resolveTrackedInstallTargets } from \"./installation-inventory\";\nimport { installSkillsToTargets, withSkillsInstallLock } from \"./installer\";\nimport { downloadOfficialSkillUpdate } from \"./official-release\";\nimport { ensureLocalSkills } from \"./store\";\n\nexport async function maintainOfficialCliSkill(): Promise<void> {\n const outcome = await downloadOfficialSkillUpdate().catch(\n (error: unknown) => {\n process.stderr.write(\n `[openmeld] Skill download deferred: ${error instanceof Error ? error.message : String(error)}\\n`\n );\n return \"deferred\" as const;\n }\n );\n if (outcome === \"lane_isolated\") {\n return;\n }\n await withSkillsInstallLock(async () => {\n const localSkills = await ensureLocalSkills();\n const skillsConfig = await getConfiguredSkillsConfig();\n const targets = await resolveTrackedInstallTargets({\n skillsConfig,\n registry: resolveSkillsAgentRegistry(skillsConfig),\n localSkills,\n onlyOpenMeldInstalledTargets: false,\n });\n const results = await installSkillsToTargets({\n skills: localSkills,\n targets,\n });\n const failures = results.filter((result) => result.status === \"failed\");\n if (failures.length) {\n throw new Error(\n failures\n .map((result) => `${result.targetId}: ${result.reason}`)\n .join(\"; \")\n );\n }\n });\n}\n","import { readDaemonServiceContract } from \"../../config/daemon-service-contract\";\nimport { configureDaemonMaintenanceEnvironment } from \"../../config/daemon-service-update-worker-registration\";\nimport { withDaemonServiceReconcileLock } from \"../../config/daemon-state\";\nimport {\n acquireLock,\n isOpenMeldLockError,\n isOpenMeldOrphanedLockError,\n runWithHeldLock,\n} from \"../../config/lock\";\nimport { OPENMELD_VERSION } from \"../../runtime/version\";\nimport { maintainOfficialCliSkill } from \"../../skills/maintenance\";\nimport {\n readDaemonServiceStartupPolicyCurrent,\n resolveDaemonServiceManager,\n} from \"../lifecycle/daemon-service-manager\";\nimport { assertDaemonMaintenanceInstallationOwnership } from \"../lifecycle/daemon-service-manager-command-match\";\nimport {\n runPendingDaemonServiceUpdate,\n scheduleDaemonServiceUpdate,\n} from \"../lifecycle/daemon-service-update-coordinator\";\nimport {\n completePendingDaemonServiceUpdate,\n readPendingDaemonServiceUpdate,\n} from \"../lifecycle/daemon-service-update-state\";\nimport { prepareDaemonServiceUpdateWorkerCarrier } from \"../lifecycle/daemon-service-update-worker-manager\";\nimport { readOpenMeldToolsMaintenancePolicy } from \"./openmeld-tools-maintenance-policy\";\nimport { readPendingOpenMeldToolsUpdateAttempt } from \"./openmeld-tools-update-attempt-state\";\nimport { createOpenMeldToolsUpdateCoordinator } from \"./openmeld-tools-update-coordinator\";\n\n// The OS owns this process. It is also the sole executor of persisted download\n// attempts; Service requests only publish an attempt and wake this worker.\nexport async function runOpenMeldMaintenanceWorker(): Promise<void> {\n configureDaemonMaintenanceEnvironment(process.env);\n await runMaintenanceWithLock();\n}\n\nasync function runMaintenanceWithLock(): Promise<boolean> {\n try {\n const lock = await acquireLock({\n openMeldProfileId: \"__system__\",\n key: \"maintenance-worker\",\n });\n return await runWithHeldLock({\n lock,\n run: runMaintenancePass,\n releaseContext: { component: \"maintenance_worker\" },\n });\n } catch (error) {\n // Setup/repair may still own the lifecycle lock when the OS first runs us.\n // Leave its state intact; the existing OS trigger will run another pass.\n if (isOpenMeldLockError(error) && !isOpenMeldOrphanedLockError(error)) {\n return false;\n }\n throw error;\n }\n}\n\nasync function runMaintenancePass(): Promise<boolean> {\n const pendingJob = await readPendingDaemonServiceUpdate();\n const pendingAttempt = await readPendingOpenMeldToolsUpdateAttempt();\n if (!(pendingJob || pendingAttempt)) {\n const contract = await readDaemonServiceContract();\n if (!contract || contract.desiredState !== \"background\") {\n return false;\n }\n }\n await assertDaemonMaintenanceInstallationOwnership();\n if ((await readOpenMeldToolsMaintenancePolicy()).automaticUpdatesEnabled) {\n try {\n await maintainOfficialCliSkill();\n } catch (error) {\n process.stderr.write(\n `[openmeld] Skill maintenance deferred: ${error instanceof Error ? error.message : String(error)}\\n`\n );\n }\n }\n const coordinator = createOpenMeldToolsUpdateCoordinator();\n if (!pendingJob) {\n if (pendingAttempt) {\n await coordinator.resumePendingUpdate();\n } else {\n const update = await coordinator.requestUpdate({\n requestSource: \"automatic\",\n });\n await reconcileCurrentServiceStartupPolicy(update.status === \"current\");\n }\n await coordinator.waitForIdle();\n }\n const result = await runPendingDaemonServiceUpdate();\n if (result?.phase === \"updated\") {\n const {\n finishComputerSetupAfterBackgroundUpdate,\n recoverComputerSetupAfterBackgroundUpdate,\n } = await import(\"../../commands/computer-setup-continuation\");\n // Only a verified replacement may replace the working recovery carrier.\n await prepareDaemonServiceUpdateWorkerCarrier(result);\n await finishComputerSetupAfterBackgroundUpdate();\n await withDaemonServiceReconcileLock(async () => {\n const current = await readPendingDaemonServiceUpdate();\n if (\n current?.jobId === result.jobId &&\n current.phase === \"updated\" &&\n current.targetVersion === result.targetVersion\n ) {\n await completePendingDaemonServiceUpdate(current);\n }\n });\n await recoverComputerSetupAfterBackgroundUpdate();\n return true;\n }\n if (result?.phase === \"restored\" || result?.phase === \"needs_help\") {\n process.exitCode = 1;\n }\n return false;\n}\n\nasync function reconcileCurrentServiceStartupPolicy(\n updatesCurrent: boolean\n): Promise<void> {\n if (!updatesCurrent) {\n return;\n }\n const contract = await readDaemonServiceContract();\n // An older recovery worker must not apply its policy to a newer Service,\n // and maintenance must preserve an explicit user stop.\n if (\n contract?.desiredState !== \"background\" ||\n contract.daemonVersion !== OPENMELD_VERSION\n ) {\n return;\n }\n const manager = await resolveDaemonServiceManager();\n if (\n (await readDaemonServiceStartupPolicyCurrent({\n controller: manager?.controller ?? null,\n status: (await manager?.status()) ?? null,\n })) === false\n ) {\n await scheduleDaemonServiceUpdate({\n targetVersion: contract.daemonVersion,\n urgency: \"available\",\n });\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"openmeld-maintenance-worker-B-u1CItK.js","names":[],"sources":["../src/skills/maintenance.ts","../src/local-service/maintenance/openmeld-maintenance-worker.ts"],"sourcesContent":["import { getConfiguredSkillsConfig } from \"../config/runtime-config\";\nimport { resolveSkillsAgentRegistry } from \"./agents\";\nimport { resolveTrackedInstallTargets } from \"./installation-inventory\";\nimport { installSkillsToTargets, withSkillsInstallLock } from \"./installer\";\nimport { downloadOfficialSkillUpdate } from \"./official-release\";\nimport { ensureLocalSkills } from \"./store\";\n\nexport async function maintainOfficialCliSkill(): Promise<void> {\n const outcome = await downloadOfficialSkillUpdate().catch(\n (error: unknown) => {\n process.stderr.write(\n `[openmeld] Skill download deferred: ${error instanceof Error ? error.message : String(error)}\\n`\n );\n return \"deferred\" as const;\n }\n );\n if (outcome === \"lane_isolated\") {\n return;\n }\n await withSkillsInstallLock(async () => {\n const localSkills = await ensureLocalSkills();\n const skillsConfig = await getConfiguredSkillsConfig();\n const targets = await resolveTrackedInstallTargets({\n skillsConfig,\n registry: resolveSkillsAgentRegistry(skillsConfig),\n localSkills,\n onlyOpenMeldInstalledTargets: false,\n });\n const results = await installSkillsToTargets({\n skills: localSkills,\n targets,\n });\n const failures = results.filter((result) => result.status === \"failed\");\n if (failures.length) {\n throw new Error(\n failures\n .map((result) => `${result.targetId}: ${result.reason}`)\n .join(\"; \")\n );\n }\n });\n}\n","import { readDaemonServiceContract } from \"../../config/daemon-service-contract\";\nimport { configureDaemonMaintenanceEnvironment } from \"../../config/daemon-service-update-worker-registration\";\nimport { withDaemonServiceReconcileLock } from \"../../config/daemon-state\";\nimport {\n acquireLock,\n isOpenMeldLockError,\n isOpenMeldOrphanedLockError,\n runWithHeldLock,\n} from \"../../config/lock\";\nimport { OPENMELD_VERSION } from \"../../runtime/version\";\nimport { maintainOfficialCliSkill } from \"../../skills/maintenance\";\nimport {\n readDaemonServiceStartupPolicyCurrent,\n resolveDaemonServiceManager,\n} from \"../lifecycle/daemon-service-manager\";\nimport { assertDaemonMaintenanceInstallationOwnership } from \"../lifecycle/daemon-service-manager-command-match\";\nimport {\n runPendingDaemonServiceUpdate,\n scheduleDaemonServiceUpdate,\n} from \"../lifecycle/daemon-service-update-coordinator\";\nimport {\n completePendingDaemonServiceUpdate,\n readPendingDaemonServiceUpdate,\n} from \"../lifecycle/daemon-service-update-state\";\nimport { prepareDaemonServiceUpdateWorkerCarrier } from \"../lifecycle/daemon-service-update-worker-manager\";\nimport { readOpenMeldToolsMaintenancePolicy } from \"./openmeld-tools-maintenance-policy\";\nimport { readPendingOpenMeldToolsUpdateAttempt } from \"./openmeld-tools-update-attempt-state\";\nimport { createOpenMeldToolsUpdateCoordinator } from \"./openmeld-tools-update-coordinator\";\n\n// The OS owns this process. It is also the sole executor of persisted download\n// attempts; Service requests only publish an attempt and wake this worker.\nexport async function runOpenMeldMaintenanceWorker(): Promise<void> {\n configureDaemonMaintenanceEnvironment(process.env);\n await runMaintenanceWithLock();\n}\n\nasync function runMaintenanceWithLock(): Promise<boolean> {\n try {\n const lock = await acquireLock({\n openMeldProfileId: \"__system__\",\n key: \"maintenance-worker\",\n });\n return await runWithHeldLock({\n lock,\n run: runMaintenancePass,\n releaseContext: { component: \"maintenance_worker\" },\n });\n } catch (error) {\n // Setup/repair may still own the lifecycle lock when the OS first runs us.\n // Leave its state intact; the existing OS trigger will run another pass.\n if (isOpenMeldLockError(error) && !isOpenMeldOrphanedLockError(error)) {\n return false;\n }\n throw error;\n }\n}\n\nasync function runMaintenancePass(): Promise<boolean> {\n const pendingJob = await readPendingDaemonServiceUpdate();\n const pendingAttempt = await readPendingOpenMeldToolsUpdateAttempt();\n if (!(pendingJob || pendingAttempt)) {\n const contract = await readDaemonServiceContract();\n if (!contract || contract.desiredState !== \"background\") {\n return false;\n }\n }\n await assertDaemonMaintenanceInstallationOwnership();\n if ((await readOpenMeldToolsMaintenancePolicy()).automaticUpdatesEnabled) {\n try {\n await maintainOfficialCliSkill();\n } catch (error) {\n process.stderr.write(\n `[openmeld] Skill maintenance deferred: ${error instanceof Error ? error.message : String(error)}\\n`\n );\n }\n }\n const coordinator = createOpenMeldToolsUpdateCoordinator();\n if (!pendingJob) {\n if (pendingAttempt) {\n await coordinator.resumePendingUpdate();\n } else {\n const update = await coordinator.requestUpdate({\n requestSource: \"automatic\",\n });\n await reconcileCurrentServiceStartupPolicy(update.status === \"current\");\n }\n await coordinator.waitForIdle();\n }\n const result = await runPendingDaemonServiceUpdate();\n if (result?.phase === \"updated\") {\n const {\n finishComputerSetupAfterBackgroundUpdate,\n recoverComputerSetupAfterBackgroundUpdate,\n } = await import(\"../../commands/computer-setup-continuation\");\n // Only a verified replacement may replace the working recovery carrier.\n await prepareDaemonServiceUpdateWorkerCarrier(result);\n await finishComputerSetupAfterBackgroundUpdate();\n await withDaemonServiceReconcileLock(async () => {\n const current = await readPendingDaemonServiceUpdate();\n if (\n current?.jobId === result.jobId &&\n current.phase === \"updated\" &&\n current.targetVersion === result.targetVersion\n ) {\n await completePendingDaemonServiceUpdate(current);\n }\n });\n await recoverComputerSetupAfterBackgroundUpdate();\n return true;\n }\n if (result?.phase === \"restored\" || result?.phase === \"needs_help\") {\n process.exitCode = 1;\n }\n return false;\n}\n\nasync function reconcileCurrentServiceStartupPolicy(\n updatesCurrent: boolean\n): Promise<void> {\n if (!updatesCurrent) {\n return;\n }\n const contract = await readDaemonServiceContract();\n // An older recovery worker must not apply its policy to a newer Service,\n // and maintenance must preserve an explicit user stop.\n if (\n contract?.desiredState !== \"background\" ||\n contract.daemonVersion !== OPENMELD_VERSION\n ) {\n return;\n }\n const manager = await resolveDaemonServiceManager();\n if (\n (await readDaemonServiceStartupPolicyCurrent({\n controller: manager?.controller ?? null,\n status: (await manager?.status()) ?? null,\n })) === false\n ) {\n await scheduleDaemonServiceUpdate({\n targetVersion: contract.daemonVersion,\n urgency: \"available\",\n });\n }\n}\n"],"mappings":"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"}
@@ -3,15 +3,15 @@
3
3
  import { n as toDaemonRouteObservationUrl } from "./urls-CY2uzH2-.js";
4
4
  import { t as isLoopbackHostname } from "./loopback-hostname-DHQPKq8N.js";
5
5
  import { B as deviceOpenClawProfileBootstrapPath, C as isProcessIdentityAlive, H as deviceOpenClawProfileWorkspaceDir, I as accountProfileViewPath, L as accountProfileWorkspacePath, N as OPENMELD_HOME_ENV_KEY, P as accountProfileLocalMetaPath, Q as openMeldBackupsDir, S as CURRENT_PROCESS_START_IDENTITY, V as deviceOpenClawProfileDir, X as normalizeAccountKey, Z as normalizeOpenMeldProfileId, _ as resolveCliContext, a as isOpenMeldOrphanedLockError, d as runWithHeldLock, dt as resolveOpenMeldEnvPreset, ft as resolveOpenMeldRootDir, g as readCliContextState, h as listCliContextStates, ht as runtimeDir, i as isOpenMeldLockError, q as isPublishedOpenMeldHome, rt as openMeldRootDir, t as acquireLock, tt as openMeldManagedVersionBinaryPath, y as writeCliContextState, yt as systemDir } from "./lock-Dxp6o_t_.js";
6
- import { Dn as toStructuredApiClientFailure, Kn as toErrorMessage$24, Kt as createLocalRuntimeExpectedRoutesApi, Mt as createAgentProfileBindingApi, Vn as OPENMELD_HEADER_PROFILE_ID, fi as openCodePermissionConfigSchema, mi as agentControllerCollaborationModeSchema, pi as agentControllerPermissionModeSchema, t as OpenMeldApiClientHttpError, xr as modelCatalogSchema, zt as createCurrentDeviceApi } from "./dist-Ccbpt6rT.js";
6
+ import { Ar as modelCatalogSchema, Ci as agentControllerCollaborationModeSchema, Gn as OPENMELD_HEADER_PROFILE_ID, Kt as createLocalRuntimeExpectedRoutesApi, Mt as createAgentProfileBindingApi, Si as agentControllerPermissionModeSchema, Xn as toErrorMessage$24, jn as toStructuredApiClientFailure, t as OpenMeldApiClientHttpError, xi as openCodePermissionConfigSchema, zt as createCurrentDeviceApi } from "./dist-DtykdMlN.js";
7
7
  import { _ as canonicalizeAgentControllerRef, b as normalizeKnownBuiltinAgentControllerId, d as resolveBuiltinAgentControllerConversationKind, f as HOSTED_CENTER_AGENT_CONTROLLER_REF, g as buildAgentControllerRoutingKey, l as buildAgentControllerConversationRef, m as HOSTED_REMOTE_AGENT_CONTROLLER_REF, n as runtimeAgentControllerConversationIdMappingSpecSchema, o as runtimeStreamingModeSchema, p as HOSTED_CENTER_AGENT_CONTROLLER_REF_ID, r as runtimeAgentControllerLaunchContractSchema, s as runtimeTransportModeSchema, u as conversationPolicySchema, v as canonicalizeBuiltinAgentControllerRef, x as parseAgentControllerRef$1 } from "./controller-contract-pe3_Re-c.js";
8
- import { An as normalizeMessageEnvelope, B as isOriginalErrorSafeForMessageDetails, Br as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, Dn as formatCanonicalMentionLiteral, G as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, Gr as profileErrorResponseSchema, Hr as authProfileManagedRoleSchema, Jn as agentInteractionResolutionSchema, Lr as localAgentCatalogSchema, N as runtimeTransportRejectedProfileRegistrationSchema, O as runtimeTransportLookupRouteOwnerServiceEvidenceSchema, Qr as resolveCommandAgentWorkActivity, U as openMeldDaemonProviderAccessEvidenceSchema, W as openMeldDaemonTaskResultEnvelopeWriteSchema, Wr as profileCapabilitiesResponseSchema, X as resolvePublicAgentAvailabilityCopy, Yr as openMeldProfileIdSchema, Z as resolvePublicAgentFailureRecovery, _ as runtimeTransportErrorCodeSchema, i as localWakeRouteReportSchema, n as daemonExecutionCompatibilitySchema, o as runtimeTransportCapabilitiesSchema, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, z as OPENMELD_ORIGINAL_ERROR_MAX_LENGTH, zr as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE } from "./runtime-transport-BrzIQru0.js";
8
+ import { An as normalizeMessageEnvelope, B as isOriginalErrorSafeForMessageDetails, Br as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_MESSAGE, Dn as formatCanonicalMentionLiteral, G as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, Gr as profileErrorResponseSchema, Hr as authProfileManagedRoleSchema, Jn as agentInteractionResolutionSchema, Lr as localAgentCatalogSchema, N as runtimeTransportRejectedProfileRegistrationSchema, O as runtimeTransportLookupRouteOwnerServiceEvidenceSchema, Qr as resolveCommandAgentWorkActivity, U as openMeldDaemonProviderAccessEvidenceSchema, W as openMeldDaemonTaskResultEnvelopeWriteSchema, Wr as profileCapabilitiesResponseSchema, X as resolvePublicAgentAvailabilityCopy, Yr as openMeldProfileIdSchema, Z as resolvePublicAgentFailureRecovery, _ as runtimeTransportErrorCodeSchema, i as localWakeRouteReportSchema, n as daemonExecutionCompatibilitySchema, o as runtimeTransportCapabilitiesSchema, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, z as OPENMELD_ORIGINAL_ERROR_MAX_LENGTH, zr as ADDITIONAL_HUMAN_PROFILE_CREATION_DISABLED_CODE } from "./runtime-transport-VcPSvVY1.js";
9
9
  import { L as openMeldToolsUpdateAttemptSchema, St as profileWorkspaceModeSchema, V as openMeldToolsUpdateRequestSourceSchema, _ as providerDispatchRuntimeContextSchema, a as openMeldDaemonControlPlaneResponseSchema, g as skippedDaemonProfileSchema, ht as normalizeOptionalWorkingDirectory, i as openMeldDaemonControlPlaneRequestSchema, mt as agentProfileIdSchema, pt as MAX_PROFILE_WORKING_DIRECTORY_LENGTH, y as conversationExecutionStateSchema } from "./control-plane-D9jDcbMZ.js";
10
10
  import { r as daemonServiceLaneSchema } from "./service-contract-CRyDcIIf.js";
11
- import { $ as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, F as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, H as MAX_HEARTBEAT_INTERVAL_MS$2, I as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, J as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1, K as OPENCLAW_CLI_TIMEOUT_MS$1, L as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, M as CATALOG_SYNC_RETRY_INTERVAL_MS$1, N as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, P as DAEMON_RUNTIME_CONTRACT_EPOCH$1, Q as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, R as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1, V as HEARTBEAT_RESPONSE_TIMEOUT_MS$1, W as MIN_HEARTBEAT_INTERVAL_MS$2, Y as REGISTER_RESPONSE_TIMEOUT_MS$1, Z as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, p as hasPendingComputerSetupContinuation, q as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, u as getAuthSessionState, z as DEFAULT_HEARTBEAT_INTERVAL_MS$1 } from "./auth-session-CVxflepT.js";
11
+ import { $ as RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS$1, F as DAEMON_STREAM_CONNECT_TIMEOUT_MS$1, H as MAX_HEARTBEAT_INTERVAL_MS$2, I as DAEMON_STREAM_KEEPALIVE_INTERVAL_MS$1, J as PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS$1, K as OPENCLAW_CLI_TIMEOUT_MS$1, L as DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS$1, M as CATALOG_SYNC_RETRY_INTERVAL_MS$1, N as CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS$1, P as DAEMON_RUNTIME_CONTRACT_EPOCH$1, Q as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS$1, R as DEFAULT_GATEWAY_CHAIN_TIMEOUT_MS$1, V as HEARTBEAT_RESPONSE_TIMEOUT_MS$1, W as MIN_HEARTBEAT_INTERVAL_MS$2, Y as REGISTER_RESPONSE_TIMEOUT_MS$1, Z as RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS$1, p as hasPendingComputerSetupContinuation, q as PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS$1, u as getAuthSessionState, z as DEFAULT_HEARTBEAT_INTERVAL_MS$1 } from "./auth-session-CB7m-csh.js";
12
12
  import { n as resolveOpenMeldDistribution, t as isBinaryDistribution } from "./distribution-DY2fBeSW.js";
13
13
  import { r as readDaemonRuntimeLease } from "./daemon-runtime-lease-Dd4hdHNo.js";
14
- import { $ as readManagedCliInstallation, A as prepareDaemonServiceBundle, B as resolveDaemonServiceArtifact, Bt as readDaemonServiceContract, C as daemonServiceExecutableWrapperPath, Ct as resolveDaemonServiceUpdateWorkerLaunchdPlistPath, D as ensureDaemonServiceStableBinaryExecutable, Dt as resolveDaemonServiceUpdateWorkerWindowsScriptPath, E as discardPreparedDaemonServiceBundle, Et as resolveDaemonServiceUpdateWorkerSystemdUnitPath, F as restoreDaemonActiveBundleStateSnapshot, Ft as requestLocalSyncRouteCatalog, I as runAuditedServiceManagerCarrierMutation, L as verifyDaemonActiveBundleIntegrity, Lt as clearDaemonServiceContract, N as resolveDaemonBundleEntryPathFromState, Nt as requestLocalDaemonServiceUpdateReadiness, O as ensureDaemonServiceUpdateWorkerBinaryExecutable, P as resolveInstalledDaemonBundleFingerprint, Pt as requestLocalDaemonShutdown, Q as pruneManagedInstallVersions, R as writeDaemonServiceExecutableWrapper, Rt as isDaemonServiceContractIdentityReusable, S as daemonServiceBinaryExecutablePath, St as resolveDaemonServiceUpdateWorkerIdentity, T as daemonServiceUpdateWorkerBinaryPath, Tt as resolveDaemonServiceUpdateWorkerSystemdTimerUnitPath, U as readLatestDaemonLifecycleConnectionStateEvent, V as emitDaemonLifecycleEvent, Vt as upsertDaemonServiceContract, W as readLatestDaemonLifecycleOriginEvent, _ as matchesExpectedDaemonServiceManagerDefinition, a as resolveDaemonRuntimeState, at as persistPendingDaemonServiceUpdate, bt as daemonServiceUpdateWorkerNpmEntryPath, c as resolveObservedDaemonRuntimeStatus, ct as buildNextVersionState, d as inspectLegacySharedDaemonService, et as resolveCliSelfVersion, f as listDaemonOwnedProcesses, ft as fetchLatestPackageInfo, g as assertDaemonMaintenanceInstallationOwnership, gt as resolveBundledServiceRelease, ht as writeVersionState, i as readCurrentObservedDaemonRuntimeStatus, it as completePendingDaemonServiceUpdate, j as readDaemonActiveBundleState, jt as LocalDaemonControlPlaneClientError, k as isDaemonBundleSourceAllowedForLane, l as resolveObservedRuntimeCommandEntryPath, lt as compareSemver, m as normalizeDaemonCommandPath, mt as readVersionState, n as getEffectiveDaemonRuntimeStatus, nt as OPENMELD_VERSION, o as resolveDaemonServiceManagerForRuntimeState, pt as isPlainReleaseVersion, q as runDaemonServiceManagerAction, r as readCurrentDaemonRuntimeContext, rt as DAEMON_SERVICE_UPDATE_JOB_SCHEMA, s as waitForDaemonSystemServiceToStop, st as readPendingDaemonServiceUpdate, t as clearDaemonRuntimeStateIfDefinitelyStopped, tt as withManagedInstallTransaction, u as cleanupLegacySharedDaemonServiceState, vt as INDEPENDENT_MAINTENANCE_REGISTRATION, w as daemonServiceLauncherPath, wt as resolveDaemonServiceUpdateWorkerSystemdPathUnitPath, x as clearDaemonServiceUpdateWorkerBinaryExecutable, xt as hasIndependentMaintenanceRegistration, y as activateDaemonServiceBundle, yt as configureDaemonMaintenanceEnvironment, z as writeDaemonServiceLauncher, zt as isUnsafeProductionDeviceId } from "./daemon-service-runtime-D7cb3-Ov.js";
14
+ import { $ as readManagedCliInstallation, A as prepareDaemonServiceBundle, B as resolveDaemonServiceArtifact, Bt as readDaemonServiceContract, C as daemonServiceExecutableWrapperPath, Ct as resolveDaemonServiceUpdateWorkerLaunchdPlistPath, D as ensureDaemonServiceStableBinaryExecutable, Dt as resolveDaemonServiceUpdateWorkerWindowsScriptPath, E as discardPreparedDaemonServiceBundle, Et as resolveDaemonServiceUpdateWorkerSystemdUnitPath, F as restoreDaemonActiveBundleStateSnapshot, Ft as requestLocalSyncRouteCatalog, I as runAuditedServiceManagerCarrierMutation, L as verifyDaemonActiveBundleIntegrity, Lt as clearDaemonServiceContract, N as resolveDaemonBundleEntryPathFromState, Nt as requestLocalDaemonServiceUpdateReadiness, O as ensureDaemonServiceUpdateWorkerBinaryExecutable, P as resolveInstalledDaemonBundleFingerprint, Pt as requestLocalDaemonShutdown, Q as pruneManagedInstallVersions, R as writeDaemonServiceExecutableWrapper, Rt as isDaemonServiceContractIdentityReusable, S as daemonServiceBinaryExecutablePath, St as resolveDaemonServiceUpdateWorkerIdentity, T as daemonServiceUpdateWorkerBinaryPath, Tt as resolveDaemonServiceUpdateWorkerSystemdTimerUnitPath, U as readLatestDaemonLifecycleConnectionStateEvent, V as emitDaemonLifecycleEvent, Vt as upsertDaemonServiceContract, W as readLatestDaemonLifecycleOriginEvent, _ as matchesExpectedDaemonServiceManagerDefinition, a as resolveDaemonRuntimeState, at as persistPendingDaemonServiceUpdate, bt as daemonServiceUpdateWorkerNpmEntryPath, c as resolveObservedDaemonRuntimeStatus, ct as buildNextVersionState, d as inspectLegacySharedDaemonService, et as resolveCliSelfVersion, f as listDaemonOwnedProcesses, ft as fetchLatestPackageInfo, g as assertDaemonMaintenanceInstallationOwnership, gt as resolveBundledServiceRelease, ht as writeVersionState, i as readCurrentObservedDaemonRuntimeStatus, it as completePendingDaemonServiceUpdate, j as readDaemonActiveBundleState, jt as LocalDaemonControlPlaneClientError, k as isDaemonBundleSourceAllowedForLane, l as resolveObservedRuntimeCommandEntryPath, lt as compareSemver, m as normalizeDaemonCommandPath, mt as readVersionState, n as getEffectiveDaemonRuntimeStatus, nt as OPENMELD_VERSION, o as resolveDaemonServiceManagerForRuntimeState, pt as isPlainReleaseVersion, q as runDaemonServiceManagerAction, r as readCurrentDaemonRuntimeContext, rt as DAEMON_SERVICE_UPDATE_JOB_SCHEMA, s as waitForDaemonSystemServiceToStop, st as readPendingDaemonServiceUpdate, t as clearDaemonRuntimeStateIfDefinitelyStopped, tt as withManagedInstallTransaction, u as cleanupLegacySharedDaemonServiceState, vt as INDEPENDENT_MAINTENANCE_REGISTRATION, w as daemonServiceLauncherPath, wt as resolveDaemonServiceUpdateWorkerSystemdPathUnitPath, x as clearDaemonServiceUpdateWorkerBinaryExecutable, xt as hasIndependentMaintenanceRegistration, y as activateDaemonServiceBundle, yt as configureDaemonMaintenanceEnvironment, z as writeDaemonServiceLauncher, zt as isUnsafeProductionDeviceId } from "./daemon-service-runtime-D8KrOfSV.js";
15
15
  import { i as windowsTaskActionArguments, n as runWindowsUserTask, r as windowsPowerShellPath } from "./windows-user-task-DqJWtlAm.js";
16
16
  import { C as updateConfiguredDeviceRuntimeState, T as updateConfiguredSkillsConfig, _ as getConfiguredViewCustomization, a as resolveBaseUrl, c as resolveExplicitGatewayUrlOrThrow, d as createDefaultRuntimeAgentControllerSettings, g as getConfiguredSkillsConfig, h as getConfiguredOpenMeldToolsMaintenance, i as normalizeGatewayBaseUrlOrNull, o as resolveBaseUrlOrNull, p as getConfiguredDeviceRuntimeState, v as getRuntimeConfigReadHealth, x as setConfiguredOpenMeldToolsMaintenance, y as resolveRuntimeSkillsCustomTargetId } from "./base-url-C6sHRNGu.js";
17
17
  import { n as writeDaemonLocalStateFile, t as readDaemonLocalStateFile } from "./daemon-local-state-file-jOXuXrky.js";
@@ -19,7 +19,7 @@ import { A as getDaemonStatus, B as restoreDaemonInstallStateSnapshot, F as read
19
19
  import { O as assertSafePublishedProductionServiceRegistrationMutation, S as resolveDaemonServiceManager, T as waitForLaunchdJobUnloaded, a as disableDaemonServiceAutostartIfConfigured, c as getDaemonSystemServiceLogPath, o as formatDaemonServiceJobDiagnosticsEvidence, s as getDaemonServiceLaunchdLabel, v as readDaemonServiceStartupPolicyCurrent, w as startLaunchdService } from "./daemon-service-manager-GiMCiTmu.js";
20
20
  import { a as formatOpenMeldCliCommand, c as formatOpenMeldCliTextBlock, i as formatInlineOpenMeldCliCommands, n as resolveOpenMeldEnvironmentTargetFromEnv, o as formatOpenMeldCliCommands, r as resolveAuthBaseUrl, t as resolveOpenMeldEnvironmentTarget } from "./openmeld-environment-target-NtJYJe1D.js";
21
21
  import { n as toErrorMessage$25, t as sleep } from "./dist-o3UL1EGQ.js";
22
- import { c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfile, n as fetchSpaceRequestWithTimeout, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation } from "./api-client-foundation-CQsXMqnr.js";
22
+ import { c as buildRequestAuthHeaders, d as buildOpenMeldRequestContextFromProfile, n as fetchSpaceRequestWithTimeout, s as buildOpenMeldRequestContextHeadersWithAuth, t as createCliApiClientFoundation } from "./api-client-foundation-MJK8vWfn.js";
23
23
  import { createRequire } from "node:module";
24
24
  import { createHash, randomUUID } from "node:crypto";
25
25
  import { homedir, loadavg, tmpdir, userInfo } from "node:os";
@@ -1875,7 +1875,7 @@ function resolveOpenMeldAccountContext(input) {
1875
1875
  };
1876
1876
  }
1877
1877
  async function resolveCurrentOpenMeldAccountContext() {
1878
- const { getAuthSessionMetadata } = await import("./auth-session-LTSqq_Tb.js");
1878
+ const { getAuthSessionMetadata } = await import("./auth-session-DXJq5arz.js");
1879
1879
  return resolveOpenMeldAccountContext({ session: await getAuthSessionMetadata().catch(() => null) });
1880
1880
  }
1881
1881
  function resolveHostKey(baseUrl) {
@@ -5303,6 +5303,12 @@ const OPENMELD_SPACE_ACTION_MCP_SERVER_ID = "openmeld_internal_dispatch_space_ac
5303
5303
  const OPENMELD_SPACE_ACTION_MCP_TOOL_NAMES = [
5304
5304
  "read_file",
5305
5305
  "read_history",
5306
+ "list_tasks",
5307
+ "create_task",
5308
+ "start_task",
5309
+ "submit_task_result",
5310
+ "review_task",
5311
+ "cancel_task",
5306
5312
  "reply",
5307
5313
  "status",
5308
5314
  "stay_silent"
@@ -29963,9 +29969,9 @@ function createModelCatalogReadSession(input) {
29963
29969
  async function readModelCatalogOnce(baseUrl) {
29964
29970
  try {
29965
29971
  const [apiClient, baseUrlModule, clientFoundationModule] = await Promise.all([
29966
- import("./dist-Cs3dH2Of.js"),
29972
+ import("./dist-DajKOXDk.js"),
29967
29973
  import("./base-url-BE3pFiOZ.js"),
29968
- import("./api-client-foundation--H_ib5Vh.js")
29974
+ import("./api-client-foundation-CtQTtA4m.js")
29969
29975
  ]);
29970
29976
  if (typeof apiClient.createConfigApi !== "function") throw new Error("config api client is unavailable");
29971
29977
  const resolvedBaseUrl = baseUrl ?? await baseUrlModule.resolveBaseUrl();
@@ -37774,4 +37780,4 @@ function projectServiceJob(job) {
37774
37780
  //#endregion
37775
37781
  export { formatDeviceReplyReadinessLabel as $, deleteOpenMeldProfile as $a, buildDaemonSystemServiceCommandSpec as $i, resolveRouteRegistrationReconcileDecision as $n, renderWorkingLanguagePrompt as $r, resolveProjectBindingForPath as $t, resolveDaemonStatusSnapshot as A, DAEMON_RUNTIME_CONTRACT_EPOCH as Aa, formatDaemonOwnerSummaryLabel as Ai, resolveSkillsAgentRegistry as An, seedLegacyAgentContext as Ar, createModelCatalogReadSession as At, formatDaemonServiceRefreshReliabilityMessage as B, RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_INTERVAL_MS as Ba, DaemonServiceRunError as Bi, repairBuiltinControllerInstall as Bn, buildInformationProtectionPromptPlan as Br, setOpenMeldManagedProfileWorkspace as Bt, isSystemServiceStartupTimeoutError as C, toErrorMessage$23 as Ca, resolveDispatchSpaceActionMcpServer as Ci, removeAgentCustomTarget as Cn, buildRuntimeWorkspaceFingerprint as Cr, summarizeSkippedDaemonProfiles as Ct, captureDaemonServiceEvidence as D, CONTROLLED_SHUTDOWN_REQUEST_TIMEOUT_MS as Da, createProviderOriginalError as Di, updateAgentRegistrations as Dn, loadLedgerState as Dr, resolveLocalController as Dt, startDaemonSystemServiceWithAutoRepair as E, CATALOG_SYNC_SIGNAL_POLL_INTERVAL_MS as Ea, listAgentControllerSupervisedProcessIds as Ei, updateAgentCustomTarget as En, commitResolvedAgentContext as Er, readLocalEnabledControllers as Et, buildDaemonServiceRefreshNextStep as F, HEARTBEAT_RESPONSE_TIMEOUT_MS as Fa, summarizeDaemonOwnerSnapshot as Fi, notifyDaemonRouteCatalogChanged as Fn, assertLegacyAgentContextAssociation as Fr, readProfileWorkspaceConfig as Ft, buildDaemonServiceDependencyDetails as G, resolveOpenMeldProfileOrNull as Ga, getSetupFlowCopy as Gi, isNpmGlobalCommandPath as Gn, getAgentControllerPermissionModeDisplayMetadata as Gr, bindProject as Gt, resolveDaemonServiceFreshnessWarning as H, RUNTIME_STATE_PERSIST_MIN_INTERVAL_MS as Ha, PREPARE_SESSION_RECONNECT_GRACE_MS as Hi, resolveBuiltinAgentControllerDefinition as Hn, createAgentControllerInterfaceDisplayRows as Hr, describeProfileWorkspacePathValidationFailure as Ht, buildDaemonServiceRefreshPromptMessage as I, MAX_RECONNECT_DELAY_MS as Ia, resolveDaemonRuntimeContractCompatibility as Ii, normalizeAgentId as In, buildAgentContextLookupKey as Ir, readProfileWorkspaceConfigForAccount as It, buildDaemonServiceDependencySummary as J, clearSelectedOpenMeldProfileId as Ja, resolveViewProfileKey as Ji, normalizeDispatchThreadAction as Jn, listAgentControllerPermissionModeOptions as Jr, listProjectConnectionsWithStatus as Jt, buildDaemonServiceDependencyMeaning as K, alignSelectedOpenMeldProfileStorage as Ka, parseCliViewMode as Ki, isPnpmGlobalCommandPath as Kn, getAgentControllerPermissionModeFieldLabel as Kr, isProjectBound as Kt, buildDaemonServiceRepairGuidance as L, PROVIDER_CONVERSATION_PROOF_SYNC_INTERVAL_MS as La, toStartBackgroundHelperExecutionCompatibility as Li, normalizeAgentIds as Ln, DEFAULT_TASK_LIFECYCLE_HEARTBEAT_INTERVAL_MS as Lr, resolveConfiguredProfileWorkspacePath as Lt, resolveDaemonStatusAuthenticationAttention as M, DAEMON_STREAM_KEEPALIVE_INTERVAL_MS as Ma, readCurrentDaemonOwnerSnapshot as Mi, resolveRegistryOriginLaunchCommand as Mn, upsertConversationExecutionState as Mr, resolveProfileWorkspaceRuntime as Mt, resolveServiceReadiness as N, DAEMON_STREAM_KEEPALIVE_PONG_TIMEOUT_MS as Na, resolveDaemonStopStrategy as Ni, resolveRegistryRuntimeAdapterCapabilitySnapshot as Nn, withLedgerStateTransaction as Nr, ensureOpenMeldManagedProfileWorkspace as Nt, captureDaemonServiceEvidenceBestEffort as O, CONTROLLED_SHUTDOWN_RESULT_ACK_TIMEOUT_MS as Oa, inspectDaemonServiceInventory as Oi, canManageRegistryAgentSkillTargets as On, removeConversationExecutionState as Or, resolveLocalRuntimeControllerSupport as Ot, resolveServiceReadinessFromServiceStatus as P, DEFAULT_RECONNECT_DELAY_MS as Pa, resolveStoppedContractWriteBlockedReason as Pi, resolveRegistryRuntimeAdapterContractByAgentControllerRef as Pn, buildAuthenticatedControlPlaneResponse as Pr, normalizeCustomProfileWorkspacePath as Pt, formatAgentReplyReadinessLabel as Q, createOpenMeldHumanProfile as Qa, writeDaemonServiceContract as Qi, isDaemonReconcileInProgressError as Qn, renderInformationProtectionPrompt as Qr, removeProjectConnection as Qt, buildDaemonServiceStatusReadOnlyDetail as R, PROVIDER_CONVERSATION_PROOF_SYNC_RETRY_INTERVAL_MS as Ra, ensureDaemonRuntimeContractState as Ri, parseAgentEnabledOption as Rn, areAgentControllerInterfaceAccountsSame as Rr, resolveConfiguredProfileWorkspacePathForAccount as Rt, isDaemonInventoryRunningAndStartReady as S, nowIsoString as Sa, createUnsupportedProviderUsageLimits as Si, reconcileNewRunnableBuiltinAgentsForSetup as Sn, runRuntimeTask as Sr, loadDaemonRouteCatalog as St, waitForSystemServiceStartup as T, CATALOG_SYNC_RETRY_INTERVAL_MS as Ta, materializeCliLaunchCommand as Ti, setAgentRegistrationEnabled as Tn, appendLedgerHistoryEntry as Tr, buildRuntimeRouteTargets as Tt, clearDaemonStartFailureState as U, isSelectedOpenMeldProfileRequiredError as Ua, buildDaemonRouteObservationPresentation as Ui, isBunGlobalCommandPath as Un, createAgentExecutionStatusDisplayRows as Ur, ProjectBindingOperationError as Ut, formatDaemonServiceUpdateRequiredMessage as V, RUNTIME_AGENT_CONTROLLER_REPORT_SYNC_RETRY_INTERVAL_MS as Va, resolveCurrentDaemonExpectedVersion as Vi, EMPTY_AGENT_CONTROLLER_INTERFACE_CAPABILITIES as Vn, buildWorkingLanguagePromptPlan as Vr, validateCustomProfileWorkspacePath as Vt, writeDaemonStartFailureState as W, requireOpenMeldProfile as Wa, buildOnboardingPlan as Wi, isHomebrewCommandPath as Wn, createAuthorityOpenMeldServiceRuntimeId as Wr, ProjectBindingStoreUpdateRequiredError as Wt, resolveDaemonServiceDependencyDiagnostics as X, setSelectedOpenMeldProfileId as Xa, setProfileDefaultView as Xi, SPACE_ACTION_CONTEXT_GUIDANCE_LINES as Xn, peopleComputerContainsDevice as Xr, removeAgentActivityBindingsWhileDeliveryLocked as Xt, buildDaemonServiceDependencyTitle as Y, getSelectedOpenMeldProfileId as Ya, getProfileDefaultView as Yi, syncRuntimeEventToInflightTaskControlRegistry as Yn, parseAgentControllerRef as Yr, migrateProjectBindingStore as Yt, resolveCurrentReplyReadinessSnapshot as Z, createOpenMeldAgentProfile as Za, resolveCurrentOpenMeldAccountContext as Zi, SPACE_ACTION_TARGET_GUIDANCE_LINES as Zn, projectPeopleComputersToLegacyLocalRuntimes as Zr, removeMissingProjectConnections as Zt, DaemonServiceLifecycleDrainTimeoutError as _, emitRunLine as _a, resolveInstalledCodexLaunchCandidates as _i, listAgentRegistrations as _n, compareAgentControllerRefsForDisplay as _o, resolveDispatchQueueLogMeta as _r, readDaemonRouteCatalogCache as _t, resolveServiceUpdateUrgency as a, DAEMON_SERVICE_AUTO_HEAL_ANOMALIES as aa, resolveSelectableCandidates as ai, withAgentActivityDeliveryLock as an, assertAdditionalHumanProfileCreationEnabled as ao, createLocalTaskInterruptSender as ar, resolveReplyReadinessAvailabilityReasonCopy as at, prepareDaemonServiceUpdateWorkerCarrier as b, normalizeOptionalText$52 as ba, resolveInstalledClaudeCodeLaunchCandidates as bi, readAgentRuntimeConfigHealth as bn, resolveCompatibleConversationExecutionState as br, createMutableRouteCatalogState as bt, buildLocalAgentCatalogFromReadiness as c, DAEMON_SERVICE_WAKEABILITY_ADVISORY_ANOMALIES as ca, createLocalAdapterEntries as ci, syncDeviceRuntimeStateProjection as cn, buildAuthenticationStatusLabel as co, createInflightTaskControlRegistry as cr, classifyGatewayChainFailure as ct, isCliUpdateCheckApplicable as d, buildLedgerPaths as da, resolveInstalledOpenCodeLaunchCandidates as di, emitReconcileStartedEvidence as dn, createAuthenticationError as do, MIN_HEARTBEAT_INTERVAL_MS as dr, resolveGatewayChainRetryGuidance as dt, ensureDaemonSystemServiceCommandFiles as ea, resolveAgentControllerPermissionModeForController as ei, runIfAgentActivityBindingGenerationIsCurrent as en, getOpenMeldProfileCapabilities as eo, createSerialAgentInteractionCallback as er, formatHumanReplyReadinessReason as et, readLastOpenMeldToolsUpdateAttempt as f, ensureDaemonRuntimePaths as fa, GrokBuildAcpTransportError as fi, createPrimaryBindingReadSession as fn, extractAuthenticationPromptAction as fo, applyAcceptedLeases as fr, resolveOpenClawLocalDiagnosticsValue as ft, scheduleDaemonServiceUpdate as g, dirnamePath as ga, resolveCodexTimeoutMs as gi, listAgentCustomTargets as gn, resolveAuthenticationReasonFromState as go, resolveCatalogSyncIntervalMs as gr, slugifyOpenClawNamePart as gt, runPendingDaemonServiceUpdate as h, asRecord as ha, projectCodexUsageLimits as hi, createRegistrationFromCatalogTarget as hn, resolveAuthenticationGuidanceFromMessage as ho, resolveAdaptiveHeartbeatIntervalMs as hr, normalizeOpenClawSpaceIdPrefix as ht, writeOpenMeldToolsMaintenancePolicy as i, resolveVersionChangeDirection as ia, resolveNativeAgentControllerPermissionModeForController as ii, resolveLocalProjectConnectionForPath as in, updateOpenMeldProfile as io, mergeOpenClawGatewayVisibility as ir, formatSpaceMemberCommandRecoveryCopy as it, resolveDaemonStatusAttention as j, DAEMON_STREAM_CONNECT_TIMEOUT_MS as ja, hasActiveDaemonOwners as ji, listBuiltinAgentsRegistryEntries as jn, settleInflightTask as jr, resolveCurrentEffectiveProfileWorkingFolderRuntime as jt, formatDaemonFailureContextText as k, CONTROLLED_SHUTDOWN_SOCKET_CLOSE_TIMEOUT_MS as ka, buildDaemonOwnerSnapshotFromObservedState as ki, detectInstalledSkillsAgents as kn, resolveConversationExecutionStateByLookupKey as kr, syncProfileWorkspaceState as kt, readCurrentLocalDeviceId as l, classifyDaemonServiceRunStartability as la, parseOpenCodeGoUsageResponse as li, emitDriftDetectedEvidence as ln, buildCommandAuthenticationPromptMessage as lo, ADAPTIVE_HEARTBEAT_JITTER_RATIO as lr, resolveGatewayChainReadiness as lt, readOpenMeldToolsUpdateContextFromEnv as m, resolvePreferredDaemonDeviceId as ma, resolveInstalledGrokBuildLaunchCandidates as mi, addAgentCustomTarget as mn, resolveAuthenticationGuidanceFromError as mo, pruneStaleLeases as mr, buildOpenClawSpaceSessionKey as mt, readOpenMeldToolsMaintenancePolicy as n, resolveDaemonServiceAlignmentDecision as na, resolveAgentProfileEditCapabilities as ni, unbindProject as nn, primeOpenMeldProfilesSessionCache as no, normalizeDispatchPostMessageAction as nr, mapAgentReplyReadinessToLegacyAutoReply as nt, assessServerRequiredVersion as o, DAEMON_SERVICE_FULL_ALIGNMENT_ANOMALIES as oa, resolveCatalogSyncSkippedProfilesLogState as oi, withAgentActivityLocalStateLock as on, readDaemonCatalogSyncSignal as oo, buildLocalServiceDiagnosticsPayload as or, resolveReplyReadinessGuidanceSummaryCopy as ot, readPendingOpenMeldToolsUpdateAttempt as p, resolveDaemonDeviceId as pa, probeGrokBuildAcpInterface as pi, resolveAgentProfilePrimaryAgentControllerReport as pn, resolveAuthenticationGuidance as po, applyIntervalJitterMs as pr, prepareProviderRuntime as pt, buildDaemonServiceDependencyNextStep as q, clearAllSelectedOpenMeldProfileIds as qa, resolveRuntimeContext as qi, resolveLocalRegistryAgentIdFromAgentControllerRef as qn, isAgentExecutionReadyOrConnecting as qr, listProjectBindings as qt, resolveOpenMeldToolsMaintenanceProjection as r, isVersionDowngrade as ra, resolveEvidenceSyncHealth as ri, canonicalizeLocalProjectPath as rn, resolveOpenMeldProfile as ro, createPendingAgentInteractionRegistry as rr, REPLY_READINESS_COPY as rt, describeServerRequiredVersionUnavailableReason as s, DAEMON_SERVICE_REPAIR_ANOMALIES as sa, createLocalAdapterContainer as si, NO_LOCAL_AGENTS_NEED_OPENMELD_SERVICE_REASON as sn, buildAgentAuthenticationGuide as so, createLocalExecutionSlots as sr, resolveOpenClawDiagnosticsGuidance as st, createOpenMeldToolsUpdateCoordinator as t, buildDaemonServiceTargetSpec as ta, resolveAgentExecutionStatus as ti, setDefaultProjectConnection as tn, listOpenMeldProfiles as to, buildDispatchReplyContextSummary as tr, formatReplyReadinessSummary as tt, assessCliUpdate as u, classifyDaemonServiceWakeability as ua, forkOpenCodeServerSession as ui, emitReconcileCompletedEvidence as un, buildHumanAuthenticationCard as uo, MAX_HEARTBEAT_INTERVAL_MS as ur, resolveGatewayChainRepairGuidance as ut, runDaemonServiceLifecycle as v, normalizeHeartbeatIntervalMs as va, forkCodexAppServerThread as vi, listAgentTargetStates as vn, resolveBuiltinAgentControllerBrand as vo, resolveDispatchContinuityObservation as vr, writeDaemonRouteCatalogCache as vt, resolveSystemServiceStartupWaitMs as w, warnDaemonEvent as wa, buildCliLaunchInvocation as wi, resolveAgentTargetState as wn, buildTaskResultEnvelope as wr, syncDaemonRouteCatalogState as wt, uninstallDaemonServiceUpdateWorker as x, normalizeText$11 as xa, createUnavailableProviderUsageLimits as xi, reconcileNewRunnableBuiltinAgentRegistrations as xn, resolveLatestScopedConversationExecutionState as xr, createRouteCatalogFromMutableState as xt, ensureDaemonServiceMaintenanceInstalled as y, normalizeNonNegativeInteger as ya, verifyCodexAppServerThread as yi, manageAgentRegistrationInstallation as yn, resolveCompatibleAgentContextMatch as yr, resolveLocalServiceDemand as yt, buildDaemonServiceUpdateRequiredNextStep as z, REGISTER_RESPONSE_TIMEOUT_MS as za, readDaemonRuntimeContractRepairReport as zi, sortAgentRegistrations as zn, buildAgentControllerRef as zr, setCustomProfileWorkspace as zt };
37776
37782
 
37777
- //# sourceMappingURL=openmeld-tools-update-coordinator-i1zATb9g.js.map
37783
+ //# sourceMappingURL=openmeld-tools-update-coordinator-qrZLtDMv.js.map