openmeld 0.3.231 → 0.3.232
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-0KyMk1wi.js → add-me-membership-ChntsjGm.js} +2 -2
- package/dist/{add-me-membership-0KyMk1wi.js.map → add-me-membership-ChntsjGm.js.map} +1 -1
- package/dist/{agents-Bkx6ldpV.js → agents-DruPcNSg.js} +11 -11
- package/dist/{agents-Bkx6ldpV.js.map → agents-DruPcNSg.js.map} +1 -1
- package/dist/{api-client-foundation-d4E5XWdJ.js → api-client-foundation-CDj_9Rks.js} +1 -1
- package/dist/{api-client-foundation-DgTXf3Gb.js → api-client-foundation-EZpFLGVC.js} +3 -3
- package/dist/{api-client-foundation-DgTXf3Gb.js.map → api-client-foundation-EZpFLGVC.js.map} +1 -1
- package/dist/auth-session-BOG3gV2K2.js +4 -0
- package/dist/{auth-session-pLaN5cnC.js → auth-session-DhSHCYvl.js} +4 -4
- package/dist/{auth-session-pLaN5cnC.js.map → auth-session-DhSHCYvl.js.map} +1 -1
- package/dist/auth-url-6Bb6YdNm.js +24 -0
- package/dist/auth-url-6Bb6YdNm.js.map +1 -0
- package/dist/{base-url-eck31vC8.js → base-url-0AoeTi3w.js} +3 -3
- package/dist/{base-url-eck31vC8.js.map → base-url-0AoeTi3w.js.map} +1 -1
- package/dist/{base-url-B8eWb2md.js → base-url-Bdjp-5vy.js} +1 -1
- package/dist/{channel-DppbHxHw.js → channel-tvFZSSVr.js} +24 -4
- package/dist/channel-tvFZSSVr.js.map +1 -0
- package/dist/{command-CBWv24uj.js → command-0yoZa1GT.js} +18 -18
- package/dist/{command-CBWv24uj.js.map → command-0yoZa1GT.js.map} +1 -1
- package/dist/{computer-connection-DMkamVpB.js → computer-connection-CoBDorh6.js} +2 -2
- package/dist/{computer-connection-DMkamVpB.js.map → computer-connection-CoBDorh6.js.map} +1 -1
- package/dist/{computer-connection-review-BSPMGVhN.js → computer-connection-review-Dy7p1LXZ.js} +6 -6
- package/dist/{computer-connection-review-BSPMGVhN.js.map → computer-connection-review-Dy7p1LXZ.js.map} +1 -1
- package/dist/{computer-disconnect-BQ_MDeeA.js → computer-disconnect-4Ks_DVXV.js} +9 -9
- package/dist/{computer-disconnect-BQ_MDeeA.js.map → computer-disconnect-4Ks_DVXV.js.map} +1 -1
- package/dist/{computer-setup-continuation-Cd293Yzi.js → computer-setup-continuation-ZcQb7MvI.js} +3 -3
- package/dist/{computer-setup-continuation-Cd293Yzi.js.map → computer-setup-continuation-ZcQb7MvI.js.map} +1 -1
- package/dist/{context-qbQXVLF5.js → context-BPIoofMa.js} +5 -5
- package/dist/{context-qbQXVLF5.js.map → context-BPIoofMa.js.map} +1 -1
- package/dist/{daemon-device-id-B6iDyQEs.js → daemon-device-id-DDazRZUV.js} +7 -7
- package/dist/{daemon-device-id-B6iDyQEs.js.map → daemon-device-id-DDazRZUV.js.map} +1 -1
- package/dist/{daemon-lifecycle-journal-DrwEygzu.js → daemon-lifecycle-journal-CRxQL9m6.js} +7 -7
- package/dist/{daemon-lifecycle-journal-DrwEygzu.js.map → daemon-lifecycle-journal-CRxQL9m6.js.map} +1 -1
- package/dist/{daemon-runtime-lease-C1wkT4Bi.js → daemon-runtime-lease-Bv6vhqOe.js} +2 -2
- package/dist/{daemon-runtime-lease-C1wkT4Bi.js.map → daemon-runtime-lease-Bv6vhqOe.js.map} +1 -1
- package/dist/{daemon-runtime-lease-DAQyRUc5.js → daemon-runtime-lease-ZjP0urJt.js} +1 -1
- package/dist/{daemon-service-contract-DhEfbzHt.js → daemon-service-contract-COPKbCy_.js} +4 -4
- package/dist/{daemon-service-contract-DhEfbzHt.js.map → daemon-service-contract-COPKbCy_.js.map} +1 -1
- package/dist/{daemon-service-manager-CRnFxPKA.js → daemon-service-manager-BXAp21GH.js} +6 -6
- package/dist/{daemon-service-manager-CRnFxPKA.js.map → daemon-service-manager-BXAp21GH.js.map} +1 -1
- package/dist/{daemon-service-manager-l0unaDGa.js → daemon-service-manager-C_ny0JhB.js} +1 -1
- package/dist/{daemon-service-runtime-B4nWB2Qx.js → daemon-service-runtime-BTzL0w6s.js} +14 -13
- package/dist/{daemon-service-runtime-B4nWB2Qx.js.map → daemon-service-runtime-BTzL0w6s.js.map} +1 -1
- package/dist/{daemon-service-update-coordinator-C8cW7Vn_.js → daemon-service-update-coordinator-BDs0p4bA.js} +26 -21
- package/dist/daemon-service-update-coordinator-BDs0p4bA.js.map +1 -0
- package/dist/{daemon-state-B6G5xe7f.js → daemon-state-Dte9re5V.js} +4 -4
- package/dist/{daemon-state-B6G5xe7f.js.map → daemon-state-Dte9re5V.js.map} +1 -1
- package/dist/{daemon-frame-transport-xQnNyg6E.js → dispatch-owned-runtime-CK2YJ2Oo.js} +547 -50
- package/dist/dispatch-owned-runtime-CK2YJ2Oo.js.map +1 -0
- package/dist/{dist-DFhd6JmQ.js → dist--TaSMxQz.js} +2 -2
- package/dist/{dist-DFhd6JmQ.js.map → dist--TaSMxQz.js.map} +1 -1
- package/dist/{dist-olOaAWkl.js → dist-B12upl5l.js} +1 -1
- package/dist/{dist-CAypwFRu.js → dist-Bw6OBFYo.js} +195 -185
- package/dist/dist-Bw6OBFYo.js.map +1 -0
- package/dist/{elapsed-time-COv3bjEl.js → elapsed-time-C3nfbdd9.js} +5 -5
- package/dist/{elapsed-time-COv3bjEl.js.map → elapsed-time-C3nfbdd9.js.map} +1 -1
- package/dist/{entry-DIjUKIep.js → entry-De__5RVq.js} +81 -17
- package/dist/entry-De__5RVq.js.map +1 -0
- package/dist/{installation-inventory-DllgoKT1.js → installation-inventory-Bq8iZfSa.js} +5 -5
- package/dist/{installation-inventory-DllgoKT1.js.map → installation-inventory-Bq8iZfSa.js.map} +1 -1
- package/dist/{installer-Sc79LhuA.js → installer-C7iSAOSz.js} +2 -2
- package/dist/{installer-Sc79LhuA.js.map → installer-C7iSAOSz.js.map} +1 -1
- package/dist/{lock-CMH9eoS7.js → lock-BMI00i2F.js} +2 -2
- package/dist/{lock-CMH9eoS7.js.map → lock-BMI00i2F.js.map} +1 -1
- package/dist/meta-api-BpwJWE22.js +371 -0
- package/dist/meta-api-BpwJWE22.js.map +1 -0
- package/dist/{openmeld-BUYFXSyY.js → openmeld-C0OSZJtn.js} +40 -38
- package/dist/{openmeld-BUYFXSyY.js.map → openmeld-C0OSZJtn.js.map} +1 -1
- package/dist/openmeld-dev.js +17 -9
- package/dist/openmeld-dev.js.map +1 -1
- package/dist/{openmeld-environment-target-Cw3V0WnE.js → openmeld-environment-target-BgYR6ozy.js} +8 -25
- package/dist/openmeld-environment-target-BgYR6ozy.js.map +1 -0
- package/dist/{openmeld-maintenance-worker-Br6WIhhe.js → openmeld-maintenance-worker-DY90mkWW.js} +14 -14
- package/dist/{openmeld-maintenance-worker-Br6WIhhe.js.map → openmeld-maintenance-worker-DY90mkWW.js.map} +1 -1
- package/dist/{openmeld-tools-update-join-B1l6RER6.js → openmeld-tools-update-join-DgzNuaDy.js} +4 -4
- package/dist/{openmeld-tools-update-join-B1l6RER6.js.map → openmeld-tools-update-join-DgzNuaDy.js.map} +1 -1
- package/dist/openmeld.js +5 -5
- package/dist/{paths-DSkUuEu3.js → paths-De9xdA2h.js} +11 -6
- package/dist/paths-De9xdA2h.js.map +1 -0
- package/dist/{prepare-provider-runtime-DfsSj_N_.js → prepare-provider-runtime-BGdfbFyZ.js} +20 -15
- package/dist/prepare-provider-runtime-BGdfbFyZ.js.map +1 -0
- package/dist/{prepare-session-executor-CrYpWljb.js → prepare-session-executor-CA1gq8dR.js} +25 -25
- package/dist/{prepare-session-executor-CrYpWljb.js.map → prepare-session-executor-CA1gq8dR.js.map} +1 -1
- package/dist/{process-channel-DmTb_kO4.js → process-channel-C1wRGUmk.js} +2 -2
- package/dist/{process-channel-DmTb_kO4.js.map → process-channel-C1wRGUmk.js.map} +1 -1
- package/dist/{published-production-safety-CgXxtdMK.js → published-production-safety-zANGAGDI.js} +5 -6
- package/dist/published-production-safety-zANGAGDI.js.map +1 -0
- package/dist/{runtime-ZLBVtFFY.js → runtime-DFlEdls4.js} +76 -22
- package/dist/runtime-DFlEdls4.js.map +1 -0
- package/dist/{runtime-agent-controller-reporting-submission-CbaUsNTF.js → runtime-agent-controller-reporting-submission-C_xD2A-P.js} +15 -12
- package/dist/runtime-agent-controller-reporting-submission-C_xD2A-P.js.map +1 -0
- package/dist/{runtime-reporting-health-state-DOg9iwwO.js → runtime-reporting-health-state-_bvJcV1y.js} +116 -22
- package/dist/runtime-reporting-health-state-_bvJcV1y.js.map +1 -0
- package/dist/{runtime-transport-D4x8_AmR.js → runtime-transport-DH8Ks-AU.js} +86 -6
- package/dist/runtime-transport-DH8Ks-AU.js.map +1 -0
- package/dist/{service-B9y1SQlB.js → service-KHA_Yv8q.js} +61 -28
- package/dist/service-KHA_Yv8q.js.map +1 -0
- package/dist/{service-account-authorization-Di59Cjth.js → service-account-authorization-BHWs8cRP.js} +6 -6
- package/dist/{service-account-authorization-Di59Cjth.js.map → service-account-authorization-BHWs8cRP.js.map} +1 -1
- package/dist/{service-account-control-DALO1USM.js → service-account-control-BcHjpVid.js} +13 -13
- package/dist/{service-account-control-DALO1USM.js.map → service-account-control-BcHjpVid.js.map} +1 -1
- package/dist/{service-control-capabilities-CKwU9Er5.js → service-control-capabilities-B4433dGT.js} +5 -5
- package/dist/{service-control-capabilities-CKwU9Er5.js.map → service-control-capabilities-B4433dGT.js.map} +1 -1
- package/dist/{service-control-capabilities-B9ZxDPOJ.js → service-control-capabilities-DTKD2-o0.js} +1 -1
- package/dist/{state-CdSbKM0J.js → state-iJqU2XWw.js} +3 -3
- package/dist/{state-CdSbKM0J.js.map → state-iJqU2XWw.js.map} +1 -1
- package/dist/upgrade-CuzsgsKh.js +4 -0
- package/dist/{upgrade-DLJJlkbf.js → upgrade-DlBDEvs4.js} +8 -8
- package/dist/{upgrade-DLJJlkbf.js.map → upgrade-DlBDEvs4.js.map} +1 -1
- package/dist/{windows-preview-channel-DPrYuLyY.js → windows-preview-channel-BPhfSwji.js} +2 -2
- package/dist/{windows-preview-channel-DPrYuLyY.js.map → windows-preview-channel-BPhfSwji.js.map} +1 -1
- package/dist/{windows-user-task-BR-WB7hr.js → windows-user-task-CTsMnmD4.js} +3 -3
- package/dist/{windows-user-task-BR-WB7hr.js.map → windows-user-task-CTsMnmD4.js.map} +1 -1
- package/dist/{windows-user-task-m9eMEUEq.js → windows-user-task-DnxKO3oB.js} +1 -1
- package/package.json +11 -11
- package/dist/auth-session-DExyUwLo.js +0 -4
- package/dist/channel-DppbHxHw.js.map +0 -1
- package/dist/daemon-frame-transport-xQnNyg6E.js.map +0 -1
- package/dist/daemon-service-update-coordinator-C8cW7Vn_.js.map +0 -1
- package/dist/dist-CAypwFRu.js.map +0 -1
- package/dist/entry-DIjUKIep.js.map +0 -1
- package/dist/meta-api-CEw8eOeN.js +0 -845
- package/dist/meta-api-CEw8eOeN.js.map +0 -1
- package/dist/openmeld-environment-target-Cw3V0WnE.js.map +0 -1
- package/dist/paths-DSkUuEu3.js.map +0 -1
- package/dist/prepare-provider-runtime-DfsSj_N_.js.map +0 -1
- package/dist/published-production-safety-CgXxtdMK.js.map +0 -1
- package/dist/runtime-ZLBVtFFY.js.map +0 -1
- package/dist/runtime-agent-controller-reporting-submission-CbaUsNTF.js.map +0 -1
- package/dist/runtime-reporting-health-state-DOg9iwwO.js.map +0 -1
- package/dist/runtime-transport-D4x8_AmR.js.map +0 -1
- package/dist/service-B9y1SQlB.js.map +0 -1
- package/dist/upgrade-BFWUxFpJ.js +0 -4
package/dist/openmeld-dev.js
CHANGED
|
@@ -1,18 +1,26 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { n as
|
|
4
|
-
|
|
3
|
+
import { n as DEV_LOCAL_AUTH_BASE_URL } from "./auth-url-6Bb6YdNm.js";
|
|
4
|
+
import { n as DEV_LOCAL_GATEWAY_BASE_URL } from "./base-url-0AoeTi3w.js";
|
|
5
|
+
//#region src/config/openmeld-dev-environment.ts
|
|
5
6
|
const LOCAL_GATEWAY_URL = DEV_LOCAL_GATEWAY_BASE_URL;
|
|
6
|
-
const LOCAL_AUTH_URL =
|
|
7
|
+
const LOCAL_AUTH_URL = DEV_LOCAL_AUTH_BASE_URL;
|
|
7
8
|
const LOCAL_AUTH_CLIENT_ID = "openmeld-cli-dev";
|
|
9
|
+
const PRODUCTION_AUTH_CLIENT_ID = "openmeld-cli";
|
|
8
10
|
const LOCAL_DEV_ENV_PRESET = "dev-local";
|
|
9
11
|
const LOCAL_DEV_ENTRY_COMMAND = "openmeld-dev";
|
|
10
|
-
|
|
11
|
-
if (!String(
|
|
12
|
-
if (!String(
|
|
13
|
-
if (!String(
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
function applyOpenMeldDevEnvironment(env = process.env) {
|
|
13
|
+
if (!String(env.OPENMELD_GATEWAY_URL ?? "").trim() || env.OPENMELD_GATEWAY_URL === "https://gateway.openmeld.ai") env.OPENMELD_GATEWAY_URL = LOCAL_GATEWAY_URL;
|
|
14
|
+
if (!String(env.OPENMELD_AUTH_URL ?? "").trim() || env.OPENMELD_AUTH_URL === "https://auth.openmeld.ai") env.OPENMELD_AUTH_URL = LOCAL_AUTH_URL;
|
|
15
|
+
if (!String(env.OPENMELD_AUTH_CLIENT_ID ?? "").trim() || env.OPENMELD_AUTH_CLIENT_ID === PRODUCTION_AUTH_CLIENT_ID) env.OPENMELD_AUTH_CLIENT_ID = LOCAL_AUTH_CLIENT_ID;
|
|
16
|
+
env.OPENMELD_ENV_PRESET = LOCAL_DEV_ENV_PRESET;
|
|
17
|
+
env.OPENMELD_ENV = "dev";
|
|
18
|
+
env.OPENMELD_USER_FACING_CLI_COMMAND = LOCAL_DEV_ENTRY_COMMAND;
|
|
19
|
+
env.OPENMELD_DEV_MODE = "1";
|
|
20
|
+
}
|
|
21
|
+
//#endregion
|
|
22
|
+
//#region src/openmeld-dev.ts
|
|
23
|
+
applyOpenMeldDevEnvironment();
|
|
16
24
|
import("./openmeld.js").catch((error) => {
|
|
17
25
|
const message = error instanceof Error ? error.stack ?? error.message : String(error);
|
|
18
26
|
process.stderr.write(`${message}\n`);
|
package/dist/openmeld-dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openmeld-dev.js","names":[],"sources":["../src/openmeld-dev.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"openmeld-dev.js","names":[],"sources":["../src/config/openmeld-dev-environment.ts","../src/openmeld-dev.ts"],"sourcesContent":["import { DEFAULT_AUTH_BASE_URL, DEV_LOCAL_AUTH_BASE_URL } from \"./auth-url\";\nimport {\n DEFAULT_GATEWAY_BASE_URL,\n DEV_LOCAL_GATEWAY_BASE_URL,\n} from \"./base-url\";\n\nconst LOCAL_GATEWAY_URL = DEV_LOCAL_GATEWAY_BASE_URL;\nconst LOCAL_AUTH_URL = DEV_LOCAL_AUTH_BASE_URL;\nconst LOCAL_AUTH_CLIENT_ID = \"openmeld-cli-dev\";\nconst PRODUCTION_AUTH_CLIENT_ID = \"openmeld-cli\";\nconst LOCAL_DEV_ENV_PRESET = \"dev-local\";\nconst LOCAL_DEV_ENTRY_COMMAND = \"openmeld-dev\";\n\nexport function applyOpenMeldDevEnvironment(\n env: NodeJS.ProcessEnv = process.env\n): void {\n if (\n !String(env.OPENMELD_GATEWAY_URL ?? \"\").trim() ||\n env.OPENMELD_GATEWAY_URL === DEFAULT_GATEWAY_BASE_URL\n ) {\n env.OPENMELD_GATEWAY_URL = LOCAL_GATEWAY_URL;\n }\n if (\n !String(env.OPENMELD_AUTH_URL ?? \"\").trim() ||\n env.OPENMELD_AUTH_URL === DEFAULT_AUTH_BASE_URL\n ) {\n env.OPENMELD_AUTH_URL = LOCAL_AUTH_URL;\n }\n if (\n !String(env.OPENMELD_AUTH_CLIENT_ID ?? \"\").trim() ||\n env.OPENMELD_AUTH_CLIENT_ID === PRODUCTION_AUTH_CLIENT_ID\n ) {\n env.OPENMELD_AUTH_CLIENT_ID = LOCAL_AUTH_CLIENT_ID;\n }\n\n // The executable name is the lane selector. Inherited production values\n // must never make openmeld-dev manage the production OS service identity.\n env.OPENMELD_ENV_PRESET = LOCAL_DEV_ENV_PRESET;\n env.OPENMELD_ENV = \"dev\";\n env.OPENMELD_USER_FACING_CLI_COMMAND = LOCAL_DEV_ENTRY_COMMAND;\n env.OPENMELD_DEV_MODE = \"1\";\n}\n","import { applyOpenMeldDevEnvironment } from \"./config/openmeld-dev-environment\";\n\napplyOpenMeldDevEnvironment();\n\nimport(\"./openmeld-entry\").catch((error: unknown) => {\n const message =\n error instanceof Error ? (error.stack ?? error.message) : String(error);\n process.stderr.write(`${message}\\n`);\n process.exitCode = 1;\n});\n"],"mappings":";;;;;AAMA,MAAM,oBAAoB;AAC1B,MAAM,iBAAiB;AACvB,MAAM,uBAAuB;AAC7B,MAAM,4BAA4B;AAClC,MAAM,uBAAuB;AAC7B,MAAM,0BAA0B;AAEhC,SAAgB,4BACd,MAAyB,QAAQ,KAC3B;CACN,IACE,CAAC,OAAO,IAAI,wBAAwB,EAAE,CAAC,CAAC,KAAK,KAC7C,IAAI,yBAAA,+BAEJ,IAAI,uBAAuB;CAE7B,IACE,CAAC,OAAO,IAAI,qBAAqB,EAAE,CAAC,CAAC,KAAK,KAC1C,IAAI,sBAAA,4BAEJ,IAAI,oBAAoB;CAE1B,IACE,CAAC,OAAO,IAAI,2BAA2B,EAAE,CAAC,CAAC,KAAK,KAChD,IAAI,4BAA4B,2BAEhC,IAAI,0BAA0B;CAKhC,IAAI,sBAAsB;CAC1B,IAAI,eAAe;CACnB,IAAI,mCAAmC;CACvC,IAAI,oBAAoB;AAC1B;;;ACvCA,4BAA4B;AAE5B,OAAO,gBAAmB,CAAC,OAAO,UAAmB;CACnD,MAAM,UACJ,iBAAiB,QAAS,MAAM,SAAS,MAAM,UAAW,OAAO,KAAK;CACxE,QAAQ,OAAO,MAAM,GAAG,QAAQ,GAAG;CACnC,QAAQ,WAAW;AACrB,CAAC"}
|
package/dist/{openmeld-environment-target-Cw3V0WnE.js → openmeld-environment-target-BgYR6ozy.js}
RENAMED
|
@@ -1,31 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { a as resolveBaseUrl, r as normalizeGatewayBaseUrl, s as resolveDefaultGatewayBaseUrl } from "./base-url-
|
|
3
|
+
import { P as resolveOpenMeldEnvPreset } from "./paths-De9xdA2h.js";
|
|
4
|
+
import { r as resolveAuthBaseUrl } from "./auth-url-6Bb6YdNm.js";
|
|
5
|
+
import { a as resolveBaseUrl, r as normalizeGatewayBaseUrl, s as resolveDefaultGatewayBaseUrl } from "./base-url-0AoeTi3w.js";
|
|
6
6
|
import { l as resolveUserFacingCliEntryCommand } from "./cli-entry-command-CR_9QU1i.js";
|
|
7
|
-
import process
|
|
8
|
-
//#region src/config/auth-url.ts
|
|
9
|
-
const DEFAULT_AUTH_BASE_URL = "https://auth.openmeld.ai";
|
|
10
|
-
const DEV_LOCAL_AUTH_BASE_URL = "http://localhost:8788";
|
|
11
|
-
function resolveAuthBaseUrl(cliValue, input = {}) {
|
|
12
|
-
const env = input.env ?? process.env;
|
|
13
|
-
const fromCli = String(cliValue ?? "").trim();
|
|
14
|
-
if (fromCli) return normalizeBaseUrl(fromCli);
|
|
15
|
-
const fromEnv = String(env.OPENMELD_AUTH_URL ?? "").trim();
|
|
16
|
-
if (fromEnv) return normalizeBaseUrl(fromEnv);
|
|
17
|
-
return normalizeBaseUrl(resolveDefaultAuthBaseUrl(env));
|
|
18
|
-
}
|
|
19
|
-
function resolveDefaultAuthBaseUrl(env) {
|
|
20
|
-
const preset = resolveOpenMeldEnvPreset({ env });
|
|
21
|
-
if (preset === "dev-local" || preset === "canary") return DEV_LOCAL_AUTH_BASE_URL;
|
|
22
|
-
return DEFAULT_AUTH_BASE_URL;
|
|
23
|
-
}
|
|
24
|
-
//#endregion
|
|
7
|
+
import process from "node:process";
|
|
25
8
|
//#region src/config/openmeld-environment-target.ts
|
|
26
9
|
const OPENMELD_USER_FACING_CLI_COMMAND_ENV = "OPENMELD_USER_FACING_CLI_COMMAND";
|
|
27
10
|
async function resolveOpenMeldEnvironmentTarget(input = {}) {
|
|
28
|
-
const env = input.env ?? process
|
|
11
|
+
const env = input.env ?? process.env;
|
|
29
12
|
const preset = resolveOpenMeldEnvPreset({ env });
|
|
30
13
|
return {
|
|
31
14
|
preset,
|
|
@@ -38,7 +21,7 @@ async function resolveOpenMeldEnvironmentTarget(input = {}) {
|
|
|
38
21
|
};
|
|
39
22
|
}
|
|
40
23
|
function resolveOpenMeldEnvironmentTargetFromEnv(input = {}) {
|
|
41
|
-
const env = input.env ?? process
|
|
24
|
+
const env = input.env ?? process.env;
|
|
42
25
|
const preset = resolveOpenMeldEnvPreset({ env });
|
|
43
26
|
return {
|
|
44
27
|
preset,
|
|
@@ -72,6 +55,6 @@ function normalizeOptionalText(value) {
|
|
|
72
55
|
return normalized.length > 0 ? normalized : null;
|
|
73
56
|
}
|
|
74
57
|
//#endregion
|
|
75
|
-
export { resolveOpenMeldEnvironmentTargetFromEnv as n,
|
|
58
|
+
export { resolveOpenMeldEnvironmentTargetFromEnv as n, resolveOpenMeldEnvironmentTarget as t };
|
|
76
59
|
|
|
77
|
-
//# sourceMappingURL=openmeld-environment-target-
|
|
60
|
+
//# sourceMappingURL=openmeld-environment-target-BgYR6ozy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openmeld-environment-target-BgYR6ozy.js","names":[],"sources":["../src/config/openmeld-environment-target.ts"],"sourcesContent":["import process from \"node:process\";\nimport { resolveUserFacingCliEntryCommand } from \"../runtime/cli-entry-command\";\nimport { resolveAuthBaseUrl } from \"./auth-url\";\nimport {\n normalizeGatewayBaseUrl,\n resolveBaseUrl,\n resolveDefaultGatewayBaseUrl,\n} from \"./base-url\";\nimport type { OpenMeldEnvPreset } from \"./paths\";\nimport { resolveOpenMeldEnvPreset } from \"./paths\";\n\nconst OPENMELD_USER_FACING_CLI_COMMAND_ENV = \"OPENMELD_USER_FACING_CLI_COMMAND\";\n\nexport type OpenMeldEnvironmentTarget = {\n preset: OpenMeldEnvPreset;\n gatewayUrl: string;\n authBaseUrl: string;\n userFacingCommand: string;\n};\n\ntype OpenMeldEnvironmentTargetInput = {\n gatewayUrl?: string;\n authUrl?: string;\n env?: NodeJS.ProcessEnv;\n};\n\nexport async function resolveOpenMeldEnvironmentTarget(\n input: OpenMeldEnvironmentTargetInput = {}\n): Promise<OpenMeldEnvironmentTarget> {\n const env = input.env ?? process.env;\n const preset = resolveOpenMeldEnvPreset({ env });\n return {\n preset,\n gatewayUrl: await resolveBaseUrl(input.gatewayUrl, { env }),\n authBaseUrl: resolveAuthBaseUrl(input.authUrl, { env }),\n userFacingCommand: resolveUserFacingCommandForPreset({ env, preset }),\n };\n}\n\nexport function resolveOpenMeldEnvironmentTargetFromEnv(\n input: OpenMeldEnvironmentTargetInput = {}\n): OpenMeldEnvironmentTarget {\n const env = input.env ?? process.env;\n const preset = resolveOpenMeldEnvPreset({ env });\n return {\n preset,\n gatewayUrl: resolveGatewayUrlFromEnvOnly({\n env,\n gatewayUrl: input.gatewayUrl,\n }),\n authBaseUrl: resolveAuthBaseUrl(input.authUrl, { env }),\n userFacingCommand: resolveUserFacingCommandForPreset({ env, preset }),\n };\n}\n\nfunction resolveUserFacingCommandForPreset(input: {\n env: NodeJS.ProcessEnv;\n preset: OpenMeldEnvPreset;\n}): string {\n const explicitCommand = normalizeOptionalText(\n input.env[OPENMELD_USER_FACING_CLI_COMMAND_ENV]\n );\n if (explicitCommand) {\n return explicitCommand;\n }\n if (input.preset === \"dev-local\") {\n return \"openmeld-dev\";\n }\n if (input.preset === \"canary\") {\n return \"openmeld-canary\";\n }\n return resolveUserFacingCliEntryCommand({ env: input.env });\n}\n\nfunction resolveGatewayUrlFromEnvOnly(input: {\n env: NodeJS.ProcessEnv;\n gatewayUrl?: string;\n}): string {\n const fromInput = normalizeOptionalText(input.gatewayUrl);\n if (fromInput) {\n return normalizeGatewayBaseUrl(fromInput);\n }\n const fromEnv = normalizeOptionalText(input.env.OPENMELD_GATEWAY_URL);\n if (fromEnv) {\n return normalizeGatewayBaseUrl(fromEnv);\n }\n return normalizeGatewayBaseUrl(\n resolveDefaultGatewayBaseUrl({ env: input.env })\n );\n}\n\nfunction normalizeOptionalText(value: unknown): string | null {\n const normalized = String(value ?? \"\").trim();\n return normalized.length > 0 ? normalized : null;\n}\n"],"mappings":";;;;;;;;AAWA,MAAM,uCAAuC;AAe7C,eAAsB,iCACpB,QAAwC,CAAC,GACL;CACpC,MAAM,MAAM,MAAM,OAAO,QAAQ;CACjC,MAAM,SAAS,yBAAyB,EAAE,IAAI,CAAC;CAC/C,OAAO;EACL;EACA,YAAY,MAAM,eAAe,MAAM,YAAY,EAAE,IAAI,CAAC;EAC1D,aAAa,mBAAmB,MAAM,SAAS,EAAE,IAAI,CAAC;EACtD,mBAAmB,kCAAkC;GAAE;GAAK;EAAO,CAAC;CACtE;AACF;AAEA,SAAgB,wCACd,QAAwC,CAAC,GACd;CAC3B,MAAM,MAAM,MAAM,OAAO,QAAQ;CACjC,MAAM,SAAS,yBAAyB,EAAE,IAAI,CAAC;CAC/C,OAAO;EACL;EACA,YAAY,6BAA6B;GACvC;GACA,YAAY,MAAM;EACpB,CAAC;EACD,aAAa,mBAAmB,MAAM,SAAS,EAAE,IAAI,CAAC;EACtD,mBAAmB,kCAAkC;GAAE;GAAK;EAAO,CAAC;CACtE;AACF;AAEA,SAAS,kCAAkC,OAGhC;CACT,MAAM,kBAAkB,sBACtB,MAAM,IAAI,qCACZ;CACA,IAAI,iBACF,OAAO;CAET,IAAI,MAAM,WAAW,aACnB,OAAO;CAET,IAAI,MAAM,WAAW,UACnB,OAAO;CAET,OAAO,iCAAiC,EAAE,KAAK,MAAM,IAAI,CAAC;AAC5D;AAEA,SAAS,6BAA6B,OAG3B;CACT,MAAM,YAAY,sBAAsB,MAAM,UAAU;CACxD,IAAI,WACF,OAAO,wBAAwB,SAAS;CAE1C,MAAM,UAAU,sBAAsB,MAAM,IAAI,oBAAoB;CACpE,IAAI,SACF,OAAO,wBAAwB,OAAO;CAExC,OAAO,wBACL,6BAA6B,EAAE,KAAK,MAAM,IAAI,CAAC,CACjD;AACF;AAEA,SAAS,sBAAsB,OAA+B;CAC5D,MAAM,aAAa,OAAO,SAAS,EAAE,CAAC,CAAC,KAAK;CAC5C,OAAO,WAAW,SAAS,IAAI,aAAa;AAC9C"}
|
package/dist/{openmeld-maintenance-worker-Br6WIhhe.js → openmeld-maintenance-worker-DY90mkWW.js}
RENAMED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { tt as resolveSkillsAgentRegistry } from "./prepare-provider-runtime-
|
|
4
|
-
import { f as withSkillsInstallLock, l as downloadOfficialSkillUpdate, r as ensureLocalSkills } from "./state-
|
|
5
|
-
import { $ as readPendingDaemonServiceUpdate, K as reconcileManagedCliLauncher, X as completePendingDaemonServiceUpdate, g as assertDaemonMaintenanceInstallationOwnership, nt as configureDaemonMaintenanceEnvironment } from "./daemon-service-runtime-
|
|
6
|
-
import { at as readPendingOpenMeldToolsUpdateAttempt, n as scheduleDaemonServiceUpdate, nt as createOpenMeldToolsUpdateCoordinator, ot as readOpenMeldToolsMaintenancePolicy, t as runPendingDaemonServiceUpdate, ut as prepareDaemonServiceUpdateWorkerCarrier } from "./daemon-service-update-coordinator-
|
|
7
|
-
import { a as isOpenMeldOrphanedLockError, d as runWithHeldLock, i as isOpenMeldLockError, t as acquireLock } from "./lock-
|
|
8
|
-
import { g as getConfiguredSkillsConfig } from "./base-url-
|
|
9
|
-
import { W as withDaemonServiceReconcileLock } from "./daemon-state-
|
|
10
|
-
import { i as readDaemonServiceContract } from "./daemon-service-contract-
|
|
11
|
-
import { l as OPENMELD_VERSION } from "./daemon-lifecycle-journal-
|
|
12
|
-
import { S as resolveDaemonServiceManager, v as readDaemonServiceStartupPolicyCurrent } from "./daemon-service-manager-
|
|
13
|
-
import { s as resolveTrackedInstallTargets } from "./installation-inventory-
|
|
14
|
-
import { t as installSkillsToTargets } from "./installer-
|
|
3
|
+
import { tt as resolveSkillsAgentRegistry } from "./prepare-provider-runtime-BGdfbFyZ.js";
|
|
4
|
+
import { f as withSkillsInstallLock, l as downloadOfficialSkillUpdate, r as ensureLocalSkills } from "./state-iJqU2XWw.js";
|
|
5
|
+
import { $ as readPendingDaemonServiceUpdate, K as reconcileManagedCliLauncher, X as completePendingDaemonServiceUpdate, g as assertDaemonMaintenanceInstallationOwnership, nt as configureDaemonMaintenanceEnvironment } from "./daemon-service-runtime-BTzL0w6s.js";
|
|
6
|
+
import { at as readPendingOpenMeldToolsUpdateAttempt, n as scheduleDaemonServiceUpdate, nt as createOpenMeldToolsUpdateCoordinator, ot as readOpenMeldToolsMaintenancePolicy, t as runPendingDaemonServiceUpdate, ut as prepareDaemonServiceUpdateWorkerCarrier } from "./daemon-service-update-coordinator-BDs0p4bA.js";
|
|
7
|
+
import { a as isOpenMeldOrphanedLockError, d as runWithHeldLock, i as isOpenMeldLockError, t as acquireLock } from "./lock-BMI00i2F.js";
|
|
8
|
+
import { g as getConfiguredSkillsConfig } from "./base-url-0AoeTi3w.js";
|
|
9
|
+
import { W as withDaemonServiceReconcileLock } from "./daemon-state-Dte9re5V.js";
|
|
10
|
+
import { i as readDaemonServiceContract } from "./daemon-service-contract-COPKbCy_.js";
|
|
11
|
+
import { l as OPENMELD_VERSION } from "./daemon-lifecycle-journal-CRxQL9m6.js";
|
|
12
|
+
import { S as resolveDaemonServiceManager, v as readDaemonServiceStartupPolicyCurrent } from "./daemon-service-manager-BXAp21GH.js";
|
|
13
|
+
import { s as resolveTrackedInstallTargets } from "./installation-inventory-Bq8iZfSa.js";
|
|
14
|
+
import { t as installSkillsToTargets } from "./installer-C7iSAOSz.js";
|
|
15
15
|
//#region src/skills/maintenance.ts
|
|
16
16
|
async function maintainOfficialCliSkill() {
|
|
17
17
|
if (await downloadOfficialSkillUpdate().catch((error) => {
|
|
@@ -76,7 +76,7 @@ async function runMaintenancePass() {
|
|
|
76
76
|
}
|
|
77
77
|
const result = await runPendingDaemonServiceUpdate();
|
|
78
78
|
if (result?.phase === "updated") {
|
|
79
|
-
const { finishComputerSetupAfterBackgroundUpdate, recoverComputerSetupAfterBackgroundUpdate } = await import("./computer-setup-continuation-
|
|
79
|
+
const { finishComputerSetupAfterBackgroundUpdate, recoverComputerSetupAfterBackgroundUpdate } = await import("./computer-setup-continuation-ZcQb7MvI.js");
|
|
80
80
|
await prepareDaemonServiceUpdateWorkerCarrier(result);
|
|
81
81
|
await finishComputerSetupAfterBackgroundUpdate();
|
|
82
82
|
await withDaemonServiceReconcileLock(async () => {
|
|
@@ -105,4 +105,4 @@ async function reconcileCurrentServiceStartupPolicy(updatesCurrent) {
|
|
|
105
105
|
//#endregion
|
|
106
106
|
export { runOpenMeldMaintenanceWorker };
|
|
107
107
|
|
|
108
|
-
//# sourceMappingURL=openmeld-maintenance-worker-
|
|
108
|
+
//# sourceMappingURL=openmeld-maintenance-worker-DY90mkWW.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openmeld-maintenance-worker-
|
|
1
|
+
{"version":3,"file":"openmeld-maintenance-worker-DY90mkWW.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 { reconcileManagedCliLauncher } from \"../../local-components/managed-install\";\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 await reconcileManagedCliLauncher();\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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"}
|
package/dist/{openmeld-tools-update-join-B1l6RER6.js → openmeld-tools-update-join-DgzNuaDy.js}
RENAMED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { $ as readPendingDaemonServiceUpdate } from "./daemon-service-runtime-
|
|
4
|
-
import { at as readPendingOpenMeldToolsUpdateAttempt } from "./daemon-service-update-coordinator-
|
|
5
|
-
import { m as resolveOpenMeldToolsUpdateOperation } from "./elapsed-time-
|
|
3
|
+
import { $ as readPendingDaemonServiceUpdate } from "./daemon-service-runtime-BTzL0w6s.js";
|
|
4
|
+
import { at as readPendingOpenMeldToolsUpdateAttempt } from "./daemon-service-update-coordinator-BDs0p4bA.js";
|
|
5
|
+
import { m as resolveOpenMeldToolsUpdateOperation } from "./elapsed-time-C3nfbdd9.js";
|
|
6
6
|
import { setTimeout } from "node:timers/promises";
|
|
7
7
|
//#region src/local-service/maintenance/openmeld-tools-update-join.ts
|
|
8
8
|
const DEFAULT_UPDATE_JOIN_POLL_INTERVAL_MS = 500;
|
|
@@ -61,4 +61,4 @@ async function waitForExternalOpenMeldToolsUpdate(input = {}) {
|
|
|
61
61
|
//#endregion
|
|
62
62
|
export { waitForExternalOpenMeldToolsUpdate as n, waitForOpenMeldToolsUpdateCompletion as r, resolveExternalOpenMeldToolsUpdate as t };
|
|
63
63
|
|
|
64
|
-
//# sourceMappingURL=openmeld-tools-update-join-
|
|
64
|
+
//# sourceMappingURL=openmeld-tools-update-join-DgzNuaDy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openmeld-tools-update-join-
|
|
1
|
+
{"version":3,"file":"openmeld-tools-update-join-DgzNuaDy.js","names":["sleep"],"sources":["../src/local-service/maintenance/openmeld-tools-update-join.ts"],"sourcesContent":["import { setTimeout as sleep } from \"node:timers/promises\";\nimport type { OpenMeldToolsUpdateOperation } from \"@openmeld/schemas/types\";\nimport type { OpenMeldPathResolutionInput } from \"../../config/paths\";\nimport { readPendingDaemonServiceUpdate } from \"../lifecycle/daemon-service-update-state\";\nimport { readPendingOpenMeldToolsUpdateAttempt } from \"./openmeld-tools-update-attempt-state\";\nimport { resolveOpenMeldToolsUpdateOperation } from \"./openmeld-tools-update-operation\";\n\nconst DEFAULT_UPDATE_JOIN_POLL_INTERVAL_MS = 500;\n\n// This is an observer of the existing durable operation, never an updater.\n// The OS-owned worker continues even if this caller exits while waiting.\nexport async function waitForOpenMeldToolsUpdateCompletion(\n input: {\n operationId?: string;\n pollIntervalMs?: number;\n onWaiting?: (\n operation: OpenMeldToolsUpdateOperation\n ) => Promise<void> | void;\n } = {}\n): Promise<OpenMeldToolsUpdateOperation | null> {\n let operationId = input.operationId ?? null;\n await waitForExternalOpenMeldToolsUpdate({\n completedServiceUpdateIsIdle: true,\n pollIntervalMs: input.pollIntervalMs,\n onWaiting: async (operation) => {\n if (operationId !== null && operationId !== operation.operationId) {\n throw new Error(\n `OpenMeld update ${operationId} was replaced before its completion could be verified.`\n );\n }\n operationId = operation.operationId;\n await input.onWaiting?.(operation);\n },\n });\n const completed = await resolveOpenMeldToolsUpdateOperation();\n if (\n operationId !== null &&\n (completed?.operationId !== operationId || completed.phase !== \"updated\")\n ) {\n throw new Error(\n `OpenMeld update ${operationId} did not finish successfully (${completed?.phase ?? \"completion evidence unavailable\"}).`\n );\n }\n return completed;\n}\n\nexport async function resolveExternalOpenMeldToolsUpdate(\n input: OpenMeldPathResolutionInput & {\n currentOperationId?: string | null;\n completedServiceUpdateIsIdle?: boolean;\n } = {}\n): Promise<OpenMeldToolsUpdateOperation | null> {\n // The coordinator persists the Service job before discarding the tools\n // attempt. Reading in this order prevents observers from seeing a false idle\n // gap while ownership moves from the CLI download to the Service worker.\n const toolsAttempt = await readPendingOpenMeldToolsUpdateAttempt(input);\n const serviceJob = await readPendingDaemonServiceUpdate(input);\n if (\n serviceJob &&\n serviceJob.jobId !== (input.currentOperationId ?? null) &&\n !(input.completedServiceUpdateIsIdle && serviceJob.phase === \"updated\")\n ) {\n return {\n operationId: serviceJob.jobId,\n phase: serviceJob.phase,\n requestSource: serviceJob.requestSource,\n requestedAt: serviceJob.requestedAt,\n ...(serviceJob.targetCliVersion\n ? { targetCliVersion: serviceJob.targetCliVersion }\n : {}),\n ...(serviceJob.targetServiceVersion\n ? { targetServiceVersion: serviceJob.targetServiceVersion }\n : {}),\n targetVersion: serviceJob.targetVersion,\n updatedAt: serviceJob.updatedAt,\n urgency: serviceJob.urgency,\n };\n }\n if (\n toolsAttempt &&\n toolsAttempt.operation.operationId !== (input.currentOperationId ?? null)\n ) {\n return toolsAttempt.operation;\n }\n return null;\n}\n\nexport async function waitForExternalOpenMeldToolsUpdate(\n input: OpenMeldPathResolutionInput & {\n currentOperationId?: string | null;\n completedServiceUpdateIsIdle?: boolean;\n onWaiting?: (\n operation: OpenMeldToolsUpdateOperation\n ) => Promise<void> | void;\n pollIntervalMs?: number;\n unclaimedTimeoutMs?: number;\n } = {}\n): Promise<void> {\n let reportedOperationId: string | null = null;\n let unclaimedSince: number | null = null;\n while (true) {\n const operation = await resolveExternalOpenMeldToolsUpdate(input);\n if (!operation) {\n return;\n }\n if (input.unclaimedTimeoutMs !== undefined) {\n const pending = await readPendingOpenMeldToolsUpdateAttempt(input);\n if (\n pending?.operation.operationId === operation.operationId &&\n pending.attempts === 0\n ) {\n unclaimedSince ??= Date.now();\n if (Date.now() - unclaimedSince >= input.unclaimedTimeoutMs) {\n throw new Error(\n \"OpenMeld's background updater did not start. Run openmeld doctor to check the background service, then try setup again.\"\n );\n }\n } else {\n unclaimedSince = null;\n }\n }\n if (reportedOperationId !== operation.operationId) {\n reportedOperationId = operation.operationId;\n await input.onWaiting?.(operation);\n }\n await sleep(\n Math.max(1, input.pollIntervalMs ?? DEFAULT_UPDATE_JOIN_POLL_INTERVAL_MS)\n );\n }\n}\n"],"mappings":";;;;;;;AAOA,MAAM,uCAAuC;AAI7C,eAAsB,qCACpB,QAMI,CAAC,GACyC;CAC9C,IAAI,cAAc,MAAM,eAAe;CACvC,MAAM,mCAAmC;EACvC,8BAA8B;EAC9B,gBAAgB,MAAM;EACtB,WAAW,OAAO,cAAc;GAC9B,IAAI,gBAAgB,QAAQ,gBAAgB,UAAU,aACpD,MAAM,IAAI,MACR,mBAAmB,YAAY,uDACjC;GAEF,cAAc,UAAU;GACxB,MAAM,MAAM,YAAY,SAAS;EACnC;CACF,CAAC;CACD,MAAM,YAAY,MAAM,oCAAoC;CAC5D,IACE,gBAAgB,SACf,WAAW,gBAAgB,eAAe,UAAU,UAAU,YAE/D,MAAM,IAAI,MACR,mBAAmB,YAAY,gCAAgC,WAAW,SAAS,kCAAkC,GACvH;CAEF,OAAO;AACT;AAEA,eAAsB,mCACpB,QAGI,CAAC,GACyC;CAI9C,MAAM,eAAe,MAAM,sCAAsC,KAAK;CACtE,MAAM,aAAa,MAAM,+BAA+B,KAAK;CAC7D,IACE,cACA,WAAW,WAAW,MAAM,sBAAsB,SAClD,EAAE,MAAM,gCAAgC,WAAW,UAAU,YAE7D,OAAO;EACL,aAAa,WAAW;EACxB,OAAO,WAAW;EAClB,eAAe,WAAW;EAC1B,aAAa,WAAW;EACxB,GAAI,WAAW,mBACX,EAAE,kBAAkB,WAAW,iBAAiB,IAChD,CAAC;EACL,GAAI,WAAW,uBACX,EAAE,sBAAsB,WAAW,qBAAqB,IACxD,CAAC;EACL,eAAe,WAAW;EAC1B,WAAW,WAAW;EACtB,SAAS,WAAW;CACtB;CAEF,IACE,gBACA,aAAa,UAAU,iBAAiB,MAAM,sBAAsB,OAEpE,OAAO,aAAa;CAEtB,OAAO;AACT;AAEA,eAAsB,mCACpB,QAQI,CAAC,GACU;CACf,IAAI,sBAAqC;CACzC,IAAI,iBAAgC;CACpC,OAAO,MAAM;EACX,MAAM,YAAY,MAAM,mCAAmC,KAAK;EAChE,IAAI,CAAC,WACH;EAEF,IAAI,MAAM,uBAAuB,KAAA,GAAW;GAC1C,MAAM,UAAU,MAAM,sCAAsC,KAAK;GACjE,IACE,SAAS,UAAU,gBAAgB,UAAU,eAC7C,QAAQ,aAAa,GACrB;IACA,mBAAmB,KAAK,IAAI;IAC5B,IAAI,KAAK,IAAI,IAAI,kBAAkB,MAAM,oBACvC,MAAM,IAAI,MACR,yHACF;GAEJ,OACE,iBAAiB;EAErB;EACA,IAAI,wBAAwB,UAAU,aAAa;GACjD,sBAAsB,UAAU;GAChC,MAAM,MAAM,YAAY,SAAS;EACnC;EACA,MAAMA,WACJ,KAAK,IAAI,GAAG,MAAM,kBAAkB,oCAAoC,CAC1E;CACF;AACF"}
|
package/dist/openmeld.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
//#region src/openmeld-entry.ts
|
|
4
4
|
if (process.platform === "win32" && /[\\/]openmeld\.exe$/iu.test(process.execPath) && !process.argv.includes("--openmeld-windows-task")) {
|
|
5
|
-
const { restoreWindowsPreviewChannel } = await import("./windows-preview-channel-
|
|
5
|
+
const { restoreWindowsPreviewChannel } = await import("./windows-preview-channel-BPhfSwji.js");
|
|
6
6
|
await restoreWindowsPreviewChannel();
|
|
7
7
|
}
|
|
8
8
|
if (process.argv.includes("--openmeld-windows-task")) {
|
|
@@ -11,7 +11,7 @@ if (process.argv.includes("--openmeld-windows-task")) {
|
|
|
11
11
|
}
|
|
12
12
|
const args = process.argv.slice(2);
|
|
13
13
|
if (args.length === 3 && args[0] === "service" && args[1] === "execution-host") try {
|
|
14
|
-
const { runExecutionHost } = await import("./entry-
|
|
14
|
+
const { runExecutionHost } = await import("./entry-De__5RVq.js");
|
|
15
15
|
const hostInstanceId = args[2];
|
|
16
16
|
if (!hostInstanceId) throw new Error("The Host incarnation is required.");
|
|
17
17
|
await runExecutionHost(hostInstanceId);
|
|
@@ -21,14 +21,14 @@ if (args.length === 3 && args[0] === "service" && args[1] === "execution-host")
|
|
|
21
21
|
if (process.connected) process.disconnect();
|
|
22
22
|
}
|
|
23
23
|
else if (args.length === 2 && args[0] === "service" && args[1] === "update-worker") try {
|
|
24
|
-
const { runOpenMeldMaintenanceWorker } = await import("./openmeld-maintenance-worker-
|
|
24
|
+
const { runOpenMeldMaintenanceWorker } = await import("./openmeld-maintenance-worker-DY90mkWW.js");
|
|
25
25
|
await runOpenMeldMaintenanceWorker();
|
|
26
26
|
} catch (error) {
|
|
27
27
|
console.error("[openmeld.maintenance.failed]", error);
|
|
28
28
|
process.exitCode = 1;
|
|
29
29
|
}
|
|
30
30
|
else if (args.length === 1 && (args[0] === "maintenance-upgrade" || args[0] === "maintenance-align-service")) try {
|
|
31
|
-
const { runMaintenanceUpgrade } = await import("./upgrade-
|
|
31
|
+
const { runMaintenanceUpgrade } = await import("./upgrade-CuzsgsKh.js");
|
|
32
32
|
await runMaintenanceUpgrade(args[0] === "maintenance-align-service");
|
|
33
33
|
} catch (error) {
|
|
34
34
|
try {
|
|
@@ -38,7 +38,7 @@ else if (args.length === 1 && (args[0] === "maintenance-upgrade" || args[0] ===
|
|
|
38
38
|
console.error("[openmeld.maintenance.upgrade_failed]", error);
|
|
39
39
|
process.exitCode = 1;
|
|
40
40
|
}
|
|
41
|
-
else await import("./openmeld-
|
|
41
|
+
else await import("./openmeld-C0OSZJtn.js");
|
|
42
42
|
//#endregion
|
|
43
43
|
export {};
|
|
44
44
|
|
|
@@ -10,6 +10,7 @@ const FALLBACK_ACCOUNT_HOST_KEY = "unauthenticated";
|
|
|
10
10
|
const FALLBACK_ACCOUNT_USER_KEY = "local";
|
|
11
11
|
const OPENMELD_HOME_ENV_KEY = "OPENMELD_HOME";
|
|
12
12
|
const OPENMELD_ENV_PRESET_ENV_KEY = "OPENMELD_ENV_PRESET";
|
|
13
|
+
const OPENMELD_LEGACY_ENV_KEY = "OPENMELD_ENV";
|
|
13
14
|
const DEFAULT_OPENMELD_ENV_PRESET = "prod";
|
|
14
15
|
const OPENMELD_DEFAULT_HOME_DIR_BY_PRESET = {
|
|
15
16
|
prod: ".openmeld",
|
|
@@ -30,13 +31,10 @@ function normalizeOpenMeldProfileId(value) {
|
|
|
30
31
|
return safe;
|
|
31
32
|
}
|
|
32
33
|
function resolveOpenMeldEnvPreset(input = {}) {
|
|
33
|
-
const fromEnv =
|
|
34
|
+
const fromEnv = resolveOpenMeldEnvPresetFromEnvironment(input.env ?? process.env);
|
|
34
35
|
if (fromEnv) return fromEnv;
|
|
35
36
|
return resolveOpenMeldEnvPresetFromArgv(input.argv ?? process.argv);
|
|
36
37
|
}
|
|
37
|
-
function resolveExplicitOpenMeldEnvPreset(input = {}) {
|
|
38
|
-
return normalizeOpenMeldEnvPreset((input.env ?? process.env)[OPENMELD_ENV_PRESET_ENV_KEY]);
|
|
39
|
-
}
|
|
40
38
|
function resolveDefaultOpenMeldHomeDirname(preset) {
|
|
41
39
|
return OPENMELD_DEFAULT_HOME_DIR_BY_PRESET[preset];
|
|
42
40
|
}
|
|
@@ -260,6 +258,13 @@ function normalizeOpenMeldEnvPreset(value) {
|
|
|
260
258
|
if (normalized === "prod" || normalized === "dev-local" || normalized === "canary") return normalized;
|
|
261
259
|
return null;
|
|
262
260
|
}
|
|
261
|
+
function resolveOpenMeldEnvPresetFromEnvironment(env) {
|
|
262
|
+
const preset = normalizeOpenMeldEnvPreset(env[OPENMELD_ENV_PRESET_ENV_KEY]);
|
|
263
|
+
const legacyValue = String(env[OPENMELD_LEGACY_ENV_KEY] ?? "").trim().toLowerCase();
|
|
264
|
+
const legacyPreset = legacyValue === "dev" ? "dev-local" : normalizeOpenMeldEnvPreset(legacyValue || void 0);
|
|
265
|
+
if (preset && legacyPreset && preset !== legacyPreset) throw new Error(`OPENMELD_ENV_PRESET=${preset} conflicts with OPENMELD_ENV=${legacyValue}. Use one matching lane selection.`);
|
|
266
|
+
return preset ?? legacyPreset;
|
|
267
|
+
}
|
|
263
268
|
function resolveHomeDirectory(input) {
|
|
264
269
|
if (input.homeDir) return input.homeDir;
|
|
265
270
|
const env = input.env ?? process.env;
|
|
@@ -268,6 +273,6 @@ function resolveHomeDirectory(input) {
|
|
|
268
273
|
return homedir();
|
|
269
274
|
}
|
|
270
275
|
//#endregion
|
|
271
|
-
export { profileDir as A,
|
|
276
|
+
export { profileDir as A, sessionsDir as B, openMeldManagedBinaryName as C, openMeldRootDir as D, openMeldManagedVersionDir as E, resolveOpenMeldRootDir as F, spacesDir as H, resolveOpenMeldServiceOwnedPathInput as I, resolveOpenMeldServiceScope as L, resolveDefaultOpenMeldHomeDirname as M, resolveOpenMeldCliEntryNameFromArgv as N, openMeldVersionsDir as O, resolveOpenMeldEnvPreset as P, runtimeDir as R, openMeldBinDir as S, openMeldManagedVersionBinaryPath as T, systemDir as U, skillsDir as V, legacyRuntimeConfigPath as _, accountProfileWorkspacePath as a, normalizeOpenMeldProfileId as b, deviceOpenClawProfileBootstrapPath as c, devicePreferencesPath as d, deviceSkillsCustomTargetsPath as f, legacyAccountProfileSpacesDir as g, isPublishedOpenMeldHome as h, accountProfileViewPath as i, profileViewPath as j, organizationSkillReleaseDir as k, deviceOpenClawProfileDir as l, deviceSkillsStorePath as m, accountProfileLocalMetaPath as n, accountsDir as o, deviceSkillsInstallsPath as p, accountProfileSpaceCacheDir as r, deviceAgentRuntimePath as s, OPENMELD_HOME_ENV_KEY as t, deviceOpenClawProfileWorkspaceDir as u, locksDir as v, openMeldManagedBinaryPath as w, openMeldBackupsDir as x, normalizeAccountKey as y, runtimeLogsDir as z };
|
|
272
277
|
|
|
273
|
-
//# sourceMappingURL=paths-
|
|
278
|
+
//# sourceMappingURL=paths-De9xdA2h.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths-De9xdA2h.js","names":[],"sources":["../src/config/paths.ts"],"sourcesContent":["import { createHash } from \"node:crypto\";\nimport { homedir } from \"node:os\";\nimport { basename, dirname, join, parse, resolve } from \"node:path\";\n\nexport type OpenMeldProfileId = string;\nexport type OpenMeldAccountKey = {\n hostKey: string;\n userKey: string;\n};\nexport type OpenMeldEnvPreset = \"prod\" | \"dev-local\" | \"canary\";\ntype OpenMeldPathResolutionInput = {\n env?: NodeJS.ProcessEnv;\n argv?: string[];\n homeDir?: string;\n};\n\nexport type { OpenMeldPathResolutionInput };\n\nconst MAX_ACCOUNT_PATH_SEGMENT_LENGTH = 128;\nconst OPAQUE_CACHE_PATH_SEGMENT_RE = /^[a-zA-Z0-9][a-zA-Z0-9._-]*$/u;\nconst FALLBACK_ACCOUNT_HOST_KEY = \"unauthenticated\";\nconst FALLBACK_ACCOUNT_USER_KEY = \"local\";\nexport const OPENMELD_HOME_ENV_KEY = \"OPENMELD_HOME\";\nconst OPENMELD_ENV_PRESET_ENV_KEY = \"OPENMELD_ENV_PRESET\";\nconst OPENMELD_LEGACY_ENV_KEY = \"OPENMELD_ENV\";\nconst DEFAULT_OPENMELD_ENV_PRESET: OpenMeldEnvPreset = \"prod\";\nconst OPENMELD_DEFAULT_HOME_DIR_BY_PRESET = {\n prod: \".openmeld\",\n \"dev-local\": \".openmeld-dev\",\n canary: \".openmeld-canary\",\n} as const satisfies Record<OpenMeldEnvPreset, string>;\nconst OPENMELD_ENV_PRESET_BY_ENTRY_NAME = {\n openmeld: \"prod\",\n \"openmeld-dev\": \"dev-local\",\n \"openmeld-canary\": \"canary\",\n} as const satisfies Record<string, OpenMeldEnvPreset>;\nexport type OpenMeldCliEntryName =\n keyof typeof OPENMELD_ENV_PRESET_BY_ENTRY_NAME;\n\nexport function normalizeOpenMeldProfileId(value: unknown): OpenMeldProfileId {\n const raw = String(value ?? \"\").trim();\n if (raw.length === 0) {\n throw new Error(\"openMeldProfileId is required\");\n }\n // Keep filenames stable and safe.\n const safe = raw.replace(/[^a-zA-Z0-9._-]+/g, \"_\").toLowerCase();\n if (!safe || safe === \".\" || safe === \"..\") {\n throw new Error(\"openMeldProfileId is invalid\");\n }\n if (safe.length > MAX_ACCOUNT_PATH_SEGMENT_LENGTH) {\n throw new Error(\"openMeldProfileId is too long\");\n }\n return safe;\n}\n\nexport function resolveOpenMeldEnvPreset(\n input: OpenMeldPathResolutionInput = {}\n): OpenMeldEnvPreset {\n const env = input.env ?? process.env;\n const fromEnv = resolveOpenMeldEnvPresetFromEnvironment(env);\n if (fromEnv) {\n return fromEnv;\n }\n return resolveOpenMeldEnvPresetFromArgv(input.argv ?? process.argv);\n}\n\nexport function resolveExplicitOpenMeldEnvPreset(\n input: OpenMeldPathResolutionInput = {}\n): OpenMeldEnvPreset | null {\n const env = input.env ?? process.env;\n return resolveOpenMeldEnvPresetFromEnvironment(env);\n}\n\nexport function resolveDefaultOpenMeldHomeDirname(\n preset: OpenMeldEnvPreset\n): string {\n return OPENMELD_DEFAULT_HOME_DIR_BY_PRESET[preset];\n}\n\nexport function resolveOpenMeldRootDir(\n input: OpenMeldPathResolutionInput = {}\n): string {\n const env = input.env ?? process.env;\n const fromEnv = String(env[OPENMELD_HOME_ENV_KEY] ?? \"\").trim();\n if (fromEnv) {\n return fromEnv;\n }\n const preset = resolveOpenMeldEnvPreset(input);\n return join(\n resolveHomeDirectory(input),\n resolveDefaultOpenMeldHomeDirname(preset)\n );\n}\n\n/** Development OS resources follow the same root already carried by setup\n * and persisted in service registrations. No cwd or transient lane variable\n * may change the identity of an installed service. */\nexport function resolveOpenMeldServiceScope(\n input: OpenMeldPathResolutionInput = {}\n): string | null {\n if (resolveOpenMeldEnvPreset(input) !== \"dev-local\") {\n return null;\n }\n const root = resolve(resolveOpenMeldRootDir(input));\n return createHash(\"sha256\").update(root).digest(\"hex\").slice(0, 16);\n}\n\nexport function resolveOpenMeldServiceOwnedPathInput(\n input: OpenMeldPathResolutionInput = {}\n): OpenMeldPathResolutionInput {\n const env = { ...(input.env ?? process.env) };\n if (resolveOpenMeldServiceScope(input)) {\n return { ...input, env };\n }\n delete env[OPENMELD_HOME_ENV_KEY];\n return {\n ...input,\n env,\n };\n}\n\nexport function openMeldRootDir(): string {\n return resolveOpenMeldRootDir();\n}\n\n/**\n * Whether the effective OpenMeld home is the published `~/.openmeld` user lane.\n * Lane-specific homes (`openmeld-dev`, `openmeld-canary`, isolated dev lanes,\n * and other `OPENMELD_HOME` overrides) resolve elsewhere and must not manage\n * shared real-user state that the published lane owns.\n */\nexport function isPublishedOpenMeldHome(\n input: OpenMeldPathResolutionInput = {}\n): boolean {\n const publishedRootDir = join(\n resolveHomeDirectory(input),\n OPENMELD_DEFAULT_HOME_DIR_BY_PRESET.prod\n );\n return resolve(resolveOpenMeldRootDir(input)) === resolve(publishedRootDir);\n}\n\nexport function openMeldBackupsDir(): string {\n const root = openMeldRootDir();\n return join(dirname(root), `${basename(root)}-backups`);\n}\n\n// Managed binary layout (binary distribution only). Each installed version\n// lives under versions/<version> with its platform executable. POSIX uses a\n// symlink; Windows uses a native console launcher and one activation record. The layout is\n// lane-aware through resolveOpenMeldRootDir, so the dev lane uses\n// ~/.openmeld-dev/versions and ~/.openmeld-dev/bin.\nexport function openMeldManagedBinaryName(): string {\n return process.platform === \"win32\" ? \"openmeld.exe\" : \"openmeld\";\n}\n\nexport function openMeldVersionsDir(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(resolveOpenMeldRootDir(input), \"versions\");\n}\n\nexport function openMeldManagedVersionDir(\n version: string,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(\n openMeldVersionsDir(input),\n normalizePathSegment(version, \"unknown\")\n );\n}\n\nexport function openMeldManagedVersionBinaryPath(\n version: string,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(\n openMeldManagedVersionDir(version, input),\n openMeldManagedBinaryName()\n );\n}\n\nexport function openMeldBinDir(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(resolveOpenMeldRootDir(input), \"bin\");\n}\n\nexport function openMeldManagedBinaryPath(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(openMeldBinDir(input), openMeldManagedBinaryName());\n}\n\nexport function accountsDir(): string {\n return join(openMeldRootDir(), \"accounts\");\n}\n\nexport function deviceDir(input: OpenMeldPathResolutionInput = {}): string {\n return join(resolveOpenMeldRootDir(input), \"device\");\n}\n\nexport function deviceDaemonDir(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceDir(input), \"daemon\");\n}\n\nexport function deviceSkillsDir(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceDir(input), \"skills\");\n}\n\nexport function devicePreferencesPath(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceDir(input), \"preferences.json\");\n}\n\nexport function deviceAgentRuntimePath(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceDir(input), \"agent-runtime.json\");\n}\n\nexport function deviceProvidersDir(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceDir(input), \"providers\");\n}\n\nexport function deviceProviderDir(\n providerId: string,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(\n deviceProvidersDir(input),\n normalizePathSegment(providerId, \"unknown\")\n );\n}\n\nexport function deviceProviderProfilesDir(\n providerId: string,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceProviderDir(providerId, input), \"profiles\");\n}\n\nexport function deviceProviderProfileDir(\n providerId: string,\n profileId: string,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(\n deviceProviderProfilesDir(providerId, input),\n normalizePathSegment(profileId, \"unknown\")\n );\n}\n\nexport function deviceOpenClawProfilesDir(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return deviceProviderProfilesDir(\"openclaw\", input);\n}\n\nexport function deviceOpenClawProfileDir(\n profileId: string,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return deviceProviderProfileDir(\"openclaw\", profileId, input);\n}\n\nexport function deviceOpenClawProfileWorkspaceDir(\n profileId: string,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceOpenClawProfileDir(profileId, input), \"workspace\");\n}\n\nexport function deviceOpenClawProfileBootstrapPath(\n profileId: string,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceOpenClawProfileDir(profileId, input), \"bootstrap.json\");\n}\n\nexport function deviceSkillsStorePath(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceSkillsDir(input), \"store.json\");\n}\n\nexport function deviceSkillsCustomTargetsPath(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceSkillsDir(input), \"custom-targets.json\");\n}\n\nexport function deviceSkillsInstallsPath(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(deviceSkillsDir(input), \"installs.json\");\n}\n\nexport function legacyRuntimeConfigPath(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(resolveOpenMeldRootDir(input), \"config.json\");\n}\n\nexport function normalizeAccountHostKey(value: unknown): string {\n return normalizePathSegment(value, FALLBACK_ACCOUNT_HOST_KEY);\n}\n\nexport function normalizeAccountUserKey(value: unknown): string {\n return normalizePathSegment(value, FALLBACK_ACCOUNT_USER_KEY);\n}\n\nexport function normalizeAccountKey(\n input: Partial<OpenMeldAccountKey>\n): OpenMeldAccountKey {\n return {\n hostKey: normalizeAccountHostKey(input.hostKey),\n userKey: normalizeAccountUserKey(input.userKey),\n };\n}\n\nexport function accountDir(account: OpenMeldAccountKey): string {\n const normalized = normalizeAccountKey(account);\n return join(accountsDir(), normalized.hostKey, normalized.userKey);\n}\n\nexport function accountProfilesDir(account: OpenMeldAccountKey): string {\n // TODO(v-next): optional `index/profiles.json` for write-through + read-through\n // refresh cache when profile listing becomes a local performance bottleneck.\n return join(accountDir(account), \"profiles\");\n}\n\nexport function accountProfileDir(\n account: OpenMeldAccountKey,\n openMeldProfileId: OpenMeldProfileId\n): string {\n // `local-meta.json` is the profile-local device envelope; workspace is one\n // section within it.\n return join(\n accountProfilesDir(account),\n normalizeOpenMeldProfileId(openMeldProfileId)\n );\n}\n\nexport function accountProfileViewPath(\n account: OpenMeldAccountKey,\n openMeldProfileId: OpenMeldProfileId\n): string {\n return join(accountProfileDir(account, openMeldProfileId), \"view.json\");\n}\n\nexport function accountProfileLocalMetaPath(\n account: OpenMeldAccountKey,\n openMeldProfileId: OpenMeldProfileId\n): string {\n return join(accountProfileDir(account, openMeldProfileId), \"local-meta.json\");\n}\n\nexport function accountProfileWorkspacePath(\n account: OpenMeldAccountKey,\n openMeldProfileId: OpenMeldProfileId\n): string {\n return join(accountProfileDir(account, openMeldProfileId), \"workspace\");\n}\n\nexport function accountProfileSpaceCacheDir(\n account: OpenMeldAccountKey,\n openMeldProfileId: OpenMeldProfileId\n): string {\n return join(accountProfileDir(account, openMeldProfileId), \"space-cache\");\n}\n\nexport function legacyAccountProfileSpacesDir(\n account: OpenMeldAccountKey,\n openMeldProfileId: OpenMeldProfileId\n): string {\n return join(accountProfileDir(account, openMeldProfileId), \"spaces\");\n}\n\nexport function profileDir(openMeldProfileId: OpenMeldProfileId): string {\n return join(openMeldRootDir(), \"profiles\", openMeldProfileId);\n}\n\nexport function runtimeDir(input: OpenMeldPathResolutionInput = {}): string {\n return join(resolveOpenMeldRootDir(input), \"runtime\");\n}\n\nexport function runtimeLogsDir(): string {\n return join(runtimeDir(), \"logs\");\n}\n\nexport function sessionsDir(): string {\n return join(runtimeDir(), \"sessions\");\n}\n\nexport function systemDir(input: OpenMeldPathResolutionInput = {}): string {\n return join(resolveOpenMeldRootDir(input), \"system\");\n}\n\nexport function skillsDir(): string {\n return join(openMeldRootDir(), \"skills\");\n}\n\nexport function organizationSkillsDir(\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(resolveOpenMeldRootDir(input), \"organization-skills\");\n}\n\nexport function organizationSkillReleaseDir(\n organizationId: string,\n skillId: string,\n releaseId: string,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(\n organizationSkillsDir(input),\n requireOpaqueCachePathSegment(organizationId, \"organizationId\"),\n requireOpaqueCachePathSegment(skillId, \"skillId\"),\n requireOpaqueCachePathSegment(releaseId, \"releaseId\")\n );\n}\n\nexport function profileIdentityPath(\n openMeldProfileId: OpenMeldProfileId\n): string {\n return join(profileDir(openMeldProfileId), \"profile.json\");\n}\n\nexport function spacesDir(openMeldProfileId: OpenMeldProfileId): string {\n return join(profileDir(openMeldProfileId), \"spaces\");\n}\n\nexport function locksDir(\n openMeldProfileId: OpenMeldProfileId,\n input: OpenMeldPathResolutionInput = {}\n): string {\n return join(runtimeDir(input), \"locks\", openMeldProfileId);\n}\n\nexport function profileViewPath(openMeldProfileId: OpenMeldProfileId): string {\n return join(profileDir(openMeldProfileId), \"view.json\");\n}\n\nfunction normalizePathSegment(value: unknown, fallback: string): string {\n const normalized = String(value ?? \"\")\n .trim()\n .toLowerCase();\n if (!normalized) {\n return fallback;\n }\n\n const safe = normalized.replace(/[^a-z0-9._-]+/g, \"_\");\n if (!safe) {\n return fallback;\n }\n\n if (safe === \".\" || safe === \"..\") {\n return fallback;\n }\n\n return safe.slice(0, MAX_ACCOUNT_PATH_SEGMENT_LENGTH);\n}\n\nfunction requireOpaqueCachePathSegment(value: unknown, label: string): string {\n const normalized = String(value ?? \"\").trim();\n if (\n normalized.length === 0 ||\n normalized.length > 256 ||\n normalized === \".\" ||\n normalized === \"..\" ||\n !OPAQUE_CACHE_PATH_SEGMENT_RE.test(normalized)\n ) {\n throw new Error(`${label} is not safe for the Organization Skills cache`);\n }\n return normalized;\n}\n\nfunction resolveOpenMeldEnvPresetFromArgv(argv: string[]): OpenMeldEnvPreset {\n return (\n resolveKnownOpenMeldEnvPresetFromArgv(argv) ?? DEFAULT_OPENMELD_ENV_PRESET\n );\n}\n\nexport function resolveKnownOpenMeldEnvPresetFromArgv(\n argv: string[]\n): OpenMeldEnvPreset | null {\n const entryName = resolveOpenMeldCliEntryNameFromArgv(argv);\n if (!entryName) {\n return null;\n }\n return OPENMELD_ENV_PRESET_BY_ENTRY_NAME[entryName] ?? null;\n}\n\nexport function resolveOpenMeldCliEntryNameFromArgv(\n argv: string[]\n): OpenMeldCliEntryName | null {\n return resolveCliEntryName(argv[1]);\n}\n\nfunction resolveCliEntryName(\n value: string | undefined\n): OpenMeldCliEntryName | null {\n const raw = String(value ?? \"\").trim();\n if (!raw) {\n return null;\n }\n const parsed = parse(raw);\n const normalizedName = parsed.name.trim().toLowerCase();\n if (!normalizedName) {\n return null;\n }\n if (!isOpenMeldCliEntryName(normalizedName)) {\n return null;\n }\n return normalizedName;\n}\n\nfunction isOpenMeldCliEntryName(value: string): value is OpenMeldCliEntryName {\n return value in OPENMELD_ENV_PRESET_BY_ENTRY_NAME;\n}\n\nfunction normalizeOpenMeldEnvPreset(\n value: string | undefined\n): OpenMeldEnvPreset | null {\n const normalized = String(value ?? \"\")\n .trim()\n .toLowerCase();\n if (\n normalized === \"prod\" ||\n normalized === \"dev-local\" ||\n normalized === \"canary\"\n ) {\n return normalized;\n }\n return null;\n}\n\nfunction resolveOpenMeldEnvPresetFromEnvironment(\n env: NodeJS.ProcessEnv\n): OpenMeldEnvPreset | null {\n const preset = normalizeOpenMeldEnvPreset(env[OPENMELD_ENV_PRESET_ENV_KEY]);\n const legacyValue = String(env[OPENMELD_LEGACY_ENV_KEY] ?? \"\")\n .trim()\n .toLowerCase();\n const legacyPreset =\n legacyValue === \"dev\"\n ? \"dev-local\"\n : normalizeOpenMeldEnvPreset(legacyValue || undefined);\n if (preset && legacyPreset && preset !== legacyPreset) {\n throw new Error(\n `OPENMELD_ENV_PRESET=${preset} conflicts with OPENMELD_ENV=${legacyValue}. Use one matching lane selection.`\n );\n }\n return preset ?? legacyPreset;\n}\n\nfunction resolveHomeDirectory(input: OpenMeldPathResolutionInput): string {\n if (input.homeDir) {\n return input.homeDir;\n }\n const env = input.env ?? process.env;\n const fromEnv = String(env.HOME ?? \"\").trim();\n if (fromEnv) {\n return fromEnv;\n }\n return homedir();\n}\n"],"mappings":"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"}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { F as
|
|
4
|
-
import { $t as createLocalRuntimeExpectedRoutesApi, Rt as createAgentProfileBindingApi, t as OpenMeldApiClientHttpError, wi as modelCatalogSchema } from "./dist-
|
|
3
|
+
import { F as resolveOpenMeldRootDir, P as resolveOpenMeldEnvPreset, a as accountProfileWorkspacePath, b as normalizeOpenMeldProfileId, c as deviceOpenClawProfileBootstrapPath, h as isPublishedOpenMeldHome, l as deviceOpenClawProfileDir, n as accountProfileLocalMetaPath, u as deviceOpenClawProfileWorkspaceDir } from "./paths-De9xdA2h.js";
|
|
4
|
+
import { $t as createLocalRuntimeExpectedRoutesApi, Rt as createAgentProfileBindingApi, t as OpenMeldApiClientHttpError, wi as modelCatalogSchema } from "./dist-Bw6OBFYo.js";
|
|
5
5
|
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, p as HOSTED_CENTER_AGENT_CONTROLLER_REF_ID, s as runtimeTransportModeSchema, v as canonicalizeBuiltinAgentControllerRef, x as parseAgentControllerRef$1 } from "./controller-contract-DAOCaefz.js";
|
|
6
|
-
import {
|
|
7
|
-
import { d as getAuthSessionState, q as OPENCLAW_CLI_TIMEOUT_MS$1 } from "./auth-session-
|
|
6
|
+
import { Ei as resolveCommandAgentWorkActivity, G as isOriginalErrorSafeForMessageDetails, J as openMeldDaemonProviderAccessEvidenceSchema, Qn as normalizeMessageEnvelope, W as OPENMELD_ORIGINAL_ERROR_MAX_LENGTH, X as openMeldDaemonTaskResultOpenClawGatewayVisibilityStatusSchema, Y as openMeldDaemonTaskResultEnvelopeWriteSchema, Yn as formatCanonicalMentionLiteral, t as CURRENT_DAEMON_EXECUTION_CONTRACT_EPOCH, yr as agentInteractionResolutionSchema } from "./runtime-transport-DH8Ks-AU.js";
|
|
7
|
+
import { d as getAuthSessionState, q as OPENCLAW_CLI_TIMEOUT_MS$1 } from "./auth-session-DhSHCYvl.js";
|
|
8
8
|
import { C as conversationExecutionStateSchema, D as normalizeOptionalWorkingDirectory, P as profileWorkspaceModeSchema, T as MAX_PROFILE_WORKING_DIRECTORY_LENGTH, o as openMeldDaemonControlPlaneRequestSchema, s as openMeldDaemonControlPlaneResponseSchema, x as providerDispatchRuntimeContextSchema } from "./control-plane-rTE2rHZ5.js";
|
|
9
9
|
import { r as daemonServiceLaneSchema } from "./service-contract-CRyDcIIf.js";
|
|
10
10
|
import { n as agentControllerPermissionModeSchema, r as agentControllerCollaborationModeSchema } from "./open-code-permission-DHFJYc_o.js";
|
|
11
|
-
import { $ as touchDaemonCatalogSyncSignal, K as listOpenMeldProfiles, _ as toErrorMessage$20, d as normalizeText$11, g as parseTransportMode$1, gt as DAEMON_ROUTE_CATALOG_CACHE_SCHEMA_NAME, h as parseStreamingMode$1, ht as resolveCurrentOpenMeldAccountContext, m as parseRuntimeTransportMode, p as parseContextIdMappingSpec, s as emitRunLine, u as normalizeOptionalText$51, vt as daemonRouteCatalogCacheSchema } from "./daemon-device-id-
|
|
11
|
+
import { $ as touchDaemonCatalogSyncSignal, K as listOpenMeldProfiles, _ as toErrorMessage$20, d as normalizeText$11, g as parseTransportMode$1, gt as DAEMON_ROUTE_CATALOG_CACHE_SCHEMA_NAME, h as parseStreamingMode$1, ht as resolveCurrentOpenMeldAccountContext, m as parseRuntimeTransportMode, p as parseContextIdMappingSpec, s as emitRunLine, u as normalizeOptionalText$51, vt as daemonRouteCatalogCacheSchema } from "./daemon-device-id-DDazRZUV.js";
|
|
12
12
|
import { c as readWindowsProcessStartFileTime, d as resolveWindowsNativeProcessHelper, f as windowsNativeProcessRequestSchema, l as resolveWindowsPowerShellPath, o as powerShellEncodedArguments, r as isProcessIdentityAlive, t as CURRENT_PROCESS_START_IDENTITY, u as WINDOWS_NATIVE_PROCESS_REQUEST_ENV } from "./process-identity-BRbhGGTM.js";
|
|
13
|
-
import { a as isOpenMeldOrphanedLockError, d as runWithHeldLock, i as isOpenMeldLockError, t as acquireLock } from "./lock-
|
|
14
|
-
import { C as updateConfiguredDeviceRuntimeState, T as updateConfiguredSkillsConfig, a as resolveBaseUrl, d as createDefaultRuntimeAgentControllerSettings, g as getConfiguredSkillsConfig, p as getConfiguredDeviceRuntimeState, v as getRuntimeConfigReadHealth, y as resolveRuntimeSkillsCustomTargetId } from "./base-url-
|
|
13
|
+
import { a as isOpenMeldOrphanedLockError, d as runWithHeldLock, i as isOpenMeldLockError, t as acquireLock } from "./lock-BMI00i2F.js";
|
|
14
|
+
import { C as updateConfiguredDeviceRuntimeState, T as updateConfiguredSkillsConfig, a as resolveBaseUrl, d as createDefaultRuntimeAgentControllerSettings, g as getConfiguredSkillsConfig, p as getConfiguredDeviceRuntimeState, v as getRuntimeConfigReadHealth, y as resolveRuntimeSkillsCustomTargetId } from "./base-url-0AoeTi3w.js";
|
|
15
15
|
import { n as normalizeCommandEnvironment } from "./process-environment-BWSFeUu6.js";
|
|
16
16
|
import { n as writeDaemonLocalStateFile, t as readDaemonLocalStateFile } from "./daemon-local-state-file-jOXuXrky.js";
|
|
17
|
-
import { m as daemonRuntimeDataPath } from "./daemon-state-
|
|
18
|
-
import { i as readDaemonServiceContract } from "./daemon-service-contract-
|
|
19
|
-
import { C as requestLocalSyncRouteCatalog } from "./daemon-lifecycle-journal-
|
|
17
|
+
import { m as daemonRuntimeDataPath } from "./daemon-state-Dte9re5V.js";
|
|
18
|
+
import { i as readDaemonServiceContract } from "./daemon-service-contract-COPKbCy_.js";
|
|
19
|
+
import { C as requestLocalSyncRouteCatalog } from "./daemon-lifecycle-journal-CRxQL9m6.js";
|
|
20
20
|
import { i as resolveWindowsCommandPath, n as quoteWindowsProcessArgument, r as resolvePlatformCommand, t as execPlatformFile } from "./process-launch-B0pHlkV_.js";
|
|
21
|
-
import { d as buildOpenMeldRequestContextFromProfile, t as createCliApiClientFoundation } from "./api-client-foundation-
|
|
21
|
+
import { d as buildOpenMeldRequestContextFromProfile, t as createCliApiClientFoundation } from "./api-client-foundation-EZpFLGVC.js";
|
|
22
22
|
import { createRequire } from "node:module";
|
|
23
23
|
import { createHash, randomUUID } from "node:crypto";
|
|
24
24
|
import { homedir, loadavg, tmpdir } from "node:os";
|
|
@@ -5445,6 +5445,7 @@ const OPENMELD_SPACE_ACTION_MCP_TOOL_NAMES = [
|
|
|
5445
5445
|
"submit_task_result",
|
|
5446
5446
|
"review_task",
|
|
5447
5447
|
"cancel_task",
|
|
5448
|
+
"report_progress",
|
|
5448
5449
|
"reply",
|
|
5449
5450
|
"stay_silent",
|
|
5450
5451
|
"read_receipt"
|
|
@@ -25255,6 +25256,10 @@ function syncRuntimeEventToInflightTaskControlRegistry(input) {
|
|
|
25255
25256
|
function normalizeDispatchThreadAction(input) {
|
|
25256
25257
|
const requestedThreadId = normalizeOptionalText$5(input.action.thread?.threadId);
|
|
25257
25258
|
const currentThreadId = normalizeOptionalText$5(input.threadContext?.threadId);
|
|
25259
|
+
if (input.action.type === "post_message" && input.action.placement === "conversation") {
|
|
25260
|
+
if (requestedThreadId) throw new Error("structured action cannot select a thread and the main conversation together");
|
|
25261
|
+
return input.action;
|
|
25262
|
+
}
|
|
25258
25263
|
if (currentThreadId) {
|
|
25259
25264
|
if (requestedThreadId && requestedThreadId !== currentThreadId) throw new Error(`structured action thread.threadId must match the current dispatch thread: ${currentThreadId}`);
|
|
25260
25265
|
return {
|
|
@@ -31268,9 +31273,9 @@ function createModelCatalogReadSession(input) {
|
|
|
31268
31273
|
async function readModelCatalogOnce(baseUrl) {
|
|
31269
31274
|
try {
|
|
31270
31275
|
const [apiClient, baseUrlModule, clientFoundationModule] = await Promise.all([
|
|
31271
|
-
import("./dist-
|
|
31272
|
-
import("./base-url-
|
|
31273
|
-
import("./api-client-foundation-
|
|
31276
|
+
import("./dist-B12upl5l.js"),
|
|
31277
|
+
import("./base-url-Bdjp-5vy.js"),
|
|
31278
|
+
import("./api-client-foundation-CDj_9Rks.js")
|
|
31274
31279
|
]);
|
|
31275
31280
|
if (typeof apiClient.createConfigApi !== "function") throw new Error("config api client is unavailable");
|
|
31276
31281
|
const resolvedBaseUrl = baseUrl ?? await baseUrlModule.resolveBaseUrl();
|
|
@@ -33128,4 +33133,4 @@ async function prepareProviderRuntime(input, options = {}) {
|
|
|
33128
33133
|
//#endregion
|
|
33129
33134
|
export { canManageRegistryAgentSkillTargets as $, DISPATCH_SPACE_ACTION_DELIVERY_ONLY_ENV as $n, mergeOpenClawGatewayVisibility as $t, createExpectedRoutesReadSession as A, runRuntimeTask as An, pruneStaleLeases as Ar, ensureOpenMeldManagedProfileWorkspace as At, reconcileNewRunnableBuiltinAgentsForSetup as B, upsertConversationExecutionState as Bn, createMutableRouteCatalogState as Bt, createModelCatalogReadSession as C, verifyCodexAppServerThread as Cn, resolveSelectableCandidates as Cr, resolveLocalProjectConnectionForPath as Ct, NO_LOCAL_AGENTS_NEED_OPENMELD_SERVICE_REASON as D, emitReconcileCompletedEvidence as Dn, MIN_HEARTBEAT_INTERVAL_MS as Dr, resolveRegistryOriginLaunchCommand as Dt, resolveProfileWorkspaceRuntime as E, emitDriftDetectedEvidence as En, MAX_HEARTBEAT_INTERVAL_MS as Er, listBuiltinAgentsRegistryEntries as Et, listAgentRegistrations as F, loadLedgerState as Fn, resolveConfiguredProfileWorkspacePathForAccount as Ft, updateAgentRegistrations as G, createUnavailableProviderUsageLimits as Gn, syncRuntimeEventToInflightTaskControlRegistry as Gt, resolveAgentTargetState as H, buildAuthenticatedControlPlaneResponse as Hn, summarizeSkippedDaemonProfiles as Ht, listAgentTargetStates as I, removeConversationExecutionState as In, setCustomProfileWorkspace as It, normalizeAgentIds as J, buildCliLaunchInvocation as Jn, isDaemonReconcileInProgressError as Jt, notifyDaemonRouteCatalogChanged as K, createUnsupportedProviderUsageLimits as Kn, SPACE_ACTION_CONTEXT_GUIDANCE_LINES as Kt, manageAgentRegistrationInstallation as L, resolveConversationExecutionStateByLookupKey as Ln, setOpenMeldManagedProfileWorkspace as Lt, addAgentCustomTarget as M, buildTaskResultEnvelope as Mn, resolveCatalogSyncIntervalMs as Mr, readProfileWorkspaceConfig as Mt, createRegistrationFromCatalogTarget as N, appendLedgerHistoryEntry as Nn, compareAgentControllerRefsForDisplay as Nr, readProfileWorkspaceConfigForAccount as Nt, syncDeviceRuntimeStateProjection as O, emitReconcileStartedEvidence as On, applyAcceptedLeases as Or, resolveRegistryRuntimeAdapterCapabilitySnapshot as Ot, listAgentCustomTargets as P, commitResolvedAgentContext as Pn, resolveBuiltinAgentControllerBrand as Pr, resolveConfiguredProfileWorkspacePath as Pt, resolveLocalRegistryAgentIdFromAgentControllerRef as Q, createProviderOriginalError as Qn, createPendingAgentInteractionRegistry as Qt, readAgentRuntimeConfigHealth as R, seedLegacyAgentContext as Rn, validateCustomProfileWorkspacePath as Rt, syncProfileWorkspaceState as S, resolveCodexAppServerCompletedTurn as Sn, resolveNativeAgentControllerPermissionModeForController as Sr, canonicalizeLocalProjectPath as St, resolveEffectiveProfileWorkingFolderRuntime as T, parseAntigravityUsageLimits as Tn, ADAPTIVE_HEARTBEAT_JITTER_RATIO as Tr, withAgentActivityLocalStateLock as Tt, setAgentRegistrationEnabled as U, assertLegacyAgentContextAssociation as Un, syncDaemonRouteCatalogState as Ut, removeAgentCustomTarget as V, withLedgerStateTransaction as Vn, createRouteCatalogFromMutableState as Vt, updateAgentCustomTarget as W, buildAgentContextLookupKey as Wn, normalizeDispatchThreadAction as Wt, sortAgentRegistrations as X, resolveExecutablePathsOnPath as Xn, buildDispatchReplyContextSummary as Xt, parseAgentEnabledOption as Y, materializeCliLaunchCommand as Yn, createSerialAgentInteractionCallback as Yt, repairBuiltinControllerInstall as Z, listAgentControllerSupervisedProcessIds as Zn, normalizeDispatchPostMessageAction as Zt, loadDaemonRouteCatalog as _, resolveInstalledGrokBuildLaunchCandidates as _n, renderWorkingLanguagePrompt as _r, removeProjectConnection as _t, buildOpenClawSpaceSessionKey as a, resolveDispatchContinuityObservation as an, buildWorkingLanguagePromptPlan as ar, isHomebrewCommandPath as at, resolveLocalController as b, resolveInstalledCodexLaunchCandidates as bn, resolveAgentProfileEditCapabilities as br, setDefaultProjectConnection as bt, findOpenClawAgentById as c, resolveLatestScopedConversationExecutionState as cn, createAuthorityOpenMeldServiceRuntimeId as cr, ProjectBindingOperationError as ct, resolveOpenClawAuthStatus as d, createLocalAdapterEntries as dn, isAgentExecutionReadyOrConnecting as dr, isProjectBound as dt, createLocalTaskInterruptSender as en, isDispatchSpaceActionDeliveryOnly as er, detectInstalledSkillsAgents as et, resolveOpenClawProviderRuntimeWorkingDirectory as f, parseOpenCodeGoUsageResponse as fn, listAgentControllerPermissionModeOptions as fr, listProjectBindings as ft, writeDaemonRouteCatalogCache as g, probeGrokBuildAcpInterface as gn, renderInformationProtectionPrompt as gr, removeMissingProjectConnections as gt, readDaemonRouteCatalogCache as h, GrokBuildAcpTransportError as hn, projectPeopleComputersToLegacyLocalRuntimes as hr, removeAgentActivityBindingsWhileDeliveryLocked as ht, listOpenClawGatewayAgents as i, resolveDispatchQueueLogMeta as in, buildInformationProtectionPromptPlan as ir, isBunGlobalCommandPath as it, resolveAgentProfilePrimaryAgentControllerReport as j, buildRuntimeWorkspaceFingerprint as jn, resolveAdaptiveHeartbeatIntervalMs as jr, normalizeCustomProfileWorkspacePath as jt, createPrimaryBindingReadSession as k, DaemonServiceRunError as kn, applyIntervalJitterMs as kr, resolveRegistryRuntimeAdapterContractByAgentControllerRef as kt, findOpenClawAgentsByWorkspace as l, resolveCatalogSyncSkippedProfilesLogState as ln, getAgentControllerPermissionModeDisplayMetadata as lr, ProjectBindingStoreUpdateRequiredError as lt, resolveOpenClawLocalBootstrapPaths as m, resolveInstalledOpenCodeLaunchCandidates as mn, peopleComputerContainsDevice as mr, migrateProjectBindingStore as mt, fetchOpenClawGatewayHealth as n, createLocalExecutionSlots as nn, areAgentControllerInterfaceAccountsSame as nr, EMPTY_AGENT_CONTROLLER_INTERFACE_CAPABILITIES as nt, normalizeOpenClawSpaceIdPrefix as o, resolveCompatibleAgentContextMatch as on, createAgentControllerInterfaceDisplayRows as or, isNpmGlobalCommandPath as ot, readOpenClawLocalBootstrapState as p, forkOpenCodeServerSession as pn, parseAgentControllerRef as pr, listProjectConnectionsWithStatus as pt, normalizeAgentId as q, resolveDispatchSpaceActionMcpServer as qn, SPACE_ACTION_TARGET_GUIDANCE_LINES as qt, listOpenClawAgents as r, createInflightTaskControlRegistry as rn, buildAgentControllerRef as rr, resolveBuiltinAgentControllerDefinition as rt, slugifyOpenClawNamePart as s, resolveCompatibleConversationExecutionState as sn, createAgentExecutionStatusDisplayRows as sr, isPnpmGlobalCommandPath as st, prepareProviderRuntime as t, buildLocalServiceDiagnosticsPayload as tn, DEFAULT_TASK_LIFECYCLE_HEARTBEAT_INTERVAL_MS as tr, resolveSkillsAgentRegistry as tt, matchesExpectedWorkspace as u, createLocalAdapterContainer as un, getAgentControllerPermissionModeFieldLabel as ur, bindProject as ut, buildRuntimeRouteTargets as v, projectCodexUsageLimits as vn, resolveAgentControllerPermissionModeForController as vr, resolveProjectBindingForPath as vt, resolveCurrentEffectiveProfileWorkingFolderRuntime as w, resolveInstalledClaudeCodeLaunchCandidates as wn, resolveRouteRegistrationReconcileDecision as wr, withAgentActivityDeliveryLock as wt, resolveLocalRuntimeControllerSupport as x, forkCodexAppServerThread as xn, resolveEvidenceSyncHealth as xr, unbindProject as xt, readLocalEnabledControllers as y, resolveCodexTimeoutMs as yn, resolveAgentExecutionStatus as yr, runIfAgentActivityBindingGenerationIsCurrent as yt, reconcileNewRunnableBuiltinAgentRegistrations as z, settleInflightTask as zn, describeProfileWorkspacePathValidationFailure as zt };
|
|
33130
33135
|
|
|
33131
|
-
//# sourceMappingURL=prepare-provider-runtime-
|
|
33136
|
+
//# sourceMappingURL=prepare-provider-runtime-BGdfbFyZ.js.map
|