@semiont/cli 0.2.34-build.89 → 0.2.34-build.90

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/cli.mjs +97 -92
  2. package/package.json +3 -3
package/dist/cli.mjs CHANGED
@@ -15344,18 +15344,18 @@ var init_state_manager = __esm({
15344
15344
  // src/core/io/network-utils.ts
15345
15345
  import * as net from "net";
15346
15346
  async function isPortInUse(port) {
15347
- return new Promise((resolve2) => {
15347
+ return new Promise((resolve3) => {
15348
15348
  const server = net.createServer();
15349
15349
  server.once("error", (err) => {
15350
15350
  if (err.code === "EADDRINUSE") {
15351
- resolve2(true);
15351
+ resolve3(true);
15352
15352
  } else {
15353
- resolve2(false);
15353
+ resolve3(false);
15354
15354
  }
15355
15355
  });
15356
15356
  server.once("listening", () => {
15357
15357
  server.close();
15358
- resolve2(false);
15358
+ resolve3(false);
15359
15359
  });
15360
15360
  server.listen(port);
15361
15361
  });
@@ -16267,7 +16267,7 @@ var init_database_start = __esm({
16267
16267
  // Use path for data directory
16268
16268
  }
16269
16269
  };
16270
- await new Promise((resolve2) => setTimeout(resolve2, 2e3));
16270
+ await new Promise((resolve3) => setTimeout(resolve3, 2e3));
16271
16271
  return {
16272
16272
  success: true,
16273
16273
  endpoint,
@@ -16584,7 +16584,7 @@ async function startJanusGraph(context) {
16584
16584
  let ready = false;
16585
16585
  const maxAttempts = 30;
16586
16586
  for (let i = 0; i < maxAttempts; i++) {
16587
- await new Promise((resolve2) => setTimeout(resolve2, 2e3));
16587
+ await new Promise((resolve3) => setTimeout(resolve3, 2e3));
16588
16588
  try {
16589
16589
  const { execSync: execSync38 } = await import("child_process");
16590
16590
  execSync38(`${gremlinShellScript} -e "g.V().count()"`, {
@@ -16795,7 +16795,7 @@ var init_backend_start = __esm({
16795
16795
  appLogStream.end();
16796
16796
  errorLogStream.end();
16797
16797
  proc.unref();
16798
- await new Promise((resolve2) => setTimeout(resolve2, 2e3));
16798
+ await new Promise((resolve3) => setTimeout(resolve3, 2e3));
16799
16799
  try {
16800
16800
  process.kill(proc.pid, 0);
16801
16801
  } catch {
@@ -16990,7 +16990,7 @@ var init_frontend_start = __esm({
16990
16990
  appLogStream.end();
16991
16991
  errorLogStream.end();
16992
16992
  proc.unref();
16993
- await new Promise((resolve2) => setTimeout(resolve2, 2e3));
16993
+ await new Promise((resolve3) => setTimeout(resolve3, 2e3));
16994
16994
  try {
16995
16995
  process.kill(proc.pid, 0);
16996
16996
  } catch {
@@ -17108,7 +17108,7 @@ var init_mcp_provision = __esm({
17108
17108
  if (!service.quiet) {
17109
17109
  printInfo("\u{1F510} Setting up MCP authentication...");
17110
17110
  }
17111
- return new Promise((resolve2, _reject) => {
17111
+ return new Promise((resolve3, _reject) => {
17112
17112
  let timeoutId;
17113
17113
  const connections = /* @__PURE__ */ new Set();
17114
17114
  const server = http.createServer((req, res) => {
@@ -17155,7 +17155,7 @@ var init_mcp_provision = __esm({
17155
17155
  }
17156
17156
  }, null, 2));
17157
17157
  }
17158
- resolve2({
17158
+ resolve3({
17159
17159
  success: true,
17160
17160
  metadata: {
17161
17161
  serviceType: "mcp",
@@ -17165,7 +17165,7 @@ var init_mcp_provision = __esm({
17165
17165
  }
17166
17166
  });
17167
17167
  } else {
17168
- resolve2({
17168
+ resolve3({
17169
17169
  success: false,
17170
17170
  error: "No token received from authentication",
17171
17171
  metadata: {
@@ -17207,7 +17207,7 @@ var init_mcp_provision = __esm({
17207
17207
  timeoutId = setTimeout(() => {
17208
17208
  connections.forEach((conn) => conn.destroy());
17209
17209
  server.close();
17210
- resolve2({
17210
+ resolve3({
17211
17211
  success: false,
17212
17212
  error: "Authentication timeout - please try again",
17213
17213
  metadata: {
@@ -18392,7 +18392,7 @@ async function stopJanusGraph(context) {
18392
18392
  const startTime = Date.now();
18393
18393
  let processRunning = true;
18394
18394
  while (processRunning && Date.now() - startTime < timeout) {
18395
- await new Promise((resolve2) => setTimeout(resolve2, 1e3));
18395
+ await new Promise((resolve3) => setTimeout(resolve3, 1e3));
18396
18396
  try {
18397
18397
  process.kill(pid, 0);
18398
18398
  } catch {
@@ -18648,14 +18648,14 @@ async function killProcessGroupAndRelated(pid, serviceType, verbose = false) {
18648
18648
  }
18649
18649
  process.kill(-pid, "SIGTERM");
18650
18650
  killed = true;
18651
- await new Promise((resolve2) => setTimeout(resolve2, 2e3));
18651
+ await new Promise((resolve3) => setTimeout(resolve3, 2e3));
18652
18652
  try {
18653
18653
  process.kill(pid, 0);
18654
18654
  if (verbose) {
18655
18655
  printWarning(`Process group didn't terminate gracefully, force killing...`);
18656
18656
  }
18657
18657
  process.kill(-pid, "SIGKILL");
18658
- await new Promise((resolve2) => setTimeout(resolve2, 1e3));
18658
+ await new Promise((resolve3) => setTimeout(resolve3, 1e3));
18659
18659
  } catch {
18660
18660
  }
18661
18661
  } catch (error46) {
@@ -18664,7 +18664,7 @@ async function killProcessGroupAndRelated(pid, serviceType, verbose = false) {
18664
18664
  }
18665
18665
  try {
18666
18666
  process.kill(pid, "SIGTERM");
18667
- await new Promise((resolve2) => setTimeout(resolve2, 2e3));
18667
+ await new Promise((resolve3) => setTimeout(resolve3, 2e3));
18668
18668
  try {
18669
18669
  process.kill(pid, 0);
18670
18670
  process.kill(pid, "SIGKILL");
@@ -19919,7 +19919,7 @@ async function waitForContainer(runtime, containerName) {
19919
19919
  }
19920
19920
  } catch {
19921
19921
  }
19922
- await new Promise((resolve2) => setTimeout(resolve2, 1e3));
19922
+ await new Promise((resolve3) => setTimeout(resolve3, 1e3));
19923
19923
  attempts++;
19924
19924
  }
19925
19925
  throw new Error(`Container ${containerName} failed to start within ${maxAttempts} seconds`);
@@ -20019,7 +20019,7 @@ import { execSync as execSync20 } from "child_process";
20019
20019
  async function waitForDatabase(runtime, containerName, image, quiet, dbUser, verbose) {
20020
20020
  const maxAttempts = 15;
20021
20021
  let attempts = 0;
20022
- await new Promise((resolve2) => setTimeout(resolve2, 2e3));
20022
+ await new Promise((resolve3) => setTimeout(resolve3, 2e3));
20023
20023
  const skipHealthCheck = process.env.SKIP_DB_HEALTH_CHECK === "true";
20024
20024
  if (skipHealthCheck) {
20025
20025
  try {
@@ -20028,7 +20028,7 @@ async function waitForDatabase(runtime, containerName, image, quiet, dbUser, ver
20028
20028
  { encoding: "utf-8", timeout: 5e3 }
20029
20029
  ).trim();
20030
20030
  if (status === "running") {
20031
- await new Promise((resolve2) => setTimeout(resolve2, 3e3));
20031
+ await new Promise((resolve3) => setTimeout(resolve3, 3e3));
20032
20032
  return;
20033
20033
  }
20034
20034
  } catch {
@@ -20060,7 +20060,7 @@ async function waitForDatabase(runtime, containerName, image, quiet, dbUser, ver
20060
20060
  stdio: verbose ? "inherit" : "ignore",
20061
20061
  timeout: 5e3
20062
20062
  });
20063
- await new Promise((resolve2) => setTimeout(resolve2, 1e3));
20063
+ await new Promise((resolve3) => setTimeout(resolve3, 1e3));
20064
20064
  if (verbose) {
20065
20065
  printInfo(`PostgreSQL is ready`);
20066
20066
  }
@@ -20089,7 +20089,7 @@ async function waitForDatabase(runtime, containerName, image, quiet, dbUser, ver
20089
20089
  } catch {
20090
20090
  }
20091
20091
  } else {
20092
- await new Promise((resolve2) => setTimeout(resolve2, 3e3));
20092
+ await new Promise((resolve3) => setTimeout(resolve3, 3e3));
20093
20093
  return;
20094
20094
  }
20095
20095
  }
@@ -20098,7 +20098,7 @@ async function waitForDatabase(runtime, containerName, image, quiet, dbUser, ver
20098
20098
  printInfo(`Waiting for database to be ready... (${attempts + 1}/${maxAttempts})`);
20099
20099
  }
20100
20100
  }
20101
- await new Promise((resolve2) => setTimeout(resolve2, 1e3));
20101
+ await new Promise((resolve3) => setTimeout(resolve3, 1e3));
20102
20102
  attempts++;
20103
20103
  }
20104
20104
  printWarning(`Database container ${containerName} is taking longer than expected to start`);
@@ -20267,14 +20267,14 @@ async function startJanusGraph2(context) {
20267
20267
  stdio: "pipe"
20268
20268
  });
20269
20269
  if (logs.includes("Channel started") || logs.includes("Started") || i >= 5) {
20270
- await new Promise((resolve2) => setTimeout(resolve2, 3e3));
20270
+ await new Promise((resolve3) => setTimeout(resolve3, 3e3));
20271
20271
  ready = true;
20272
20272
  break;
20273
20273
  }
20274
20274
  }
20275
20275
  } catch {
20276
20276
  }
20277
- await new Promise((resolve2) => setTimeout(resolve2, 3e3));
20277
+ await new Promise((resolve3) => setTimeout(resolve3, 3e3));
20278
20278
  if (!service.quiet && i > 0 && i % 5 === 0) {
20279
20279
  printInfo(`Still waiting... (${i * 3}s elapsed)`);
20280
20280
  }
@@ -20476,7 +20476,7 @@ var init_database_provision = __esm({
20476
20476
  break;
20477
20477
  }
20478
20478
  } catch {
20479
- await new Promise((resolve2) => setTimeout(resolve2, 1e3));
20479
+ await new Promise((resolve3) => setTimeout(resolve3, 1e3));
20480
20480
  attempts++;
20481
20481
  }
20482
20482
  }
@@ -23596,7 +23596,7 @@ var init_database_stop = __esm({
23596
23596
  if (currentStatus === "exited" || currentStatus === "stopped") {
23597
23597
  stopped = true;
23598
23598
  } else {
23599
- await new Promise((resolve2) => setTimeout(resolve2, 1e3));
23599
+ await new Promise((resolve3) => setTimeout(resolve3, 1e3));
23600
23600
  attempts++;
23601
23601
  }
23602
23602
  } catch {
@@ -23959,7 +23959,7 @@ var init_proxy_start = __esm({
23959
23959
  if (!service.quiet) {
23960
23960
  printInfo("Waiting for proxy to become healthy...");
23961
23961
  }
23962
- await new Promise((resolve2) => setTimeout(resolve2, 2e3));
23962
+ await new Promise((resolve3) => setTimeout(resolve3, 2e3));
23963
23963
  const isRunning = execSync27(`docker ps -q -f id=${containerId}`, { encoding: "utf-8" }).trim();
23964
23964
  if (!isRunning) {
23965
23965
  const logs = execSync27(`docker logs ${containerId} 2>&1`, { encoding: "utf-8" });
@@ -26283,7 +26283,7 @@ Waiting for ${otherActiveDeployments.length} old deployment(s) to complete drain
26283
26283
  if (taskDetails.new.running > 0) {
26284
26284
  consecutiveFailures = 0;
26285
26285
  }
26286
- await new Promise((resolve2) => setTimeout(resolve2, checkInterval));
26286
+ await new Promise((resolve3) => setTimeout(resolve3, checkInterval));
26287
26287
  } catch (error46) {
26288
26288
  if (error46 instanceof Error && error46.message.includes("Deployment")) {
26289
26289
  if (!verbose) {
@@ -27036,20 +27036,20 @@ var init_database_check3 = __esm({
27036
27036
  const host = serviceConfig.host;
27037
27037
  const port = serviceConfig.port;
27038
27038
  try {
27039
- const isReachable = await new Promise((resolve2) => {
27039
+ const isReachable = await new Promise((resolve3) => {
27040
27040
  const socket = new net2.Socket();
27041
27041
  socket.setTimeout(5e3);
27042
27042
  socket.once("connect", () => {
27043
27043
  socket.destroy();
27044
- resolve2(true);
27044
+ resolve3(true);
27045
27045
  });
27046
27046
  socket.once("error", () => {
27047
27047
  socket.destroy();
27048
- resolve2(false);
27048
+ resolve3(false);
27049
27049
  });
27050
27050
  socket.once("timeout", () => {
27051
27051
  socket.destroy();
27052
- resolve2(false);
27052
+ resolve3(false);
27053
27053
  });
27054
27054
  socket.connect(port, host);
27055
27055
  });
@@ -27119,20 +27119,20 @@ var init_database_check3 = __esm({
27119
27119
  const host = serviceConfig.host;
27120
27120
  const port = serviceConfig.port;
27121
27121
  try {
27122
- const isReachable = await new Promise((resolve2) => {
27122
+ const isReachable = await new Promise((resolve3) => {
27123
27123
  const socket = new net2.Socket();
27124
27124
  socket.setTimeout(5e3);
27125
27125
  socket.once("connect", () => {
27126
27126
  socket.destroy();
27127
- resolve2(true);
27127
+ resolve3(true);
27128
27128
  });
27129
27129
  socket.once("error", () => {
27130
27130
  socket.destroy();
27131
- resolve2(false);
27131
+ resolve3(false);
27132
27132
  });
27133
27133
  socket.once("timeout", () => {
27134
27134
  socket.destroy();
27135
- resolve2(false);
27135
+ resolve3(false);
27136
27136
  });
27137
27137
  socket.connect(port, host);
27138
27138
  });
@@ -27578,7 +27578,7 @@ var init_values = __esm({
27578
27578
  var sleep;
27579
27579
  var init_sleep = __esm({
27580
27580
  "../../node_modules/@anthropic-ai/sdk/internal/utils/sleep.mjs"() {
27581
- sleep = (ms) => new Promise((resolve2) => setTimeout(resolve2, ms));
27581
+ sleep = (ms) => new Promise((resolve3) => setTimeout(resolve3, ms));
27582
27582
  }
27583
27583
  });
27584
27584
 
@@ -28332,8 +28332,8 @@ var init_api_promise = __esm({
28332
28332
  init_parse3();
28333
28333
  APIPromise = class _APIPromise extends Promise {
28334
28334
  constructor(client, responsePromise, parseResponse2 = defaultParseResponse) {
28335
- super((resolve2) => {
28336
- resolve2(null);
28335
+ super((resolve3) => {
28336
+ resolve3(null);
28337
28337
  });
28338
28338
  this.responsePromise = responsePromise;
28339
28339
  this.parseResponse = parseResponse2;
@@ -29529,12 +29529,12 @@ var init_BetaMessageStream = __esm({
29529
29529
  }
29530
29530
  return this._emit("error", new AnthropicError(String(error46)));
29531
29531
  });
29532
- __classPrivateFieldSet(this, _BetaMessageStream_connectedPromise, new Promise((resolve2, reject) => {
29533
- __classPrivateFieldSet(this, _BetaMessageStream_resolveConnectedPromise, resolve2, "f");
29532
+ __classPrivateFieldSet(this, _BetaMessageStream_connectedPromise, new Promise((resolve3, reject) => {
29533
+ __classPrivateFieldSet(this, _BetaMessageStream_resolveConnectedPromise, resolve3, "f");
29534
29534
  __classPrivateFieldSet(this, _BetaMessageStream_rejectConnectedPromise, reject, "f");
29535
29535
  }), "f");
29536
- __classPrivateFieldSet(this, _BetaMessageStream_endPromise, new Promise((resolve2, reject) => {
29537
- __classPrivateFieldSet(this, _BetaMessageStream_resolveEndPromise, resolve2, "f");
29536
+ __classPrivateFieldSet(this, _BetaMessageStream_endPromise, new Promise((resolve3, reject) => {
29537
+ __classPrivateFieldSet(this, _BetaMessageStream_resolveEndPromise, resolve3, "f");
29538
29538
  __classPrivateFieldSet(this, _BetaMessageStream_rejectEndPromise, reject, "f");
29539
29539
  }), "f");
29540
29540
  __classPrivateFieldGet(this, _BetaMessageStream_connectedPromise, "f").catch(() => {
@@ -29700,11 +29700,11 @@ var init_BetaMessageStream = __esm({
29700
29700
  * const message = await stream.emitted('message') // rejects if the stream errors
29701
29701
  */
29702
29702
  emitted(event) {
29703
- return new Promise((resolve2, reject) => {
29703
+ return new Promise((resolve3, reject) => {
29704
29704
  __classPrivateFieldSet(this, _BetaMessageStream_catchingPromiseCreated, true, "f");
29705
29705
  if (event !== "error")
29706
29706
  this.once("error", reject);
29707
- this.once(event, resolve2);
29707
+ this.once(event, resolve3);
29708
29708
  });
29709
29709
  }
29710
29710
  async done() {
@@ -30027,7 +30027,7 @@ var init_BetaMessageStream = __esm({
30027
30027
  if (done) {
30028
30028
  return { value: void 0, done: true };
30029
30029
  }
30030
- return new Promise((resolve2, reject) => readQueue.push({ resolve: resolve2, reject })).then((chunk2) => chunk2 ? { value: chunk2, done: false } : { value: void 0, done: true });
30030
+ return new Promise((resolve3, reject) => readQueue.push({ resolve: resolve3, reject })).then((chunk2) => chunk2 ? { value: chunk2, done: false } : { value: void 0, done: true });
30031
30031
  }
30032
30032
  const chunk = pushQueue.shift();
30033
30033
  return { value: chunk, done: false };
@@ -30065,13 +30065,13 @@ var init_constants = __esm({
30065
30065
 
30066
30066
  // ../../node_modules/@anthropic-ai/sdk/lib/tools/BetaToolRunner.mjs
30067
30067
  function promiseWithResolvers() {
30068
- let resolve2;
30068
+ let resolve3;
30069
30069
  let reject;
30070
30070
  const promise2 = new Promise((res, rej) => {
30071
- resolve2 = res;
30071
+ resolve3 = res;
30072
30072
  reject = rej;
30073
30073
  });
30074
- return { promise: promise2, resolve: resolve2, reject };
30074
+ return { promise: promise2, resolve: resolve3, reject };
30075
30075
  }
30076
30076
  async function generateToolResponse(params, lastMessage = params.messages.at(-1)) {
30077
30077
  if (!lastMessage || lastMessage.role !== "assistant" || !lastMessage.content || typeof lastMessage.content === "string") {
@@ -30525,12 +30525,12 @@ var init_MessageStream = __esm({
30525
30525
  }
30526
30526
  return this._emit("error", new AnthropicError(String(error46)));
30527
30527
  });
30528
- __classPrivateFieldSet(this, _MessageStream_connectedPromise, new Promise((resolve2, reject) => {
30529
- __classPrivateFieldSet(this, _MessageStream_resolveConnectedPromise, resolve2, "f");
30528
+ __classPrivateFieldSet(this, _MessageStream_connectedPromise, new Promise((resolve3, reject) => {
30529
+ __classPrivateFieldSet(this, _MessageStream_resolveConnectedPromise, resolve3, "f");
30530
30530
  __classPrivateFieldSet(this, _MessageStream_rejectConnectedPromise, reject, "f");
30531
30531
  }), "f");
30532
- __classPrivateFieldSet(this, _MessageStream_endPromise, new Promise((resolve2, reject) => {
30533
- __classPrivateFieldSet(this, _MessageStream_resolveEndPromise, resolve2, "f");
30532
+ __classPrivateFieldSet(this, _MessageStream_endPromise, new Promise((resolve3, reject) => {
30533
+ __classPrivateFieldSet(this, _MessageStream_resolveEndPromise, resolve3, "f");
30534
30534
  __classPrivateFieldSet(this, _MessageStream_rejectEndPromise, reject, "f");
30535
30535
  }), "f");
30536
30536
  __classPrivateFieldGet(this, _MessageStream_connectedPromise, "f").catch(() => {
@@ -30696,11 +30696,11 @@ var init_MessageStream = __esm({
30696
30696
  * const message = await stream.emitted('message') // rejects if the stream errors
30697
30697
  */
30698
30698
  emitted(event) {
30699
- return new Promise((resolve2, reject) => {
30699
+ return new Promise((resolve3, reject) => {
30700
30700
  __classPrivateFieldSet(this, _MessageStream_catchingPromiseCreated, true, "f");
30701
30701
  if (event !== "error")
30702
30702
  this.once("error", reject);
30703
- this.once(event, resolve2);
30703
+ this.once(event, resolve3);
30704
30704
  });
30705
30705
  }
30706
30706
  async done() {
@@ -31017,7 +31017,7 @@ var init_MessageStream = __esm({
31017
31017
  if (done) {
31018
31018
  return { value: void 0, done: true };
31019
31019
  }
31020
- return new Promise((resolve2, reject) => readQueue.push({ resolve: resolve2, reject })).then((chunk2) => chunk2 ? { value: chunk2, done: false } : { value: void 0, done: true });
31020
+ return new Promise((resolve3, reject) => readQueue.push({ resolve: resolve3, reject })).then((chunk2) => chunk2 ? { value: chunk2, done: false } : { value: void 0, done: true });
31021
31021
  }
31022
31022
  const chunk = pushQueue.shift();
31023
31023
  return { value: chunk, done: false };
@@ -32082,7 +32082,7 @@ var init_values2 = __esm({
32082
32082
  var sleep2;
32083
32083
  var init_sleep2 = __esm({
32084
32084
  "../../node_modules/openai/internal/utils/sleep.mjs"() {
32085
- sleep2 = (ms) => new Promise((resolve2) => setTimeout(resolve2, ms));
32085
+ sleep2 = (ms) => new Promise((resolve3) => setTimeout(resolve3, ms));
32086
32086
  }
32087
32087
  });
32088
32088
 
@@ -33237,8 +33237,8 @@ var init_api_promise2 = __esm({
33237
33237
  init_parse4();
33238
33238
  APIPromise2 = class _APIPromise extends Promise {
33239
33239
  constructor(client, responsePromise, parseResponse2 = defaultParseResponse2) {
33240
- super((resolve2) => {
33241
- resolve2(null);
33240
+ super((resolve3) => {
33241
+ resolve3(null);
33242
33242
  });
33243
33243
  this.responsePromise = responsePromise;
33244
33244
  this.parseResponse = parseResponse2;
@@ -33841,12 +33841,12 @@ var init_EventStream = __esm({
33841
33841
  _EventStream_errored.set(this, false);
33842
33842
  _EventStream_aborted.set(this, false);
33843
33843
  _EventStream_catchingPromiseCreated.set(this, false);
33844
- __classPrivateFieldSet2(this, _EventStream_connectedPromise, new Promise((resolve2, reject) => {
33845
- __classPrivateFieldSet2(this, _EventStream_resolveConnectedPromise, resolve2, "f");
33844
+ __classPrivateFieldSet2(this, _EventStream_connectedPromise, new Promise((resolve3, reject) => {
33845
+ __classPrivateFieldSet2(this, _EventStream_resolveConnectedPromise, resolve3, "f");
33846
33846
  __classPrivateFieldSet2(this, _EventStream_rejectConnectedPromise, reject, "f");
33847
33847
  }), "f");
33848
- __classPrivateFieldSet2(this, _EventStream_endPromise, new Promise((resolve2, reject) => {
33849
- __classPrivateFieldSet2(this, _EventStream_resolveEndPromise, resolve2, "f");
33848
+ __classPrivateFieldSet2(this, _EventStream_endPromise, new Promise((resolve3, reject) => {
33849
+ __classPrivateFieldSet2(this, _EventStream_resolveEndPromise, resolve3, "f");
33850
33850
  __classPrivateFieldSet2(this, _EventStream_rejectEndPromise, reject, "f");
33851
33851
  }), "f");
33852
33852
  __classPrivateFieldGet2(this, _EventStream_connectedPromise, "f").catch(() => {
@@ -33930,11 +33930,11 @@ var init_EventStream = __esm({
33930
33930
  * const message = await stream.emitted('message') // rejects if the stream errors
33931
33931
  */
33932
33932
  emitted(event) {
33933
- return new Promise((resolve2, reject) => {
33933
+ return new Promise((resolve3, reject) => {
33934
33934
  __classPrivateFieldSet2(this, _EventStream_catchingPromiseCreated, true, "f");
33935
33935
  if (event !== "error")
33936
33936
  this.once("error", reject);
33937
- this.once(event, resolve2);
33937
+ this.once(event, resolve3);
33938
33938
  });
33939
33939
  }
33940
33940
  async done() {
@@ -34991,7 +34991,7 @@ var init_ChatCompletionStream = __esm({
34991
34991
  if (done) {
34992
34992
  return { value: void 0, done: true };
34993
34993
  }
34994
- return new Promise((resolve2, reject) => readQueue.push({ resolve: resolve2, reject })).then((chunk2) => chunk2 ? { value: chunk2, done: false } : { value: void 0, done: true });
34994
+ return new Promise((resolve3, reject) => readQueue.push({ resolve: resolve3, reject })).then((chunk2) => chunk2 ? { value: chunk2, done: false } : { value: void 0, done: true });
34995
34995
  }
34996
34996
  const chunk = pushQueue.shift();
34997
34997
  return { value: chunk, done: false };
@@ -35799,7 +35799,7 @@ var init_AssistantStream = __esm({
35799
35799
  if (done) {
35800
35800
  return { value: void 0, done: true };
35801
35801
  }
35802
- return new Promise((resolve2, reject) => readQueue.push({ resolve: resolve2, reject })).then((chunk2) => chunk2 ? { value: chunk2, done: false } : { value: void 0, done: true });
35802
+ return new Promise((resolve3, reject) => readQueue.push({ resolve: resolve3, reject })).then((chunk2) => chunk2 ? { value: chunk2, done: false } : { value: void 0, done: true });
35803
35803
  }
35804
35804
  const chunk = pushQueue.shift();
35805
35805
  return { value: chunk, done: false };
@@ -37905,7 +37905,7 @@ var init_ResponseStream = __esm({
37905
37905
  if (done) {
37906
37906
  return { value: void 0, done: true };
37907
37907
  }
37908
- return new Promise((resolve2, reject) => readQueue.push({ resolve: resolve2, reject })).then((event2) => event2 ? { value: event2, done: false } : { value: void 0, done: true });
37908
+ return new Promise((resolve3, reject) => readQueue.push({ resolve: resolve3, reject })).then((event2) => event2 ? { value: event2, done: false } : { value: void 0, done: true });
37909
37909
  }
37910
37910
  const event = pushQueue.shift();
37911
37911
  return { value: event, done: false };
@@ -39563,7 +39563,7 @@ var init_default_start = __esm({
39563
39563
  printInfo(`[MOCK] Starting service: ${service.name}`);
39564
39564
  }
39565
39565
  const startupDelay = mockData?.startupDelay || 100;
39566
- await new Promise((resolve2) => setTimeout(resolve2, startupDelay));
39566
+ await new Promise((resolve3) => setTimeout(resolve3, startupDelay));
39567
39567
  if (mockData?.simulateFailure) {
39568
39568
  return {
39569
39569
  success: false,
@@ -39817,7 +39817,7 @@ __export(config_loader_exports, {
39817
39817
  });
39818
39818
  import * as fs35 from "fs";
39819
39819
  import * as path33 from "path";
39820
- import { parseAndMergeConfigs, listEnvironmentNames, ConfigurationError } from "@semiont/core";
39820
+ import { createConfigLoader, listEnvironmentNames, ConfigurationError } from "@semiont/core";
39821
39821
  function findProjectRoot() {
39822
39822
  const root = process.env.SEMIONT_ROOT;
39823
39823
  if (!root) {
@@ -39845,20 +39845,6 @@ function findProjectRoot() {
39845
39845
  }
39846
39846
  return root;
39847
39847
  }
39848
- function loadEnvironmentConfig(projectRoot, environment) {
39849
- const baseConfigPath = path33.join(projectRoot, "semiont.json");
39850
- const baseContent = fs35.existsSync(baseConfigPath) ? fs35.readFileSync(baseConfigPath, "utf-8") : null;
39851
- const envPath = path33.join(projectRoot, "environments", `${environment}.json`);
39852
- if (!fs35.existsSync(envPath)) {
39853
- throw new ConfigurationError(
39854
- `Environment configuration missing: ${envPath}`,
39855
- environment,
39856
- `Create the configuration file or use: semiont init`
39857
- );
39858
- }
39859
- const envContent = fs35.readFileSync(envPath, "utf-8");
39860
- return parseAndMergeConfigs(baseContent, envContent, process.env, environment, projectRoot);
39861
- }
39862
39848
  function getAvailableEnvironments() {
39863
39849
  try {
39864
39850
  const projectRoot = findProjectRoot();
@@ -39875,9 +39861,28 @@ function getAvailableEnvironments() {
39875
39861
  function isValidEnvironment(environment) {
39876
39862
  return getAvailableEnvironments().includes(environment);
39877
39863
  }
39864
+ var nodeFileReader, loadEnvironmentConfig;
39878
39865
  var init_config_loader = __esm({
39879
39866
  "src/core/config-loader.ts"() {
39880
39867
  "use strict";
39868
+ nodeFileReader = {
39869
+ readIfExists: (filePath) => {
39870
+ const absolutePath = path33.resolve(filePath);
39871
+ return fs35.existsSync(absolutePath) ? fs35.readFileSync(absolutePath, "utf-8") : null;
39872
+ },
39873
+ readRequired: (filePath) => {
39874
+ const absolutePath = path33.resolve(filePath);
39875
+ if (!fs35.existsSync(absolutePath)) {
39876
+ throw new ConfigurationError(
39877
+ `Configuration file not found: ${absolutePath}`,
39878
+ void 0,
39879
+ `Create the configuration file or use: semiont init`
39880
+ );
39881
+ }
39882
+ return fs35.readFileSync(absolutePath, "utf-8");
39883
+ }
39884
+ };
39885
+ loadEnvironmentConfig = createConfigLoader(nodeFileReader);
39881
39886
  }
39882
39887
  });
39883
39888
 
@@ -40900,7 +40905,7 @@ var init_web_dashboard_server = __esm({
40900
40905
  }
40901
40906
  }
40902
40907
  async start() {
40903
- return new Promise((resolve2) => {
40908
+ return new Promise((resolve3) => {
40904
40909
  this.server.listen(this.port, () => {
40905
40910
  console.log(`
40906
40911
  \u{1F310} Web dashboard running at http://localhost:${this.port}`);
@@ -40909,7 +40914,7 @@ var init_web_dashboard_server = __esm({
40909
40914
  console.log(`
40910
40915
  Press Ctrl+C to stop
40911
40916
  `);
40912
- resolve2();
40917
+ resolve3();
40913
40918
  });
40914
40919
  });
40915
40920
  }
@@ -42088,10 +42093,10 @@ var WatchOptionsSchema = BaseOptionsSchema.extend({
42088
42093
  }));
42089
42094
  async function launchDashboard(environment, target, serviceDeployments, envConfig, interval, terminalMode = false, port = 3333) {
42090
42095
  const startTime = Date.now();
42091
- return new Promise(async (resolve2) => {
42096
+ return new Promise(async (resolve3) => {
42092
42097
  if (process.env.VITEST) {
42093
42098
  setTimeout(() => {
42094
- resolve2({
42099
+ resolve3({
42095
42100
  duration: 100,
42096
42101
  exitReason: "user-quit"
42097
42102
  });
@@ -42118,7 +42123,7 @@ async function launchDashboard(environment, target, serviceDeployments, envConfi
42118
42123
  );
42119
42124
  await waitUntilExit();
42120
42125
  const duration3 = Date.now() - startTime;
42121
- resolve2({
42126
+ resolve3({
42122
42127
  duration: duration3,
42123
42128
  exitReason: "user-quit"
42124
42129
  });
@@ -42138,7 +42143,7 @@ async function launchDashboard(environment, target, serviceDeployments, envConfi
42138
42143
  process.on("SIGINT", () => {
42139
42144
  server.stop();
42140
42145
  const duration3 = Date.now() - startTime;
42141
- resolve2({
42146
+ resolve3({
42142
42147
  duration: duration3,
42143
42148
  exitReason: "user-quit"
42144
42149
  });
@@ -42146,7 +42151,7 @@ async function launchDashboard(environment, target, serviceDeployments, envConfi
42146
42151
  process.on("SIGTERM", () => {
42147
42152
  server.stop();
42148
42153
  const duration3 = Date.now() - startTime;
42149
- resolve2({
42154
+ resolve3({
42150
42155
  duration: duration3,
42151
42156
  exitReason: "user-quit"
42152
42157
  });
@@ -42155,7 +42160,7 @@ async function launchDashboard(environment, target, serviceDeployments, envConfi
42155
42160
  } catch (error46) {
42156
42161
  console.error("Dashboard error:", error46);
42157
42162
  const duration3 = Date.now() - startTime;
42158
- resolve2({
42163
+ resolve3({
42159
42164
  duration: duration3,
42160
42165
  exitReason: "error"
42161
42166
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@semiont/cli",
3
- "version": "0.2.34-build.89",
3
+ "version": "0.2.34-build.90",
4
4
  "description": "Semiont CLI - Unified environment management tool",
5
5
  "_comment": "AWS SDK dependencies (@aws-sdk/*) are only used by platforms/aws",
6
6
  "type": "module",
@@ -65,8 +65,8 @@
65
65
  "@aws-sdk/client-sts": "^3.859.0",
66
66
  "@aws-sdk/client-wafv2": "^3.859.0",
67
67
  "@prisma/client": "^6.13.0",
68
- "@semiont/api-client": "0.2.34-build.89",
69
- "@semiont/core": "0.2.34-build.89",
68
+ "@semiont/api-client": "0.2.34-build.90",
69
+ "@semiont/core": "0.2.34-build.90",
70
70
  "@testcontainers/postgresql": "^11.5.1",
71
71
  "arg": "^5.0.2",
72
72
  "bcrypt": "^5.1.1",